[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 02/11] memory: don't try to adjust endianness for zer
From: |
Michael S. Tsirkin |
Subject: |
[Qemu-devel] [PULL 02/11] memory: don't try to adjust endianness for zero length eventfd |
Date: |
Thu, 12 Nov 2015 17:09:14 +0200 |
From: Jason Wang <address@hidden>
There's no need to adjust endianness for zero length eventfd since the
data wrote was actually ignored by kernel. So skip the adjust in this
case to fix a possible crash when trying to use wildcard mmio eventfd
in ppc.
Cc: Greg Kurz <address@hidden>
Cc: Peter Maydell <address@hidden>
Cc: Paolo Bonzini <address@hidden>
Acked-by: Greg Kurz <address@hidden>
Signed-off-by: Jason Wang <address@hidden>
Reviewed-by: Michael S. Tsirkin <address@hidden>
Signed-off-by: Michael S. Tsirkin <address@hidden>
---
memory.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/memory.c b/memory.c
index c435c88..e193658 100644
--- a/memory.c
+++ b/memory.c
@@ -1688,7 +1688,9 @@ void memory_region_add_eventfd(MemoryRegion *mr,
};
unsigned i;
- adjust_endianness(mr, &mrfd.data, size);
+ if (size) {
+ adjust_endianness(mr, &mrfd.data, size);
+ }
memory_region_transaction_begin();
for (i = 0; i < mr->ioeventfd_nb; ++i) {
if (memory_region_ioeventfd_before(mrfd, mr->ioeventfds[i])) {
@@ -1721,7 +1723,9 @@ void memory_region_del_eventfd(MemoryRegion *mr,
};
unsigned i;
- adjust_endianness(mr, &mrfd.data, size);
+ if (size) {
+ adjust_endianness(mr, &mrfd.data, size);
+ }
memory_region_transaction_begin();
for (i = 0; i < mr->ioeventfd_nb; ++i) {
if (memory_region_ioeventfd_equal(mrfd, mr->ioeventfds[i])) {
--
MST
- [Qemu-devel] [PULL 00/11] virtio, vhost: fixes for 2.5, Michael S. Tsirkin, 2015/11/12
- [Qemu-devel] [PULL 01/11] virtio-pci: fix 1.0 virtqueue migration, Michael S. Tsirkin, 2015/11/12
- [Qemu-devel] [PULL 03/11] KVM: add support for any length io eventfd, Michael S. Tsirkin, 2015/11/12
- [Qemu-devel] [PULL 02/11] memory: don't try to adjust endianness for zero length eventfd,
Michael S. Tsirkin <=
- [Qemu-devel] [PULL 04/11] virtio-pci: use zero length mmio eventfd for 1.0 notification cap when possible, Michael S. Tsirkin, 2015/11/12
- [Qemu-devel] [PULL 05/11] virtio-pci: introduce pio notification capability for modern device, Michael S. Tsirkin, 2015/11/12
- [Qemu-devel] [PULL 06/11] virtio-pci: unbreak queue_enable read, Michael S. Tsirkin, 2015/11/12
- [Qemu-devel] [PULL 08/11] vhost: rename RESET_DEVICE backto RESET_OWNER, Michael S. Tsirkin, 2015/11/12
- [Qemu-devel] [PULL 09/11] vhost: send SET_VRING_ENABLE at start/stop, Michael S. Tsirkin, 2015/11/12
- [Qemu-devel] [PULL 07/11] vhost-user: modify SET_LOG_BASE to pass mmap size and offset, Michael S. Tsirkin, 2015/11/12
- [Qemu-devel] [PULL 10/11] hw/virtio: Add PCIe capability to virtio devices, Michael S. Tsirkin, 2015/11/12
- [Qemu-devel] [PULL 11/11] virtio-9p: add savem handlers, Michael S. Tsirkin, 2015/11/12
- Re: [Qemu-devel] [PULL 00/11] virtio, vhost: fixes for 2.5, Peter Maydell, 2015/11/12