mirror of
https://github.com/qemu/qemu.git
synced 2026-04-05 21:50:33 +00:00
tests/tcg/plugins/mem.c: fix endian swap in update_region_info
value returned by qemu_plugin_mem_get_value() is always in host-endian order, so we need to convert TO target endianness and not FROM it. Reviewed-by: Alex Bennée <alex.bennee@linaro.org> Link: https://lore.kernel.org/qemu-devel/20260325024252.3369186-4-pierrick.bouvier@linaro.org Signed-off-by: Pierrick Bouvier <pierrick.bouvier@linaro.org>
This commit is contained in:
@@ -154,20 +154,20 @@ static void update_region_info(uint64_t region, uint64_t offset,
|
||||
val_size = 1;
|
||||
break;
|
||||
case QEMU_PLUGIN_MEM_VALUE_U16:
|
||||
swapped_value.data.u16 = be ? GUINT16_FROM_BE(value.data.u16) :
|
||||
GUINT16_FROM_LE(value.data.u16);
|
||||
swapped_value.data.u16 = be ? GUINT16_TO_BE(value.data.u16) :
|
||||
GUINT16_TO_LE(value.data.u16);
|
||||
val_ptr = &swapped_value.data.u16;
|
||||
val_size = 2;
|
||||
break;
|
||||
case QEMU_PLUGIN_MEM_VALUE_U32:
|
||||
swapped_value.data.u32 = be ? GUINT32_FROM_BE(value.data.u32) :
|
||||
GUINT32_FROM_LE(value.data.u32);
|
||||
swapped_value.data.u32 = be ? GUINT32_TO_BE(value.data.u32) :
|
||||
GUINT32_TO_LE(value.data.u32);
|
||||
val_ptr = &swapped_value.data.u32;
|
||||
val_size = 4;
|
||||
break;
|
||||
case QEMU_PLUGIN_MEM_VALUE_U64:
|
||||
swapped_value.data.u64 = be ? GUINT64_FROM_BE(value.data.u64) :
|
||||
GUINT64_FROM_LE(value.data.u64);
|
||||
swapped_value.data.u64 = be ? GUINT64_TO_BE(value.data.u64) :
|
||||
GUINT64_TO_LE(value.data.u64);
|
||||
val_ptr = &swapped_value.data.u64;
|
||||
val_size = 8;
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user