The following changes since commit 5f77ef69a195098baddfdc6d189f1b4a94587378:
glib: add compatibility interface for g_strcmp0() (2014-10-16 23:02:31 +0100) are available in the git repository at: git://repo.or.cz/qemu/kevin.git tags/for-upstream for you to fetch changes up to 84ebe3755f88be4c3733e997641fafd050a58810: block: Make device model's references to BlockBackend strong (2014-10-20 14:03:51 +0200) ---------------------------------------------------------------- Block patches ---------------------------------------------------------------- Markus Armbruster (24): block: Split bdrv_new_root() off bdrv_new() block: New BlockBackend block: Connect BlockBackend to BlockDriverState block: Connect BlockBackend and DriveInfo block: Code motion to get rid of stubs/blockdev.c block: Make BlockBackend own its BlockDriverState blockdev: Eliminate drive_del() block: Eliminate bdrv_iterate(), use bdrv_next() block: Eliminate BlockDriverState member device_name[] block: Merge BlockBackend and BlockDriverState name spaces block: Eliminate DriveInfo member bdrv, use blk_by_legacy_dinfo() block: Rename BlockDriverAIOCB* to BlockAIOCB* block: Rename BlockDriverCompletionFunc to BlockCompletionFunc virtio-blk: Drop redundant VirtIOBlock member conf virtio-blk: Rename VirtIOBlkConf variables to conf hw: Convert from BlockDriverState to BlockBackend, mostly ide: Complete conversion from BlockDriverState to BlockBackend pc87312: Drop unused members of PC87312State blockdev: Drop superfluous DriveInfo member id blockdev: Fix blockdev-add not to create DriveInfo block/qapi: Convert qmp_query_block() to BlockBackend blockdev: Convert qmp_eject(), qmp_change_blockdev() to BlockBackend block: Lift device model API into BlockBackend block: Make device model's references to BlockBackend strong Max Reitz (1): nbd: Fix filename generation Tony Breeds (2): block/raw-posix: Fix disk corruption in try_fiemap block/raw-posix: use seek_hole ahead of fiemap Zhang Haoyu (1): qcow2: fix leak of Qcow2DiscardRegion in update_refcount_discard block-migration.c | 44 ++- block.c | 390 +++++++------------ block/Makefile.objs | 2 +- block/archipelago.c | 28 +- block/backup.c | 2 +- block/blkdebug.c | 18 +- block/blkverify.c | 18 +- block/block-backend.c | 631 +++++++++++++++++++++++++++++++ block/commit.c | 2 +- block/curl.c | 6 +- block/iscsi.c | 10 +- block/linux-aio.c | 8 +- block/mirror.c | 9 +- block/nbd.c | 44 ++- block/null.c | 34 +- block/qapi.c | 27 +- block/qcow.c | 4 +- block/qcow2-refcount.c | 1 + block/qcow2.c | 4 +- block/qed-gencb.c | 4 +- block/qed-table.c | 10 +- block/qed.c | 46 +-- block/qed.h | 12 +- block/quorum.c | 42 +- block/raw-aio.h | 8 +- block/raw-posix.c | 38 +- block/raw-win32.c | 16 +- block/raw_bsd.c | 8 +- block/rbd.c | 56 +-- block/sheepdog.c | 4 +- block/stream.c | 2 +- block/vdi.c | 2 +- block/vhdx.c | 2 +- block/vmdk.c | 4 +- block/vpc.c | 2 +- block/vvfat.c | 4 +- block/win32-aio.c | 6 +- blockdev.c | 197 ++++------ blockjob.c | 7 +- device-hotplug.c | 3 +- dma-helpers.c | 67 ++-- docs/blkdebug.txt | 8 +- hw/arm/collie.c | 10 +- hw/arm/gumstix.c | 6 +- hw/arm/highbank.c | 2 +- hw/arm/mainstone.c | 8 +- hw/arm/musicpal.c | 13 +- hw/arm/nseries.c | 7 +- hw/arm/omap1.c | 4 +- hw/arm/omap2.c | 4 +- hw/arm/omap_sx1.c | 10 +- hw/arm/pxa2xx.c | 7 +- hw/arm/realview.c | 2 +- hw/arm/spitz.c | 6 +- hw/arm/tosa.c | 3 +- hw/arm/versatilepb.c | 5 +- hw/arm/vexpress.c | 5 +- hw/arm/virt.c | 4 +- hw/arm/xilinx_zynq.c | 5 +- hw/arm/z2.c | 8 +- hw/block/block.c | 23 +- hw/block/dataplane/virtio-blk.c | 35 +- hw/block/dataplane/virtio-blk.h | 2 +- hw/block/fdc.c | 74 ++-- hw/block/hd-geometry.c | 24 +- hw/block/m25p80.c | 31 +- hw/block/nand.c | 50 +-- hw/block/nvme.c | 19 +- hw/block/nvme.h | 2 +- hw/block/onenand.c | 67 ++-- hw/block/pflash_cfi01.c | 24 +- hw/block/pflash_cfi02.c | 24 +- hw/block/virtio-blk.c | 149 ++++---- hw/block/xen_disk.c | 72 ++-- hw/core/qdev-properties-system.c | 26 +- hw/core/qdev-properties.c | 2 +- hw/cris/axis_dev88.c | 4 +- hw/display/tc6393xb.c | 4 +- hw/i386/pc.c | 2 +- hw/i386/pc_piix.c | 2 +- hw/i386/pc_sysfw.c | 10 +- hw/i386/xen/xen_platform.c | 5 +- hw/ide/ahci.c | 33 +- hw/ide/ahci.h | 2 +- hw/ide/atapi.c | 33 +- hw/ide/cmd646.c | 2 +- hw/ide/core.c | 198 +++++----- hw/ide/ich.c | 2 +- hw/ide/internal.h | 16 +- hw/ide/isa.c | 2 +- hw/ide/macio.c | 50 +-- hw/ide/microdrive.c | 4 +- hw/ide/mmio.c | 2 +- hw/ide/pci.c | 6 +- hw/ide/pci.h | 2 +- hw/ide/piix.c | 11 +- hw/ide/qdev.c | 13 +- hw/ide/via.c | 2 +- hw/isa/pc87312.c | 7 +- hw/lm32/lm32_boards.c | 14 +- hw/lm32/milkymist.c | 8 +- hw/microblaze/petalogix_ml605_mmu.c | 6 +- hw/microblaze/petalogix_s3adsp1800_mmu.c | 6 +- hw/mips/mips_fulong2e.c | 2 +- hw/mips/mips_jazz.c | 2 +- hw/mips/mips_malta.c | 8 +- hw/mips/mips_r4k.c | 6 +- hw/nvram/spapr_nvram.c | 17 +- hw/pci/pci-hotplug-old.c | 11 +- hw/ppc/mac.h | 2 +- hw/ppc/mac_newworld.c | 2 +- hw/ppc/mac_oldworld.c | 2 +- hw/ppc/ppc405_boards.c | 27 +- hw/ppc/prep.c | 2 +- hw/ppc/spapr.c | 4 +- hw/ppc/virtex_ml507.c | 6 +- hw/s390x/s390-virtio-bus.c | 2 +- hw/s390x/s390-virtio.c | 2 +- hw/s390x/virtio-ccw.c | 2 +- hw/scsi/megasas.c | 15 +- hw/scsi/scsi-bus.c | 15 +- hw/scsi/scsi-disk.c | 184 ++++----- hw/scsi/scsi-generic.c | 37 +- hw/scsi/virtio-scsi-dataplane.c | 3 +- hw/scsi/virtio-scsi.c | 15 +- hw/sd/milkymist-memcard.c | 7 +- hw/sd/omap_mmc.c | 8 +- hw/sd/pl181.c | 3 +- hw/sd/pxa2xx_mmci.c | 4 +- hw/sd/sd.c | 60 +-- hw/sd/sdhci.c | 3 +- hw/sd/ssi-sd.c | 3 +- hw/sh4/r2d.c | 6 +- hw/sparc/sun4m.c | 2 +- hw/sparc64/sun4u.c | 2 +- hw/tpm/tpm_tis.c | 2 +- hw/tricore/tricore_testboard.c | 2 +- hw/usb/dev-storage.c | 19 +- hw/virtio/virtio-pci.c | 2 +- hw/xen/xen_devconfig.c | 1 + hw/xenpv/xen_machine_pv.c | 2 +- hw/xtensa/xtfpga.c | 5 +- include/block/aio.h | 14 +- include/block/block.h | 90 ++--- include/block/block_int.h | 44 ++- include/block/blockjob.h | 4 +- include/block/qapi.h | 3 - include/block/thread-pool.h | 4 +- include/hw/arm/omap.h | 4 +- include/hw/arm/pxa.h | 2 +- include/hw/block/block.h | 6 +- include/hw/block/flash.h | 6 +- include/hw/isa/pc87312.h | 3 - include/hw/qdev-properties.h | 8 +- include/hw/scsi/scsi.h | 6 +- include/hw/sd.h | 2 +- include/hw/virtio/virtio-blk.h | 10 +- include/monitor/monitor.h | 4 +- include/qemu/typedefs.h | 1 + include/sysemu/block-backend.h | 142 +++++++ include/sysemu/blockdev.h | 14 +- include/sysemu/dma.h | 30 +- monitor.c | 38 +- qemu-img.c | 150 ++++---- qemu-io.c | 15 +- qemu-nbd.c | 8 +- stubs/Makefile.objs | 1 - stubs/blockdev.c | 12 - tests/test-thread-pool.c | 2 +- thread-pool.c | 10 +- trace-events | 8 +- 171 files changed, 2412 insertions(+), 1735 deletions(-) create mode 100644 block/block-backend.c create mode 100644 include/sysemu/block-backend.h delete mode 100644 stubs/blockdev.c