mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-03 07:43:54 -06:00
linux-user: Use ARRAY_SIZE with bitmask_transtbl
Rather than using a zero tuple to end the table, use a macro
to apply ARRAY_SIZE and pass that on to the convert functions.
This fixes two bugs in which the conversion functions required
that both the target and host masks be non-zero in order to
continue, rather than require both target and host masks be
zero in order to terminate.
This affected mmap_flags_tbl when the host does not support
all of the flags we wish to convert (e.g. MAP_UNINITIALIZED).
Mapping these flags to zero is good enough, and matches how
the kernel ignores bits that are unknown.
Fixes: 4b840f96
("linux-user: Populate more bits in mmap_flags_tbl")
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
This commit is contained in:
parent
9ab8d07149
commit
a05cee93f4
4 changed files with 25 additions and 22 deletions
|
@ -227,7 +227,9 @@ type safe_##name(type1 arg1, type2 arg2, type3 arg3, type4 arg4, \
|
|||
}
|
||||
|
||||
/* So far all target and host bitmasks are the same */
|
||||
#undef target_to_host_bitmask
|
||||
#define target_to_host_bitmask(x, tbl) (x)
|
||||
#undef host_to_target_bitmask
|
||||
#define host_to_target_bitmask(x, tbl) (x)
|
||||
|
||||
#endif /* SYSCALL_DEFS_H */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue