diff options
author | Avi Kivity <avi@redhat.com> | 2012-05-07 15:00:45 +0300 |
---|---|---|
committer | Michael S. Tsirkin <mst@redhat.com> | 2012-05-08 17:09:53 +0300 |
commit | bdc62e62ead1a6c2a113934bf28cb5abef48618d (patch) | |
tree | 879fc26ba0fb234b1a33c85ad2e433eabbb581fc /iohandler.c | |
parent | 847c25d01cbe8e4fe457a7426f82daaaf3287aae (diff) | |
download | qemu-bdc62e62ead1a6c2a113934bf28cb5abef48618d.tar.gz qemu-bdc62e62ead1a6c2a113934bf28cb5abef48618d.tar.bz2 qemu-bdc62e62ead1a6c2a113934bf28cb5abef48618d.zip |
rtl8139: fix regression in TxStatus/TxAddr read
Commit afe0a595356192 added byte reads for TxStatus/TxAddr, but
broke 32-bit reads; the mask generation
(1 << (8 * size)) - 1
is unspecified in C for size >= sizeof(int), and in fact returns 0
on x86.
Fix by using a larger type.
Fixes (at least) Fedora 9 i386 with -machine kernel_irqchip=on. I
didn't see it with the qemu APIC implementation; may be due to timing
or (more likely) a tester error.
Signed-off-by: Avi Kivity <avi@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Diffstat (limited to 'iohandler.c')
0 files changed, 0 insertions, 0 deletions