mirror of
https://github.com/Motorhead1991/qemu.git
synced 2025-08-03 15:53:54 -06:00
tests/qtest: Avoid unaligned access in IGB test
../tests/qtest/libqos/igb.c:106:5: runtime error: load of misaligned address 0x562040be8e33 for type 'uint32_t', which requires 4 byte alignment Instead of straight casting the uint8_t array, we can use ldl_le_p and lduw_l_p to assure the unaligned access works properly against uint32_t and uint16_t. Signed-off-by: Nabih Estefan <nabihestefan@google.com> Reviewed-by: Laurent Vivier <lvivier@redhat.com> Tested-by: Laurent Vivier <lvivier@redhat.com> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Message-Id: <20250429155621.2028198-1-nabihestefan@google.com> [AJB: fix commit message, remove unneeded casts] Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Akihiko Odaki <odaki@rsg.ci.i.u-tokyo.ac.jp> Message-ID: <20250603110204.838117-5-alex.bennee@linaro.org>
This commit is contained in:
parent
4f5c81844c
commit
26b20dc207
1 changed files with 2 additions and 2 deletions
|
@ -104,10 +104,10 @@ static void igb_pci_start_hw(QOSGraphObject *obj)
|
|||
e1000e_macreg_write(&d->e1000e, E1000_RDT(0), 0);
|
||||
e1000e_macreg_write(&d->e1000e, E1000_RDH(0), 0);
|
||||
e1000e_macreg_write(&d->e1000e, E1000_RA,
|
||||
le32_to_cpu(*(uint32_t *)address));
|
||||
ldl_le_p(address));
|
||||
e1000e_macreg_write(&d->e1000e, E1000_RA + 4,
|
||||
E1000_RAH_AV | E1000_RAH_POOL_1 |
|
||||
le16_to_cpu(*(uint16_t *)(address + 4)));
|
||||
lduw_le_p(address + 4));
|
||||
|
||||
/* Set supported receive descriptor mode */
|
||||
e1000e_macreg_write(&d->e1000e,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue