[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [RFC v5 000/126] error: auto propagated local_err
Hi On Fri, Nov 8, 2019 at 7:31 PM Vladimir Sementsov-Ogievskiy <vsementsov@xxxxxxxxxxxxx> wrote: > > Finally, what is the plan? > > Markus what do you think? > > Now a lot of patches are reviewed, but a lot of are not. > > Is there any hope that all patches will be reviewed? Should I resend the > whole series, or may be reduce it to reviewed subsystems only? I don't think we have well established rules for whole-tree cleanups like this. In the past, several cleanup series got lost. It will take ages to get every subsystem maintainer to review the patches. Most likely, since they are quite systematic, there isn't much to say and it is easy to miss something that has some hidden ramifications. Perhaps whole-tree cleanups should require at least 2 reviewers to bypass the subsytem maintainer review? But my past experience with this kind of exercice doesn't encourage me, and probably I am not the only one. > > 11.10.2019 19:03, Vladimir Sementsov-Ogievskiy wrote: > > Hi all! > > > > At the request of Markus: full version of errp propagation. Let's look > > at it. Cover as much as possible, except inserting macro invocation > > where it's not necessary. > > > > It's huge, and so it's an RFC. > > > > In v5 I've added a lot more preparation cleanups: > > 01-23 are preparation cleanups > > 01: not changed, keep Eric's r-b > > 02: improve commit msg [Markus], keep Eric's r-b > > 03: changed, only error API here, drop r-b > > 24 is core macro > > - improve cover letter, wording and macro code style > > - keep Eric's r-b > > 25-26: automation scripts > > - commit-per-subsystem changed a lot. it's a draft, don't bother too > > much with it > > - coccinelle: add support of error_propagate_prepend > > > > 27-126: generated patches > > > > ==== > > > > Here is a proposal of auto propagation for local_err, to not call > > error_propagate on every exit point, when we deal with local_err. > > > > There are also two issues with errp: > > > > 1. error_fatal & error_append_hint/error_prepend: user can't see this > > additional info, because exit() happens in error_setg earlier than info > > is added. [Reported by Greg Kurz] > > > > 2. error_abort & error_propagate: when we wrap > > error_abort by local_err+error_propagate, resulting coredump will > > refer to error_propagate and not to the place where error happened. > > (the macro itself don't fix the issue, but it allows to [3.] drop all > > local_err+error_propagate pattern, which will definitely fix the issue) > > [Reported by Kevin Wolf] > > > > ==== > > > > Generated patches split: > > > > misc > > hw/misc/ivshmem.c > > hw/misc/tmp105.c > > hw/misc/tmp421.c > > s390x > > hw/intc/s390_flic_kvm.c > > hw/s390x/3270-ccw.c > > hw/s390x/css-bridge.c > > hw/s390x/css.c > > hw/s390x/s390-skeys.c > > hw/s390x/s390-virtio-ccw.c > > hw/s390x/sclp.c > > hw/s390x/tod-kvm.c > > hw/vfio/ccw.c > > target/s390x/cpu.c > > tcg > > exec.c > > hw/arm/armv7m.c > > hw/arm/smmu-common.c > > hw/arm/smmuv3.c > > hw/cpu/a15mpcore.c > > hw/cpu/a9mpcore.c > > hw/cpu/arm11mpcore.c > > hw/i386/pc.c > > hw/intc/nios2_iic.c > > hw/mips/cps.c > > hw/riscv/riscv_hart.c > > hw/riscv/sifive_e.c > > hw/riscv/sifive_u.c > > hw/sd/milkymist-memcard.c > > target/alpha/cpu.c > > target/arm/cpu.c > > target/arm/cpu64.c > > target/cris/cpu.c > > target/hppa/cpu.c > > target/i386/cpu.c > > target/lm32/cpu.c > > target/m68k/cpu.c > > target/microblaze/cpu.c > > target/mips/cpu.c > > target/moxie/cpu.c > > target/nios2/cpu.c > > target/openrisc/cpu.c > > target/ppc/compat.c > > target/ppc/translate_init.inc.c > > target/riscv/cpu.c > > target/sh4/cpu.c > > target/sparc/cpu.c > > target/tricore/cpu.c > > target/unicore32/cpu.c > > target/xtensa/cpu.c > > kvm > > target/ppc/kvm.c > > target/s390x/cpu_models.c > > xen > > hw/block/dataplane/xen-block.c > > hw/block/xen-block.c > > hw/xen/xen-backend.c > > hw/xen/xen-bus.c > > hw/xen/xen-host-pci-device.c > > hw/xen/xen_pt.c > > hw/xen/xen_pt_config_init.c > > Hosts > > qga/commands-win32.c > > util/oslib-posix.c > > ARM Machines > > hw/arm/allwinner-a10.c > > hw/arm/aspeed_soc.c > > hw/arm/bcm2835_peripherals.c > > hw/arm/bcm2836.c > > hw/arm/digic.c > > hw/arm/fsl-imx25.c > > hw/arm/fsl-imx31.c > > hw/arm/fsl-imx6.c > > hw/arm/integratorcp.c > > hw/arm/msf2-soc.c > > hw/arm/nrf51_soc.c > > hw/arm/stm32f205_soc.c > > hw/arm/virt.c > > hw/arm/xlnx-versal-virt.c > > hw/arm/xlnx-zynqmp.c > > hw/cpu/realview_mpcore.c > > hw/display/bcm2835_fb.c > > hw/dma/bcm2835_dma.c > > hw/dma/xilinx_axidma.c > > hw/gpio/aspeed_gpio.c > > hw/gpio/bcm2835_gpio.c > > hw/intc/arm_gic.c > > hw/intc/arm_gic_kvm.c > > hw/intc/arm_gicv3.c > > hw/intc/arm_gicv3_its_kvm.c > > hw/intc/arm_gicv3_kvm.c > > hw/intc/armv7m_nvic.c > > hw/intc/realview_gic.c > > hw/microblaze/xlnx-zynqmp-pmu.c > > hw/misc/bcm2835_mbox.c > > hw/misc/bcm2835_property.c > > hw/misc/msf2-sysreg.c > > hw/net/xilinx_axienet.c > > hw/nvram/nrf51_nvm.c > > hw/timer/aspeed_timer.c > > hw/watchdog/wdt_aspeed.c > > MIPS Machines > > hw/core/loader-fit.c > > PowerPC Machines > > hw/intc/pnv_xive.c > > hw/intc/xics.c > > hw/intc/xics_kvm.c > > hw/intc/xics_pnv.c > > hw/intc/xics_spapr.c > > hw/isa/pc87312.c > > hw/misc/macio/macio.c > > hw/ppc/e500.c > > hw/ppc/mac_newworld.c > > hw/ppc/pnv.c > > hw/ppc/pnv_core.c > > hw/ppc/pnv_homer.c > > hw/ppc/pnv_lpc.c > > hw/ppc/pnv_occ.c > > hw/ppc/pnv_psi.c > > hw/ppc/spapr.c > > hw/ppc/spapr_caps.c > > hw/ppc/spapr_cpu_core.c > > hw/ppc/spapr_drc.c > > hw/ppc/spapr_irq.c > > hw/ppc/spapr_pci.c > > hw/ppc/spapr_vio.c > > SPARC Machines > > hw/sparc/sun4m.c > > hw/sparc64/sun4u.c > > S390 Machines > > hw/s390x/ipl.c > > hw/s390x/s390-pci-bus.c > > X86 Machines > > hw/acpi/ich9.c > > hw/char/debugcon.c > > hw/char/serial-pci-multi.c > > hw/char/serial-pci.c > > hw/core/machine.c > > hw/core/numa.c > > hw/intc/apic_common.c > > hw/pci-host/piix.c > > IDE > > hw/ide/qdev.c > > Floppy > > hw/block/fdc.c > > IPack > > hw/ipack/ipack.c > > PCI > > hw/pci-bridge/gen_pcie_root_port.c > > hw/pci-bridge/pci_bridge_dev.c > > hw/pci-bridge/pci_expander_bridge.c > > hw/pci-bridge/pcie_pci_bridge.c > > hw/pci-bridge/pcie_root_port.c > > hw/pci/pci.c > > hw/pci/pcie.c > > hw/pci/shpc.c > > ACPI/SMBIOS > > hw/acpi/core.c > > hw/acpi/cpu_hotplug.c > > hw/acpi/memory_hotplug.c > > hw/mem/memory-device.c > > hw/mem/pc-dimm.c > > hw/smbios/smbios.c > > Network devices > > hw/net/dp8393x.c > > hw/net/ne2000-isa.c > > pflash > > hw/block/pflash_cfi01.c > > hw/block/pflash_cfi02.c > > SCSI > > hw/scsi/esp-pci.c > > hw/scsi/mptsas.c > > hw/scsi/scsi-bus.c > > hw/scsi/scsi-disk.c > > hw/scsi/scsi-generic.c > > hw/scsi/virtio-scsi.c > > SD (Secure Card) > > hw/sd/sdhci-pci.c > > hw/sd/sdhci.c > > USB > > hw/usb/bus.c > > hw/usb/ccid-card-emulated.c > > hw/usb/dev-smartcard-reader.c > > hw/usb/dev-storage.c > > hw/usb/hcd-ohci-pci.c > > hw/usb/hcd-ohci.c > > hw/usb/hcd-uhci.c > > hw/usb/hcd-xhci.c > > USB (serial adapter) > > hw/usb/dev-serial.c > > VFIO > > hw/vfio/common.c > > hw/vfio/pci-quirks.c > > hw/vfio/pci.c > > hw/vfio/platform.c > > vfio-ccw > > hw/s390x/s390-ccw.c > > vhost > > hw/block/vhost-user-blk.c > > hw/scsi/vhost-scsi.c > > hw/scsi/vhost-user-scsi.c > > hw/virtio/vhost-vsock.c > > virtio > > hw/virtio/virtio-balloon.c > > hw/virtio/virtio-bus.c > > hw/virtio/virtio-pci.c > > hw/virtio/virtio-rng-pci.c > > hw/virtio/virtio.c > > virtio-9p > > hw/9pfs/9p-local.c > > hw/9pfs/9p.c > > virtio-blk > > hw/block/dataplane/virtio-blk.c > > hw/block/virtio-blk.c > > virtio-ccw > > hw/s390x/virtio-ccw-crypto.c > > hw/s390x/virtio-ccw-rng.c > > hw/s390x/virtio-ccw.c > > virtio-input > > hw/input/virtio-input.c > > virtio-serial > > hw/char/virtio-serial-bus.c > > virtio-rng > > backends/rng.c > > hw/virtio/virtio-rng.c > > megasas > > hw/scsi/megasas.c > > NVDIMM > > hw/mem/nvdimm.c > > eepro100 > > hw/net/eepro100.c > > virtio-gpu > > hw/display/virtio-gpu-base.c > > hw/display/virtio-gpu-pci.c > > hw/display/virtio-vga.c > > fw_cfg > > hw/nvram/fw_cfg.c > > XIVE > > hw/intc/spapr_xive.c > > hw/intc/spapr_xive_kvm.c > > hw/intc/xive.c > > Audio > > audio/audio.c > > hw/audio/intel-hda.c > > block > > block.c > > block/backup.c > > block/block-backend.c > > block/commit.c > > block/crypto.c > > block/dirty-bitmap.c > > block/io.c > > block/mirror.c > > block/qapi.c > > block/snapshot.c > > block/throttle-groups.c > > block/throttle.c > > block/vxhs.c > > blockdev.c > > blockjob.c > > hw/block/onenand.c > > job.c > > scsi > > scsi/pr-manager-helper.c > > chardev > > chardev/char-socket.c > > chardev/char.c > > chardev/spice.c > > cmdline > > util/qemu-option.c > > Dump > > dump/dump.c > > dump/win_dump.c > > Memory API > > memory.c > > SPICE > > hw/display/qxl.c > > Graphics > > ui/input-barrier.c > > ui/input.c > > ui/vnc.c > > Main loop > > util/main-loop.c > > vl.c > > Human Monitor (HMP) > > monitor/misc.c > > net > > net/can/can_host.c > > net/dump.c > > net/filter-buffer.c > > net/filter.c > > net/net.c > > net/netmap.c > > net/tap.c > > hostmem > > backends/hostmem-file.c > > backends/hostmem-memfd.c > > backends/hostmem.c > > cryptodev > > backends/cryptodev-vhost-user.c > > backends/cryptodev.c > > QAPI > > qapi/qapi-visit-core.c > > qapi/qmp-dispatch.c > > qapi/string-input-visitor.c > > qga > > qga/commands-posix.c > > QOM > > hw/core/qdev-properties-system.c > > hw/core/qdev-properties.c > > hw/core/qdev.c > > qdev-monitor.c > > qom/object.c > > qom/object_interfaces.c > > qom/qom-qobject.c > > QMP > > monitor/qmp-cmds.c > > SLIRP > > net/slirp.c > > Tracing > > trace/qmp.c > > TPM > > hw/tpm/tpm_util.c > > tpm.c > > Migration > > migration/migration.c > > migration/ram.c > > migration/rdma.c > > migration/savevm.c > > migration/socket.c > > Cryptography > > crypto/block-luks.c > > crypto/secret.c > > crypto/tlssession.c > > I/O Channels > > io/dns-resolver.c > > io/net-listener.c > > Sockets > > util/qemu-sockets.c > > colo > > migration/colo.c > > Record/replay > > block/blkreplay.c > > VMDK > > block/vmdk.c > > RBD > > block/rbd.c > > Sheepdog > > block/sheepdog.c > > VHDX > > block/vhdx-log.c > > block/vhdx.c > > VDI > > block/vdi.c > > iSCSI > > block/iscsi.c > > nbd > > include/block/nbd.h > > block/nbd.c > > nbd/client.c > > nbd/server.c > > NFS > > block/nfs.c > > SSH > > block/ssh.c > > CURL > > block/curl.c > > GLUSTER > > block/gluster.c > > NVMe Block Driver > > block/nvme.c > > Bootdevice > > bootdevice.c > > Quorum > > block/quorum.c > > blklogwrites > > block/blklogwrites.c > > blkverify > > block/blkverify.c > > parallels > > block/parallels.c > > qed > > block/qed.c > > raw > > block/file-posix.c > > block/file-win32.c > > block/raw-format.c > > qcow2 > > block/qcow2-bitmap.c > > block/qcow2.c > > qcow > > block/qcow.c > > blkdebug > > block/blkdebug.c > > vpc > > block/vpc.c > > vvfat > > block/vvfat.c > > Replication > > block/replication.c > > replication.c > > PVRDMA > > hw/rdma/vmw/pvrdma_main.c > > hw/core/bus.c > > hw/core/bus.c > > hw/cpu/core.c > > hw/cpu/core.c > > hw/sd/ssi-sd.c > > hw/sd/ssi-sd.c > > iothread.c > > iothread.c > > memory_mapping.c > > memory_mapping.c > > target/tilegx/cpu.c > > target/tilegx/cpu.c > > tests/test-image-locking.c > > tests/test-image-locking.c > > util/qemu-config.c > > util/qemu-config.c > > > > > > Vladimir Sementsov-Ogievskiy (126): > > hw/core/loader-fit: fix freeing errp in fit_load_fdt > > net/net: Clean up variable shadowing in net_client_init() > > error: rename errp to errp_in where it is IN-argument > > hmp: drop Error pointer indirection in hmp_handle_error > > vnc: drop Error pointer indirection in vnc_client_io_error > > qdev-monitor: well form error hint helpers > > nbd: well form nbd_iter_channel_error errp handler > > ppc: well form kvmppc_hint_smt_possible error hint helper > > 9pfs: well form error hint helpers > > hw/core/qdev: cleanup Error ** variables > > block/snapshot: rename Error ** parameter to more common errp > > hw/i386/amd_iommu: rename Error ** parameter to more common errp > > qga: rename Error ** parameter to more common errp > > monitor/qmp-cmds: rename Error ** parameter to more common errp > > hw/s390x: rename Error ** parameter to more common errp > > hw/sd: rename Error ** parameter to more common errp > > hw/tpm: rename Error ** parameter to more common errp > > hw/usb: rename Error ** parameter to more common errp > > include/block/snapshot.h: rename Error ** parameter to more common > > errp > > include/qom/object.h: rename Error ** parameter to more common errp > > qapi/error: add (Error **errp) cleaning APIs > > backends/cryptodev: drop local_err from cryptodev_backend_complete() > > hw/vfio/ap: drop local_err from vfio_ap_realize > > error: auto propagated local_err > > scripts: add coccinelle script to use auto propagated errp > > python: add commit-per-subsystem.py > > misc: introduce ERRP_AUTO_PROPAGATE > > s390x: introduce ERRP_AUTO_PROPAGATE > > tcg: introduce ERRP_AUTO_PROPAGATE > > kvm: introduce ERRP_AUTO_PROPAGATE > > xen: introduce ERRP_AUTO_PROPAGATE > > Hosts: introduce ERRP_AUTO_PROPAGATE > > ARM Machines: introduce ERRP_AUTO_PROPAGATE > > MIPS Machines: introduce ERRP_AUTO_PROPAGATE > > PowerPC Machines: introduce ERRP_AUTO_PROPAGATE > > SPARC Machines: introduce ERRP_AUTO_PROPAGATE > > S390 Machines: introduce ERRP_AUTO_PROPAGATE > > X86 Machines: introduce ERRP_AUTO_PROPAGATE > > IDE: introduce ERRP_AUTO_PROPAGATE > > Floppy: introduce ERRP_AUTO_PROPAGATE > > IPack: introduce ERRP_AUTO_PROPAGATE > > PCI: introduce ERRP_AUTO_PROPAGATE > > ACPI/SMBIOS: introduce ERRP_AUTO_PROPAGATE > > Network devices: introduce ERRP_AUTO_PROPAGATE > > pflash: introduce ERRP_AUTO_PROPAGATE > > SCSI: introduce ERRP_AUTO_PROPAGATE > > SD (Secure Card): introduce ERRP_AUTO_PROPAGATE > > USB: introduce ERRP_AUTO_PROPAGATE > > USB (serial adapter): introduce ERRP_AUTO_PROPAGATE > > VFIO: introduce ERRP_AUTO_PROPAGATE > > vfio-ccw: introduce ERRP_AUTO_PROPAGATE > > vhost: introduce ERRP_AUTO_PROPAGATE > > virtio: introduce ERRP_AUTO_PROPAGATE > > virtio-9p: introduce ERRP_AUTO_PROPAGATE > > virtio-blk: introduce ERRP_AUTO_PROPAGATE > > virtio-ccw: introduce ERRP_AUTO_PROPAGATE > > virtio-input: introduce ERRP_AUTO_PROPAGATE > > virtio-serial: introduce ERRP_AUTO_PROPAGATE > > virtio-rng: introduce ERRP_AUTO_PROPAGATE > > megasas: introduce ERRP_AUTO_PROPAGATE > > NVDIMM: introduce ERRP_AUTO_PROPAGATE > > eepro100: introduce ERRP_AUTO_PROPAGATE > > virtio-gpu: introduce ERRP_AUTO_PROPAGATE > > fw_cfg: introduce ERRP_AUTO_PROPAGATE > > XIVE: introduce ERRP_AUTO_PROPAGATE > > Audio: introduce ERRP_AUTO_PROPAGATE > > block: introduce ERRP_AUTO_PROPAGATE > > scsi: introduce ERRP_AUTO_PROPAGATE > > chardev: introduce ERRP_AUTO_PROPAGATE > > cmdline: introduce ERRP_AUTO_PROPAGATE > > Dump: introduce ERRP_AUTO_PROPAGATE > > Memory API: introduce ERRP_AUTO_PROPAGATE > > SPICE: introduce ERRP_AUTO_PROPAGATE > > Graphics: introduce ERRP_AUTO_PROPAGATE > > Main loop: introduce ERRP_AUTO_PROPAGATE > > Human Monitor (HMP): introduce ERRP_AUTO_PROPAGATE > > net: introduce ERRP_AUTO_PROPAGATE > > hostmem: introduce ERRP_AUTO_PROPAGATE > > cryptodev: introduce ERRP_AUTO_PROPAGATE > > QAPI: introduce ERRP_AUTO_PROPAGATE > > qga: introduce ERRP_AUTO_PROPAGATE > > QOM: introduce ERRP_AUTO_PROPAGATE > > QMP: introduce ERRP_AUTO_PROPAGATE > > SLIRP: introduce ERRP_AUTO_PROPAGATE > > Tracing: introduce ERRP_AUTO_PROPAGATE > > TPM: introduce ERRP_AUTO_PROPAGATE > > Migration: introduce ERRP_AUTO_PROPAGATE > > Cryptography: introduce ERRP_AUTO_PROPAGATE > > I/O Channels: introduce ERRP_AUTO_PROPAGATE > > Sockets: introduce ERRP_AUTO_PROPAGATE > > colo: introduce ERRP_AUTO_PROPAGATE > > Record/replay: introduce ERRP_AUTO_PROPAGATE > > VMDK: introduce ERRP_AUTO_PROPAGATE > > RBD: introduce ERRP_AUTO_PROPAGATE > > Sheepdog: introduce ERRP_AUTO_PROPAGATE > > VHDX: introduce ERRP_AUTO_PROPAGATE > > VDI: introduce ERRP_AUTO_PROPAGATE > > iSCSI: introduce ERRP_AUTO_PROPAGATE > > nbd: introduce ERRP_AUTO_PROPAGATE > > NFS: introduce ERRP_AUTO_PROPAGATE > > SSH: introduce ERRP_AUTO_PROPAGATE > > CURL: introduce ERRP_AUTO_PROPAGATE > > GLUSTER: introduce ERRP_AUTO_PROPAGATE > > NVMe Block Driver: introduce ERRP_AUTO_PROPAGATE > > Bootdevice: introduce ERRP_AUTO_PROPAGATE > > Quorum: introduce ERRP_AUTO_PROPAGATE > > blklogwrites: introduce ERRP_AUTO_PROPAGATE > > blkverify: introduce ERRP_AUTO_PROPAGATE > > parallels: introduce ERRP_AUTO_PROPAGATE > > qed: introduce ERRP_AUTO_PROPAGATE > > raw: introduce ERRP_AUTO_PROPAGATE > > qcow2: introduce ERRP_AUTO_PROPAGATE > > qcow: introduce ERRP_AUTO_PROPAGATE > > blkdebug: introduce ERRP_AUTO_PROPAGATE > > vpc: introduce ERRP_AUTO_PROPAGATE > > vvfat: introduce ERRP_AUTO_PROPAGATE > > Replication: introduce ERRP_AUTO_PROPAGATE > > PVRDMA: introduce ERRP_AUTO_PROPAGATE > > hw/core/bus.c: introduce ERRP_AUTO_PROPAGATE > > hw/cpu/core.c: introduce ERRP_AUTO_PROPAGATE > > hw/sd/ssi-sd.c: introduce ERRP_AUTO_PROPAGATE > > iothread.c: introduce ERRP_AUTO_PROPAGATE > > memory_mapping.c: introduce ERRP_AUTO_PROPAGATE > > target/tilegx/cpu.c: introduce ERRP_AUTO_PROPAGATE > > tests/test-image-locking.c: introduce ERRP_AUTO_PROPAGATE > > util/qemu-config.c: introduce ERRP_AUTO_PROPAGATE > > > > > > CC: Gerd Hoffmann <kraxel@xxxxxxxxxx> > > CC: "Gonglei (Arei)" <arei.gonglei@xxxxxxxxxx> > > CC: Eduardo Habkost <ehabkost@xxxxxxxxxx> > > CC: Igor Mammedov <imammedo@xxxxxxxxxx> > > CC: Laurent Vivier <lvivier@xxxxxxxxxx> > > CC: Amit Shah <amit@xxxxxxxxxx> > > CC: Kevin Wolf <kwolf@xxxxxxxxxx> > > CC: Max Reitz <mreitz@xxxxxxxxxx> > > CC: John Snow <jsnow@xxxxxxxxxx> > > CC: Ari Sundholm <ari@xxxxxxxxxx> > > CC: Pavel Dovgalyuk <pavel.dovgaluk@xxxxxxxxx> > > CC: Paolo Bonzini <pbonzini@xxxxxxxxxx> > > CC: Stefan Hajnoczi <stefanha@xxxxxxxxxx> > > CC: Fam Zheng <fam@xxxxxxxxxx> > > CC: Stefan Weil <sw@xxxxxxxxxxx> > > CC: Ronnie Sahlberg <ronniesahlberg@xxxxxxxxx> > > CC: Peter Lieven <pl@xxxxxxx> > > CC: Eric Blake <eblake@xxxxxxxxxx> > > CC: "Denis V. Lunev" <den@xxxxxxxxxx> > > CC: Markus Armbruster <armbru@xxxxxxxxxx> > > CC: Alberto Garcia <berto@xxxxxxxxxx> > > CC: Jason Dillaman <dillaman@xxxxxxxxxx> > > CC: Wen Congyang <wencongyang2@xxxxxxxxxx> > > CC: Xie Changlong <xiechanglong.d@xxxxxxxxx> > > CC: Liu Yuan <namei.unix@xxxxxxxxx> > > CC: "Richard W.M. Jones" <rjones@xxxxxxxxxx> > > CC: Jeff Cody <codyprime@xxxxxxxxx> > > CC: "Marc-André Lureau" <marcandre.lureau@xxxxxxxxxx> > > CC: "Daniel P. Berrangé" <berrange@xxxxxxxxxx> > > CC: Richard Henderson <rth@xxxxxxxxxxx> > > CC: Greg Kurz <groug@xxxxxxxx> > > CC: "Michael S. Tsirkin" <mst@xxxxxxxxxx> > > CC: Marcel Apfelbaum <marcel.apfelbaum@xxxxxxxxx> > > CC: Beniamino Galvani <b.galvani@xxxxxxxxx> > > CC: Peter Maydell <peter.maydell@xxxxxxxxxx> > > CC: "Cédric Le Goater" <clg@xxxxxxxx> > > CC: Andrew Jeffery <andrew@xxxxxxxx> > > CC: Joel Stanley <joel@xxxxxxxxx> > > CC: Andrew Baumann <Andrew.Baumann@xxxxxxxxxxxxx> > > CC: "Philippe Mathieu-Daudé" <philmd@xxxxxxxxxx> > > CC: Antony Pavlov <antonynpavlov@xxxxxxxxx> > > CC: Jean-Christophe Dubois <jcd@xxxxxxxxxxxxxxx> > > CC: Peter Chubb <peter.chubb@xxxxxxxxxxxx> > > CC: Subbaraya Sundeep <sundeep.lkml@xxxxxxxxx> > > CC: Eric Auger <eric.auger@xxxxxxxxxx> > > CC: Alistair Francis <alistair@xxxxxxxxxxxxx> > > CC: "Edgar E. Iglesias" <edgar.iglesias@xxxxxxxxx> > > CC: Stefano Stabellini <sstabellini@xxxxxxxxxx> > > CC: Anthony Perard <anthony.perard@xxxxxxxxxx> > > CC: Paul Durrant <paul@xxxxxxx> > > CC: Paul Burton <pburton@xxxxxxxxxxxx> > > CC: Aleksandar Rikalo <arikalo@xxxxxxxxxxxx> > > CC: Chris Wulff <crwulff@xxxxxxxxx> > > CC: Marek Vasut <marex@xxxxxxx> > > CC: David Gibson <david@xxxxxxxxxxxxxxxxxxxxx> > > CC: Cornelia Huck <cohuck@xxxxxxxxxx> > > CC: Halil Pasic <pasic@xxxxxxxxxxxxx> > > CC: Christian Borntraeger <borntraeger@xxxxxxxxxx> > > CC: "Hervé Poussineau" <hpoussin@xxxxxxxxxxx> > > CC: Xiao Guangrong <xiaoguangrong.eric@xxxxxxxxx> > > CC: Aurelien Jarno <aurelien@xxxxxxxxxxx> > > CC: Aleksandar Markovic <amarkovic@xxxxxxxxxxxx> > > CC: Mark Cave-Ayland <mark.cave-ayland@xxxxxxxxxxxx> > > CC: Jason Wang <jasowang@xxxxxxxxxx> > > CC: Laszlo Ersek <lersek@xxxxxxxxxx> > > CC: Yuval Shaia <yuval.shaia@xxxxxxxxxx> > > CC: Palmer Dabbelt <palmer@xxxxxxxxxx> > > CC: Sagar Karandikar <sagark@xxxxxxxxxxxxxxxxx> > > CC: Bastian Koppelmann <kbastian@xxxxxxxxxxxxxxxxxxxxx> > > CC: David Hildenbrand <david@xxxxxxxxxx> > > CC: Thomas Huth <thuth@xxxxxxxxxx> > > CC: Eric Farman <farman@xxxxxxxxxxxxx> > > CC: Matthew Rosato <mjrosato@xxxxxxxxxxxxx> > > CC: Hannes Reinecke <hare@xxxxxxxx> > > CC: Michael Walle <michael@xxxxxxxx> > > CC: Artyom Tarasenko <atar4qemu@xxxxxxxxx> > > CC: Stefan Berger <stefanb@xxxxxxxxxxxxx> > > CC: Samuel Thibault <samuel.thibault@xxxxxxxxxxxx> > > CC: Alex Williamson <alex.williamson@xxxxxxxxxx> > > CC: Tony Krowiak <akrowiak@xxxxxxxxxxxxx> > > CC: Pierre Morel <pmorel@xxxxxxxxxxxxx> > > CC: Michael Roth <mdroth@xxxxxxxxxxxxxxxxxx> > > CC: Hailiang Zhang <zhang.zhanghailiang@xxxxxxxxxx> > > CC: Juan Quintela <quintela@xxxxxxxxxx> > > CC: "Dr. David Alan Gilbert" <dgilbert@xxxxxxxxxx> > > CC: Luigi Rizzo <rizzo@xxxxxxxxxxxx> > > CC: Giuseppe Lettieri <g.lettieri@xxxxxxxxxxxx> > > CC: Vincenzo Maffione <v.maffione@xxxxxxxxx> > > CC: Jan Kiszka <jan.kiszka@xxxxxxxxxxx> > > CC: Anthony Green <green@xxxxxxxxxxxxxx> > > CC: Stafford Horne <shorne@xxxxxxxxx> > > CC: Guan Xuetao <gxt@xxxxxxxxxxxxxxx> > > CC: Max Filippov <jcmvbkbc@xxxxxxxxx> > > CC: qemu-block@xxxxxxxxxx > > CC: integration@xxxxxxxxxxx > > CC: sheepdog@xxxxxxxxxxxxxx > > CC: qemu-arm@xxxxxxxxxx > > CC: xen-devel@xxxxxxxxxxxxxxxxxxxx > > CC: qemu-ppc@xxxxxxxxxx > > CC: qemu-s390x@xxxxxxxxxx > > CC: qemu-riscv@xxxxxxxxxx > > > > include/block/nbd.h | 1 + > > include/block/snapshot.h | 2 +- > > include/monitor/hmp.h | 2 +- > > include/qapi/error.h | 69 ++++- > > include/qom/object.h | 4 +- > > target/ppc/kvm_ppc.h | 4 +- > > ui/vnc.h | 2 +- > > audio/audio.c | 12 +- > > backends/cryptodev-vhost-user.c | 10 +- > > backends/cryptodev.c | 25 +- > > backends/hostmem-file.c | 21 +- > > backends/hostmem-memfd.c | 18 +- > > backends/hostmem.c | 41 ++- > > backends/rng.c | 7 +- > > block.c | 225 +++++++--------- > > block/backup.c | 1 + > > block/blkdebug.c | 36 ++- > > block/blklogwrites.c | 22 +- > > block/blkreplay.c | 7 +- > > block/blkverify.c | 17 +- > > block/block-backend.c | 19 +- > > block/commit.c | 7 +- > > block/crypto.c | 14 +- > > block/curl.c | 7 +- > > block/dirty-bitmap.c | 1 + > > block/file-posix.c | 79 +++--- > > block/file-win32.c | 29 +- > > block/gluster.c | 69 +++-- > > block/io.c | 12 +- > > block/iscsi.c | 36 ++- > > block/mirror.c | 19 +- > > block/nbd.c | 59 ++-- > > block/nfs.c | 7 +- > > block/nvme.c | 19 +- > > block/parallels.c | 30 +-- > > block/qapi.c | 26 +- > > block/qcow.c | 17 +- > > block/qcow2-bitmap.c | 9 +- > > block/qcow2.c | 98 +++---- > > block/qed.c | 18 +- > > block/quorum.c | 23 +- > > block/raw-format.c | 7 +- > > block/rbd.c | 29 +- > > block/replication.c | 40 ++- > > block/sheepdog.c | 73 +++-- > > block/snapshot.c | 20 +- > > block/ssh.c | 12 +- > > block/throttle-groups.c | 24 +- > > block/throttle.c | 7 +- > > block/vdi.c | 15 +- > > block/vhdx-log.c | 1 + > > block/vhdx.c | 22 +- > > block/vmdk.c | 41 ++- > > block/vpc.c | 28 +- > > block/vvfat.c | 12 +- > > block/vxhs.c | 23 +- > > blockdev.c | 252 ++++++++---------- > > blockjob.c | 8 +- > > bootdevice.c | 31 +-- > > chardev/char-socket.c | 7 +- > > chardev/char.c | 20 +- > > chardev/spice.c | 1 + > > crypto/block-luks.c | 56 ++-- > > crypto/secret.c | 17 +- > > crypto/tlssession.c | 7 +- > > dump/dump-hmp-cmds.c | 4 +- > > dump/dump.c | 151 +++++------ > > dump/win_dump.c | 29 +- > > exec.c | 21 +- > > hw/9pfs/9p-local.c | 12 +- > > hw/9pfs/9p-proxy.c | 5 +- > > hw/9pfs/9p.c | 1 + > > hw/acpi/core.c | 18 +- > > hw/acpi/cpu_hotplug.c | 2 +- > > hw/acpi/ich9.c | 30 +-- > > hw/acpi/memory_hotplug.c | 7 +- > > hw/arm/allwinner-a10.c | 27 +- > > hw/arm/armv7m.c | 52 ++-- > > hw/arm/aspeed_soc.c | 1 + > > hw/arm/bcm2835_peripherals.c | 85 +++--- > > hw/arm/bcm2836.c | 41 ++- > > hw/arm/digic.c | 22 +- > > hw/arm/fsl-imx25.c | 62 ++--- > > hw/arm/fsl-imx31.c | 57 ++-- > > hw/arm/fsl-imx6.c | 81 +++--- > > hw/arm/integratorcp.c | 7 +- > > hw/arm/msf2-soc.c | 22 +- > > hw/arm/nrf51_soc.c | 47 ++-- > > hw/arm/smmu-common.c | 7 +- > > hw/arm/smmuv3.c | 7 +- > > hw/arm/stm32f205_soc.c | 39 ++- > > hw/arm/virt.c | 2 + > > hw/arm/xlnx-versal-virt.c | 7 +- > > hw/arm/xlnx-zynqmp.c | 86 +++--- > > hw/audio/intel-hda.c | 13 +- > > hw/block/dataplane/virtio-blk.c | 1 + > > hw/block/dataplane/xen-block.c | 17 +- > > hw/block/fdc.c | 19 +- > > hw/block/onenand.c | 7 +- > > hw/block/pflash_cfi01.c | 7 +- > > hw/block/pflash_cfi02.c | 7 +- > > hw/block/vhost-user-blk.c | 6 +- > > hw/block/virtio-blk.c | 7 +- > > hw/block/xen-block.c | 119 ++++----- > > hw/char/debugcon.c | 7 +- > > hw/char/serial-pci-multi.c | 7 +- > > hw/char/serial-pci.c | 7 +- > > hw/char/virtio-serial-bus.c | 7 +- > > hw/core/bus.c | 15 +- > > hw/core/loader-fit.c | 7 +- > > hw/core/machine-hmp-cmds.c | 6 +- > > hw/core/machine.c | 21 +- > > hw/core/numa.c | 51 ++-- > > hw/core/qdev-properties-system.c | 28 +- > > hw/core/qdev-properties.c | 89 +++---- > > hw/core/qdev.c | 58 ++-- > > hw/cpu/a15mpcore.c | 7 +- > > hw/cpu/a9mpcore.c | 27 +- > > hw/cpu/arm11mpcore.c | 22 +- > > hw/cpu/core.c | 14 +- > > hw/cpu/realview_mpcore.c | 12 +- > > hw/display/bcm2835_fb.c | 6 +- > > hw/display/qxl.c | 7 +- > > hw/display/virtio-gpu-base.c | 7 +- > > hw/display/virtio-gpu-pci.c | 7 +- > > hw/display/virtio-vga.c | 7 +- > > hw/dma/bcm2835_dma.c | 6 +- > > hw/dma/xilinx_axidma.c | 22 +- > > hw/gpio/aspeed_gpio.c | 7 +- > > hw/gpio/bcm2835_gpio.c | 10 +- > > hw/i386/amd_iommu.c | 14 +- > > hw/i386/pc.c | 120 ++++----- > > hw/ide/qdev.c | 16 +- > > hw/input/virtio-input.c | 14 +- > > hw/intc/apic_common.c | 7 +- > > hw/intc/arm_gic.c | 7 +- > > hw/intc/arm_gic_kvm.c | 12 +- > > hw/intc/arm_gicv3.c | 12 +- > > hw/intc/arm_gicv3_its_kvm.c | 7 +- > > hw/intc/arm_gicv3_kvm.c | 17 +- > > hw/intc/armv7m_nvic.c | 12 +- > > hw/intc/nios2_iic.c | 6 +- > > hw/intc/pnv_xive.c | 15 +- > > hw/intc/realview_gic.c | 7 +- > > hw/intc/s390_flic_kvm.c | 9 +- > > hw/intc/spapr_xive.c | 12 +- > > hw/intc/spapr_xive_kvm.c | 55 ++-- > > hw/intc/xics.c | 28 +- > > hw/intc/xics_kvm.c | 30 +-- > > hw/intc/xics_pnv.c | 7 +- > > hw/intc/xics_spapr.c | 7 +- > > hw/intc/xive.c | 27 +- > > hw/ipack/ipack.c | 5 +- > > hw/isa/pc87312.c | 7 +- > > hw/mem/memory-device.c | 20 +- > > hw/mem/nvdimm.c | 25 +- > > hw/mem/pc-dimm.c | 23 +- > > hw/microblaze/xlnx-zynqmp-pmu.c | 12 +- > > hw/mips/cps.c | 46 ++-- > > hw/misc/bcm2835_mbox.c | 6 +- > > hw/misc/bcm2835_property.c | 10 +- > > hw/misc/ivshmem.c | 37 ++- > > hw/misc/macio/macio.c | 68 ++--- > > hw/misc/msf2-sysreg.c | 1 + > > hw/misc/tmp105.c | 7 +- > > hw/misc/tmp421.c | 7 +- > > hw/net/dp8393x.c | 7 +- > > hw/net/eepro100.c | 7 +- > > hw/net/ne2000-isa.c | 17 +- > > hw/net/xilinx_axienet.c | 22 +- > > hw/nvram/fw_cfg.c | 14 +- > > hw/nvram/nrf51_nvm.c | 7 +- > > hw/pci-bridge/gen_pcie_root_port.c | 7 +- > > hw/pci-bridge/pci_bridge_dev.c | 13 +- > > hw/pci-bridge/pci_expander_bridge.c | 7 +- > > hw/pci-bridge/pcie_pci_bridge.c | 8 +- > > hw/pci-bridge/pcie_root_port.c | 1 + > > hw/pci-host/piix.c | 7 +- > > hw/pci/pci.c | 19 +- > > hw/pci/pcie.c | 7 +- > > hw/pci/shpc.c | 14 +- > > hw/ppc/e500.c | 7 +- > > hw/ppc/mac_newworld.c | 1 + > > hw/ppc/pnv.c | 109 ++++---- > > hw/ppc/pnv_core.c | 23 +- > > hw/ppc/pnv_homer.c | 5 +- > > hw/ppc/pnv_lpc.c | 26 +- > > hw/ppc/pnv_occ.c | 5 +- > > hw/ppc/pnv_psi.c | 23 +- > > hw/ppc/spapr.c | 133 ++++----- > > hw/ppc/spapr_caps.c | 57 ++-- > > hw/ppc/spapr_cpu_core.c | 36 ++- > > hw/ppc/spapr_drc.c | 48 ++-- > > hw/ppc/spapr_irq.c | 98 +++---- > > hw/ppc/spapr_pci.c | 97 +++---- > > hw/ppc/spapr_vio.c | 12 +- > > hw/rdma/vmw/pvrdma_main.c | 1 + > > hw/riscv/riscv_hart.c | 7 +- > > hw/riscv/sifive_e.c | 7 +- > > hw/riscv/sifive_u.c | 11 +- > > hw/s390x/3270-ccw.c | 13 +- > > hw/s390x/css-bridge.c | 7 +- > > hw/s390x/css.c | 7 +- > > hw/s390x/event-facility.c | 2 +- > > hw/s390x/ipl.c | 24 +- > > hw/s390x/s390-ccw.c | 19 +- > > hw/s390x/s390-pci-bus.c | 37 ++- > > hw/s390x/s390-skeys.c | 7 +- > > hw/s390x/s390-stattrib.c | 3 +- > > hw/s390x/s390-virtio-ccw.c | 11 +- > > hw/s390x/sclp.c | 15 +- > > hw/s390x/tod-kvm.c | 14 +- > > hw/s390x/virtio-ccw-crypto.c | 7 +- > > hw/s390x/virtio-ccw-rng.c | 7 +- > > hw/s390x/virtio-ccw.c | 13 +- > > hw/scsi/esp-pci.c | 7 +- > > hw/scsi/megasas.c | 11 +- > > hw/scsi/mptsas.c | 13 +- > > hw/scsi/scsi-bus.c | 24 +- > > hw/scsi/scsi-disk.c | 8 +- > > hw/scsi/scsi-generic.c | 1 + > > hw/scsi/vhost-scsi.c | 12 +- > > hw/scsi/vhost-user-scsi.c | 7 +- > > hw/scsi/virtio-scsi.c | 7 +- > > hw/sd/milkymist-memcard.c | 11 +- > > hw/sd/sdhci-pci.c | 7 +- > > hw/sd/sdhci.c | 23 +- > > hw/sd/ssi-sd.c | 14 +- > > hw/smbios/smbios.c | 42 ++- > > hw/sparc/sun4m.c | 21 +- > > hw/sparc64/sun4u.c | 7 +- > > hw/timer/aspeed_timer.c | 6 +- > > hw/tpm/tpm_emulator.c | 8 +- > > hw/tpm/tpm_util.c | 7 +- > > hw/usb/bus.c | 37 ++- > > hw/usb/ccid-card-emulated.c | 1 + > > hw/usb/dev-network.c | 2 +- > > hw/usb/dev-serial.c | 7 +- > > hw/usb/dev-smartcard-reader.c | 14 +- > > hw/usb/dev-storage.c | 17 +- > > hw/usb/hcd-ohci-pci.c | 7 +- > > hw/usb/hcd-ohci.c | 14 +- > > hw/usb/hcd-uhci.c | 7 +- > > hw/usb/hcd-xhci.c | 13 +- > > hw/vfio/ap.c | 16 +- > > hw/vfio/ccw.c | 24 +- > > hw/vfio/common.c | 3 + > > hw/vfio/pci-quirks.c | 8 +- > > hw/vfio/pci.c | 42 ++- > > hw/vfio/platform.c | 1 + > > hw/virtio/vhost-vsock.c | 1 + > > hw/virtio/virtio-balloon.c | 35 ++- > > hw/virtio/virtio-bus.c | 17 +- > > hw/virtio/virtio-pci.c | 2 + > > hw/virtio/virtio-rng-pci.c | 7 +- > > hw/virtio/virtio-rng.c | 7 +- > > hw/virtio/virtio.c | 19 +- > > hw/watchdog/wdt_aspeed.c | 5 +- > > hw/xen/xen-backend.c | 7 +- > > hw/xen/xen-bus.c | 92 +++---- > > hw/xen/xen-host-pci-device.c | 27 +- > > hw/xen/xen_pt.c | 25 +- > > hw/xen/xen_pt_config_init.c | 20 +- > > io/dns-resolver.c | 7 +- > > io/net-listener.c | 7 +- > > iothread.c | 27 +- > > job.c | 7 +- > > memory.c | 63 ++--- > > memory_mapping.c | 7 +- > > migration/colo.c | 38 ++- > > migration/migration.c | 39 ++- > > migration/ram.c | 13 +- > > migration/rdma.c | 13 +- > > migration/savevm.c | 2 + > > migration/socket.c | 18 +- > > monitor/hmp-cmds.c | 155 ++++++----- > > monitor/misc.c | 9 +- > > monitor/qmp-cmds.c | 9 +- > > nbd/client.c | 5 + > > nbd/server.c | 5 + > > net/can/can_host.c | 7 +- > > net/dump.c | 15 +- > > net/filter-buffer.c | 15 +- > > net/filter.c | 7 +- > > net/net.c | 58 ++-- > > net/netmap.c | 7 +- > > net/slirp.c | 7 +- > > net/tap.c | 47 ++-- > > qapi/qapi-visit-core.c | 56 ++-- > > qapi/qmp-dispatch.c | 7 +- > > qapi/string-input-visitor.c | 7 +- > > qdev-monitor.c | 69 +++-- > > qga/commands-posix.c | 222 +++++++-------- > > qga/commands-win32.c | 141 +++++----- > > qga/commands.c | 12 +- > > qom/object.c | 246 ++++++++--------- > > qom/object_interfaces.c | 27 +- > > qom/qom-hmp-cmds.c | 4 +- > > qom/qom-qobject.c | 7 +- > > replication.c | 28 +- > > scsi/pr-manager-helper.c | 7 +- > > target/alpha/cpu.c | 7 +- > > target/arm/cpu.c | 7 +- > > target/arm/cpu64.c | 11 +- > > target/cris/cpu.c | 7 +- > > target/hppa/cpu.c | 7 +- > > target/i386/cpu.c | 117 ++++---- > > target/lm32/cpu.c | 7 +- > > target/m68k/cpu.c | 7 +- > > target/microblaze/cpu.c | 7 +- > > target/mips/cpu.c | 7 +- > > target/moxie/cpu.c | 7 +- > > target/nios2/cpu.c | 7 +- > > target/openrisc/cpu.c | 7 +- > > target/ppc/compat.c | 20 +- > > target/ppc/kvm.c | 14 +- > > target/ppc/translate_init.inc.c | 26 +- > > target/riscv/cpu.c | 7 +- > > target/s390x/cpu.c | 26 +- > > target/s390x/cpu_models.c | 2 + > > target/sh4/cpu.c | 7 +- > > target/sparc/cpu.c | 14 +- > > target/tilegx/cpu.c | 7 +- > > target/tricore/cpu.c | 7 +- > > target/unicore32/cpu.c | 7 +- > > target/xtensa/cpu.c | 7 +- > > tests/test-image-locking.c | 7 +- > > tpm.c | 7 +- > > trace/qmp.c | 14 +- > > ui/input-barrier.c | 7 +- > > ui/input.c | 14 +- > > ui/vnc.c | 39 ++- > > util/error.c | 30 +-- > > util/main-loop.c | 5 +- > > util/oslib-posix.c | 6 +- > > util/qemu-config.c | 29 +- > > util/qemu-option.c | 59 ++-- > > util/qemu-sockets.c | 31 +-- > > vl.c | 14 +- > > python/commit-per-subsystem.py | 204 ++++++++++++++ > > scripts/coccinelle/auto-propagated-errp.cocci | 118 ++++++++ > > 341 files changed, 3851 insertions(+), 4455 deletions(-) > > create mode 100755 python/commit-per-subsystem.py > > create mode 100644 scripts/coccinelle/auto-propagated-errp.cocci > > > > > -- > Best regards, > Vladimir _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |