mirror of
https://github.com/qemu/qemu.git
synced 2026-04-05 21:46:25 +00:00
include/user: Use vaddr in guest-host.h
Replace abi_ptr and abi_ulong with vaddr. Reviewed-by: Pierrick Bouvier <pierrick.bouvier@linaro.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
@@ -8,7 +8,7 @@
|
||||
#ifndef USER_GUEST_HOST_H
|
||||
#define USER_GUEST_HOST_H
|
||||
|
||||
#include "user/abitypes.h"
|
||||
#include "exec/vaddr.h"
|
||||
#include "user/guest-base.h"
|
||||
#include "cpu.h"
|
||||
|
||||
@@ -30,29 +30,29 @@ extern unsigned long reserved_va;
|
||||
extern unsigned long guest_addr_max;
|
||||
|
||||
#ifndef TARGET_TAGGED_ADDRESSES
|
||||
static inline abi_ptr cpu_untagged_addr(CPUState *cs, abi_ptr x)
|
||||
static inline vaddr cpu_untagged_addr(CPUState *cs, vaddr x)
|
||||
{
|
||||
return x;
|
||||
}
|
||||
#endif
|
||||
|
||||
/* All direct uses of g2h and h2g need to go away for usermode softmmu. */
|
||||
static inline void *g2h_untagged(abi_ptr x)
|
||||
static inline void *g2h_untagged(vaddr x)
|
||||
{
|
||||
return (void *)((uintptr_t)(x) + guest_base);
|
||||
}
|
||||
|
||||
static inline void *g2h(CPUState *cs, abi_ptr x)
|
||||
static inline void *g2h(CPUState *cs, vaddr x)
|
||||
{
|
||||
return g2h_untagged(cpu_untagged_addr(cs, x));
|
||||
}
|
||||
|
||||
static inline bool guest_addr_valid_untagged(abi_ulong x)
|
||||
static inline bool guest_addr_valid_untagged(vaddr x)
|
||||
{
|
||||
return x <= guest_addr_max;
|
||||
}
|
||||
|
||||
static inline bool guest_range_valid_untagged(abi_ulong start, abi_ulong len)
|
||||
static inline bool guest_range_valid_untagged(vaddr start, vaddr len)
|
||||
{
|
||||
return len - 1 <= guest_addr_max && start <= guest_addr_max - len + 1;
|
||||
}
|
||||
@@ -62,7 +62,7 @@ static inline bool guest_range_valid_untagged(abi_ulong start, abi_ulong len)
|
||||
|
||||
#define h2g_nocheck(x) ({ \
|
||||
uintptr_t __ret = (uintptr_t)(x) - guest_base; \
|
||||
(abi_ptr)__ret; \
|
||||
(vaddr)__ret; \
|
||||
})
|
||||
|
||||
#define h2g(x) ({ \
|
||||
|
||||
Reference in New Issue
Block a user