[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-commits] [qemu/qemu] 8afc43: s390x/gdb: Split s390-virt.xml
From: |
Richard Henderson |
Subject: |
[Qemu-commits] [qemu/qemu] 8afc43: s390x/gdb: Split s390-virt.xml |
Date: |
Fri, 28 Apr 2023 13:58:57 -0700 |
Branch: refs/heads/master
Home: https://github.com/qemu/qemu
Commit: 8afc43ea631ffe3de889b84028c3ce430047301d
https://github.com/qemu/qemu/commit/8afc43ea631ffe3de889b84028c3ce430047301d
Author: Ilya Leoshkevich <iii@linux.ibm.com>
Date: 2023-04-28 (Fri, 28 Apr 2023)
Changed paths:
M configs/targets/s390x-linux-user.mak
M configs/targets/s390x-softmmu.mak
A gdb-xml/s390-virt-kvm.xml
M gdb-xml/s390-virt.xml
M target/s390x/gdbstub.c
Log Message:
-----------
s390x/gdb: Split s390-virt.xml
Both TCG and KVM emulate ckc, cputm, last_break and prefix, and it's
quite useful to have them during debugging. Right now they are grouped
together with KVM-only pp, pfault_token, pfault_select and
pfault_compare in s390-virt.xml, and are not available when debugging
TCG-emulated code.
Move KVM-only registers into the new s390-virt-kvm.xml file. Advertise
s390-virt.xml always, and the new s390-virt-kvm.xml only for KVM.
Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
Message-Id: <20230314101813.174874-1-iii@linux.ibm.com>
Acked-by: David Hildenbrand <david@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
Commit: c4c289cc5f6109a8c131943a7554679ffb42c03f
https://github.com/qemu/qemu/commit/c4c289cc5f6109a8c131943a7554679ffb42c03f
Author: Thomas Huth <thuth@redhat.com>
Date: 2023-04-28 (Fri, 28 Apr 2023)
Changed paths:
M hw/rdma/rdma_rm.c
Log Message:
-----------
hw/rdma: Remove unused macros PG_DIR_SZ and PG_TBL_SZ
They have apparently never been used.
Message-Id: <20230419103018.627115-1-thuth@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>
Commit: c02578b1fa0345d3da7dcdacf30ea2c246336257
https://github.com/qemu/qemu/commit/c02578b1fa0345d3da7dcdacf30ea2c246336257
Author: Thomas Huth <thuth@redhat.com>
Date: 2023-04-28 (Fri, 28 Apr 2023)
Changed paths:
M hw/rdma/meson.build
Log Message:
-----------
hw/rdma: Compile target-independent parts of the rdma code only once
Some files of the rdma code do not depend on any target specific
macros. Compile these only once to save some time during the build.
Message-Id: <20230419114937.667221-1-thuth@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>
Commit: e017462db554bedd82fa3bb86cd72d9e38684dd4
https://github.com/qemu/qemu/commit/e017462db554bedd82fa3bb86cd72d9e38684dd4
Author: Thomas Huth <thuth@redhat.com>
Date: 2023-04-28 (Fri, 28 Apr 2023)
Changed paths:
M hw/rdma/Kconfig
Log Message:
-----------
hw/rdma: VMW_PVRDMA should depend on VMXNET3_PCI
The "pvrdma" device is only usable in conjunction with the "vmxnet3"
NIC - see the check for TYPE_VMXNET3 in pvrdma_realize().
By adding this dependency, the amount of total files that have to
be compiled for a configuration with all targets decreases by 64
files (!), since the rdma code is marked as target specific and thus
got recompiled for all targets that enable PCI so far.
Message-Id: <20230419111337.651673-1-thuth@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Signed-off-by: Thomas Huth <thuth@redhat.com>
Commit: 3ee7f21ed292966f5cd3eb71aa06f8ffc0e5ae41
https://github.com/qemu/qemu/commit/3ee7f21ed292966f5cd3eb71aa06f8ffc0e5ae41
Author: Paolo Bonzini <pbonzini@redhat.com>
Date: 2023-04-28 (Fri, 28 Apr 2023)
Changed paths:
M tests/qtest/vhost-user-test.c
Log Message:
-----------
tests: vhost-user-test: release mutex on protocol violation
chr_read() is printing an error message and returning with s->data_mutex taken.
This can potentially cause a hang. Reported by Coverity.
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Message-Id: <20230427125423.103536-1-pbonzini@redhat.com>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
Commit: a2e1753b8054344f32cf94f31c6399a58794a380
https://github.com/qemu/qemu/commit/a2e1753b8054344f32cf94f31c6399a58794a380
Author: Alexander Bulekov <alxndr@bu.edu>
Date: 2023-04-28 (Fri, 28 Apr 2023)
Changed paths:
M include/exec/memory.h
M include/hw/qdev-core.h
M softmmu/memory.c
Log Message:
-----------
memory: prevent dma-reentracy issues
Add a flag to the DeviceState, when a device is engaged in PIO/MMIO/DMA.
This flag is set/checked prior to calling a device's MemoryRegion
handlers, and set when device code initiates DMA. The purpose of this
flag is to prevent two types of DMA-based reentrancy issues:
1.) mmio -> dma -> mmio case
2.) bh -> dma write -> mmio case
These issues have led to problems such as stack-exhaustion and
use-after-frees.
Summary of the problem from Peter Maydell:
https://lore.kernel.org/qemu-devel/CAFEAcA_23vc7hE3iaM-JVA6W38LK4hJoWae5KcknhPRD5fPBZA@mail.gmail.com
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/62
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/540
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/541
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/556
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/557
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/827
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1282
Resolves: CVE-2023-0330
Signed-off-by: Alexander Bulekov <alxndr@bu.edu>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20230427211013.2994127-2-alxndr@bu.edu>
[thuth: Replace warn_report() with warn_report_once()]
Signed-off-by: Thomas Huth <thuth@redhat.com>
Commit: 9c86c97f12c060bf7484dd931f38634e166a81f0
https://github.com/qemu/qemu/commit/9c86c97f12c060bf7484dd931f38634e166a81f0
Author: Alexander Bulekov <alxndr@bu.edu>
Date: 2023-04-28 (Fri, 28 Apr 2023)
Changed paths:
M docs/devel/multiple-iothreads.txt
M include/block/aio.h
M include/qemu/main-loop.h
M tests/unit/ptimer-test-stubs.c
M util/async.c
M util/main-loop.c
M util/trace-events
Log Message:
-----------
async: Add an optional reentrancy guard to the BH API
Devices can pass their MemoryReentrancyGuard (from their DeviceState),
when creating new BHes. Then, the async API will toggle the guard
before/after calling the BH call-back. This prevents bh->mmio reentrancy
issues.
Signed-off-by: Alexander Bulekov <alxndr@bu.edu>
Reviewed-by: Darren Kenny <darren.kenny@oracle.com>
Message-Id: <20230427211013.2994127-3-alxndr@bu.edu>
[thuth: Fix "line over 90 characters" checkpatch.pl error]
Signed-off-by: Thomas Huth <thuth@redhat.com>
Commit: ef56ffbdd6b0605dc1e305611287b948c970e236
https://github.com/qemu/qemu/commit/ef56ffbdd6b0605dc1e305611287b948c970e236
Author: Alexander Bulekov <alxndr@bu.edu>
Date: 2023-04-28 (Fri, 28 Apr 2023)
Changed paths:
M scripts/checkpatch.pl
Log Message:
-----------
checkpatch: add qemu_bh_new/aio_bh_new checks
Advise authors to use the _guarded versions of the APIs, instead.
Signed-off-by: Alexander Bulekov <alxndr@bu.edu>
Reviewed-by: Darren Kenny <darren.kenny@oracle.com>
Message-Id: <20230427211013.2994127-4-alxndr@bu.edu>
Signed-off-by: Thomas Huth <thuth@redhat.com>
Commit: f63192b0544af5d3e4d5edfd85ab520fcf671377
https://github.com/qemu/qemu/commit/f63192b0544af5d3e4d5edfd85ab520fcf671377
Author: Alexander Bulekov <alxndr@bu.edu>
Date: 2023-04-28 (Fri, 28 Apr 2023)
Changed paths:
M hw/9pfs/xen-9p-backend.c
M hw/block/dataplane/virtio-blk.c
M hw/block/dataplane/xen-block.c
M hw/char/virtio-serial-bus.c
M hw/display/qxl.c
M hw/display/virtio-gpu.c
M hw/ide/ahci.c
M hw/ide/ahci_internal.h
M hw/ide/core.c
M hw/misc/imx_rngc.c
M hw/misc/macio/mac_dbdma.c
M hw/net/virtio-net.c
M hw/nvme/ctrl.c
M hw/scsi/mptsas.c
M hw/scsi/scsi-bus.c
M hw/scsi/vmw_pvscsi.c
M hw/usb/dev-uas.c
M hw/usb/hcd-dwc2.c
M hw/usb/hcd-ehci.c
M hw/usb/hcd-uhci.c
M hw/usb/host-libusb.c
M hw/usb/redirect.c
M hw/usb/xen-usb.c
M hw/virtio/virtio-balloon.c
M hw/virtio/virtio-crypto.c
Log Message:
-----------
hw: replace most qemu_bh_new calls with qemu_bh_new_guarded
This protects devices from bh->mmio reentrancy issues.
Thanks: Thomas Huth <thuth@redhat.com> for diagnosing OS X test failure.
Signed-off-by: Alexander Bulekov <alxndr@bu.edu>
Reviewed-by: Darren Kenny <darren.kenny@oracle.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Reviewed-by: Paul Durrant <paul@xen.org>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20230427211013.2994127-5-alxndr@bu.edu>
Signed-off-by: Thomas Huth <thuth@redhat.com>
Commit: bfd6e7ae6a72b84e2eb9574f56e6ec037f05182c
https://github.com/qemu/qemu/commit/bfd6e7ae6a72b84e2eb9574f56e6ec037f05182c
Author: Alexander Bulekov <alxndr@bu.edu>
Date: 2023-04-28 (Fri, 28 Apr 2023)
Changed paths:
M hw/scsi/lsi53c895a.c
Log Message:
-----------
lsi53c895a: disable reentrancy detection for script RAM
As the code is designed to use the memory APIs to access the script ram,
disable reentrancy checks for the pseudo-RAM ram_io MemoryRegion.
In the future, ram_io may be converted from an IO to a proper RAM MemoryRegion.
Reported-by: Fiona Ebner <f.ebner@proxmox.com>
Signed-off-by: Alexander Bulekov <alxndr@bu.edu>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Darren Kenny <darren.kenny@oracle.com>
Message-Id: <20230427211013.2994127-6-alxndr@bu.edu>
Signed-off-by: Thomas Huth <thuth@redhat.com>
Commit: 985c4a4e547afb9573b6bd6843d20eb2c3d1d1cd
https://github.com/qemu/qemu/commit/985c4a4e547afb9573b6bd6843d20eb2c3d1d1cd
Author: Alexander Bulekov <alxndr@bu.edu>
Date: 2023-04-28 (Fri, 28 Apr 2023)
Changed paths:
M hw/misc/bcm2835_property.c
Log Message:
-----------
bcm2835_property: disable reentrancy detection for iomem
As the code is designed for re-entrant calls from bcm2835_property to
bcm2835_mbox and back into bcm2835_property, mark iomem as
reentrancy-safe.
Signed-off-by: Alexander Bulekov <alxndr@bu.edu>
Reviewed-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20230427211013.2994127-7-alxndr@bu.edu>
Signed-off-by: Thomas Huth <thuth@redhat.com>
Commit: 6dad5a6810d9c60ca320d01276f6133bbcfa1fc7
https://github.com/qemu/qemu/commit/6dad5a6810d9c60ca320d01276f6133bbcfa1fc7
Author: Alexander Bulekov <alxndr@bu.edu>
Date: 2023-04-28 (Fri, 28 Apr 2023)
Changed paths:
M hw/pci-host/raven.c
Log Message:
-----------
raven: disable reentrancy detection for iomem
As the code is designed for re-entrant calls from raven_io_ops to
pci-conf, mark raven_io_ops as reentrancy-safe.
Signed-off-by: Alexander Bulekov <alxndr@bu.edu>
Message-Id: <20230427211013.2994127-8-alxndr@bu.edu>
Signed-off-by: Thomas Huth <thuth@redhat.com>
Commit: 50795ee051a342c681a9b45671c552fbd6274db8
https://github.com/qemu/qemu/commit/50795ee051a342c681a9b45671c552fbd6274db8
Author: Alexander Bulekov <alxndr@bu.edu>
Date: 2023-04-28 (Fri, 28 Apr 2023)
Changed paths:
M hw/intc/apic.c
Log Message:
-----------
apic: disable reentrancy detection for apic-msi
As the code is designed for re-entrant calls to apic-msi, mark apic-msi
as reentrancy-safe.
Signed-off-by: Alexander Bulekov <alxndr@bu.edu>
Reviewed-by: Darren Kenny <darren.kenny@oracle.com>
Message-Id: <20230427211013.2994127-9-alxndr@bu.edu>
Signed-off-by: Thomas Huth <thuth@redhat.com>
Commit: 2074424ef6ecf44f6b3765c5ef89ee21dafa6b01
https://github.com/qemu/qemu/commit/2074424ef6ecf44f6b3765c5ef89ee21dafa6b01
Author: Richard Henderson <richard.henderson@linaro.org>
Date: 2023-04-28 (Fri, 28 Apr 2023)
Changed paths:
M configs/targets/s390x-linux-user.mak
M configs/targets/s390x-softmmu.mak
M docs/devel/multiple-iothreads.txt
A gdb-xml/s390-virt-kvm.xml
M gdb-xml/s390-virt.xml
M hw/9pfs/xen-9p-backend.c
M hw/block/dataplane/virtio-blk.c
M hw/block/dataplane/xen-block.c
M hw/char/virtio-serial-bus.c
M hw/display/qxl.c
M hw/display/virtio-gpu.c
M hw/ide/ahci.c
M hw/ide/ahci_internal.h
M hw/ide/core.c
M hw/intc/apic.c
M hw/misc/bcm2835_property.c
M hw/misc/imx_rngc.c
M hw/misc/macio/mac_dbdma.c
M hw/net/virtio-net.c
M hw/nvme/ctrl.c
M hw/pci-host/raven.c
M hw/rdma/Kconfig
M hw/rdma/meson.build
M hw/rdma/rdma_rm.c
M hw/scsi/lsi53c895a.c
M hw/scsi/mptsas.c
M hw/scsi/scsi-bus.c
M hw/scsi/vmw_pvscsi.c
M hw/usb/dev-uas.c
M hw/usb/hcd-dwc2.c
M hw/usb/hcd-ehci.c
M hw/usb/hcd-uhci.c
M hw/usb/host-libusb.c
M hw/usb/redirect.c
M hw/usb/xen-usb.c
M hw/virtio/virtio-balloon.c
M hw/virtio/virtio-crypto.c
M include/block/aio.h
M include/exec/memory.h
M include/hw/qdev-core.h
M include/qemu/main-loop.h
M scripts/checkpatch.pl
M softmmu/memory.c
M target/s390x/gdbstub.c
M tests/qtest/vhost-user-test.c
M tests/unit/ptimer-test-stubs.c
M util/async.c
M util/main-loop.c
M util/trace-events
Log Message:
-----------
Merge tag 'pull-request-2023-04-28' of https://gitlab.com/thuth/qemu into
staging
* Prevent reentrant DMA accesses by default
* Only compile hw/rdma code when necessary
* Fix a potential locking issue in the vhost-user-test
* Offer more registers in GDB for s390x TCG
# -----BEGIN PGP SIGNATURE-----
#
# iQJFBAABCAAvFiEEJ7iIR+7gJQEY8+q5LtnXdP5wLbUFAmRLlDkRHHRodXRoQHJl
# ZGhhdC5jb20ACgkQLtnXdP5wLbU98RAApVbehXIXMF4lm0B4/pTRlP7CEjbKvNdQ
# Ca/xuqiCctjisJWQMLf8WDdymzaA02ycSYo0X9diO4uisKog4kN4uYje3VTbSJnx
# 7a0MlOpUqP6AR3hZYy5y/wv1M7Yjfhnj7yTUsAo/mQYoZmvqRviNwJ6ekdIU9J4W
# V2EfY+R/ebNami9VvuHTqudcZxmmR+4S5m5JipeHvjFE0DJucES0S8sN3W+iSCxG
# ydqG02CUoZtoorkJZccy3FPyeTVHgvcNqJbhAA5pFBgo30L+mx0llqztzLnWnLCe
# GWvpW2lZ2jC5MOg8oEpbiR807eB3ITpzCu9SX0IUOxMUHpGtl49sx1WNFrrlgD4Z
# b+mZSwJx4grwkU8iD/nF0apQoqEIAH6VSyRAIq1yLAsq1H4/K4c8M+bZ/jAD+gw+
# +DujZIPJ6Gcu3BeqWgOcOY1rRol3ksmRYlU8GrHTR/zIU+q3h7Gk3aH4+Ore1qnE
# hI/YzyyZlQgFMvENqakPJIS9IH+h41gCltwE8YxqJyUWIBfRs7iBMzdxQuUW+c2b
# n6OPYqeDlQt4hEpq4mUtZ+aJV1ey6kyk5ESLTj8QaJiZtcT1+lmvZX2ug2oeyrJm
# ys2458ulKZu0rGjXWWXNFB8u3MM9xN/PLqeD/wKShyLzkit5Nfx4azw5LPbmjrbj
# Twmf1HGeUiY=
# =v84A
# -----END PGP SIGNATURE-----
# gpg: Signature made Fri 28 Apr 2023 10:39:05 AM BST
# gpg: using RSA key 27B88847EEE0250118F3EAB92ED9D774FE702DB5
# gpg: issuer "thuth@redhat.com"
# gpg: Good signature from "Thomas Huth <th.huth@gmx.de>" [undefined]
# gpg: aka "Thomas Huth <thuth@redhat.com>" [undefined]
# gpg: aka "Thomas Huth <th.huth@posteo.de>" [unknown]
# gpg: aka "Thomas Huth <huth@tuxfamily.org>" [undefined]
# gpg: WARNING: This key is not certified with a trusted signature!
# gpg: There is no indication that the signature belongs to the owner.
# Primary key fingerprint: 27B8 8847 EEE0 2501 18F3 EAB9 2ED9 D774 FE70 2DB5
* tag 'pull-request-2023-04-28' of https://gitlab.com/thuth/qemu:
apic: disable reentrancy detection for apic-msi
raven: disable reentrancy detection for iomem
bcm2835_property: disable reentrancy detection for iomem
lsi53c895a: disable reentrancy detection for script RAM
hw: replace most qemu_bh_new calls with qemu_bh_new_guarded
checkpatch: add qemu_bh_new/aio_bh_new checks
async: Add an optional reentrancy guard to the BH API
memory: prevent dma-reentracy issues
tests: vhost-user-test: release mutex on protocol violation
hw/rdma: VMW_PVRDMA should depend on VMXNET3_PCI
hw/rdma: Compile target-independent parts of the rdma code only once
hw/rdma: Remove unused macros PG_DIR_SZ and PG_TBL_SZ
s390x/gdb: Split s390-virt.xml
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Compare: https://github.com/qemu/qemu/compare/05d50ba2d466...2074424ef6ec