Avoid unaligned fetch in ladr_match()
authorNick Briggs <nicholas.h.briggs@gmail.com>
Thu, 1 Feb 2024 18:11:17 +0000 (10:11 -0800)
committerJason Wang <jasowang@redhat.com>
Tue, 12 Mar 2024 11:28:32 +0000 (19:28 +0800)
commit6a5287ce80470bb8df95901d73ee779a64e70c3a
treeaba84c2c843f89fce97bdbf8e37fcb803fbb0adf
parent4cadf10234989861398e19f3bb441d3861f3bb7c
Avoid unaligned fetch in ladr_match()

There is no guarantee that the PCNetState is allocated such that
csr[8] is allocated on an 8-byte boundary.  Since not all hosts are
capable of unaligned fetches the 16-bit elements need to be fetched
individually to avoid a potential fault.  Closes issue #2143

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/2143
Signed-off-by: Nick Briggs <nicholas.h.briggs@gmail.com>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Jason Wang <jasowang@redhat.com>
hw/net/pcnet.c