Re: [PULL 00/18] Block patches

2022-06-15 Thread Richard Henderson

On 6/15/22 08:51, Stefan Hajnoczi wrote:

The following changes since commit 8e6c70b9d4a1b1f3011805947925cfdb31642f7f:

   Merge tag 'kraxel-20220614-pull-request' of git://git.kraxel.org/qemu into 
staging (2022-06-14 06:21:46 -0700)

are available in the Git repository at:

   https://gitlab.com/stefanha/qemu.git tags/block-pull-request

for you to fetch changes up to 99b969fbe105117f5af6060d3afef40ca39cc9c1:

   linux-aio: explain why max batch is checked in laio_io_unplug() (2022-06-15 
16:43:42 +0100)


Pull request

This pull request includes an important aio=native I/O stall fix, the
experimental vifo-user server, the io_uring_register_ring_fd() optimization for
aio=io_uring, and an update to Vladimir Sementsov-Ogievskiy's maintainership
details.


Applied, thanks.  Please update https://wiki.qemu.org/ChangeLog/7.1 as 
appropriate.


r~






Jagannathan Raman (14):
   qdev: unplug blocker for devices
   remote/machine: add HotplugHandler for remote machine
   remote/machine: add vfio-user property
   vfio-user: build library
   vfio-user: define vfio-user-server object
   vfio-user: instantiate vfio-user context
   vfio-user: find and init PCI device
   vfio-user: run vfio-user context
   vfio-user: handle PCI config space accesses
   vfio-user: IOMMU support for remote device
   vfio-user: handle DMA mappings
   vfio-user: handle PCI BAR accesses
   vfio-user: handle device interrupts
   vfio-user: handle reset of remote device

Sam Li (1):
   Use io_uring_register_ring_fd() to skip fd operations

Stefan Hajnoczi (2):
   linux-aio: fix unbalanced plugged counter in laio_io_unplug()
   linux-aio: explain why max batch is checked in laio_io_unplug()

Vladimir Sementsov-Ogievskiy (1):
   MAINTAINERS: update Vladimir's address and repositories

  MAINTAINERS |  27 +-
  meson_options.txt   |   2 +
  qapi/misc.json  |  31 +
  qapi/qom.json   |  20 +-
  configure   |  17 +
  meson.build |  24 +-
  include/exec/memory.h   |   3 +
  include/hw/pci/msi.h|   1 +
  include/hw/pci/msix.h   |   1 +
  include/hw/pci/pci.h|  13 +
  include/hw/qdev-core.h  |  29 +
  include/hw/remote/iommu.h   |  40 +
  include/hw/remote/machine.h |   4 +
  include/hw/remote/vfio-user-obj.h   |   6 +
  block/io_uring.c|  12 +-
  block/linux-aio.c   |  10 +-
  hw/core/qdev.c  |  24 +
  hw/pci/msi.c|  49 +-
  hw/pci/msix.c   |  35 +-
  hw/pci/pci.c|  13 +
  hw/remote/iommu.c   | 131 
  hw/remote/machine.c |  88 ++-
  hw/remote/vfio-user-obj.c   | 958 
  softmmu/physmem.c   |   4 +-
  softmmu/qdev-monitor.c  |   4 +
  stubs/vfio-user-obj.c   |   6 +
  tests/qtest/fuzz/generic_fuzz.c |   9 +-
  .gitlab-ci.d/buildtest.yml  |   1 +
  .gitmodules |   3 +
  Kconfig.host|   4 +
  hw/remote/Kconfig   |   4 +
  hw/remote/meson.build   |   4 +
  hw/remote/trace-events  |  11 +
  scripts/meson-buildoptions.sh   |   4 +
  stubs/meson.build   |   1 +
  subprojects/libvfio-user|   1 +
  tests/docker/dockerfiles/centos8.docker |   2 +
  37 files changed, 1565 insertions(+), 31 deletions(-)
  create mode 100644 include/hw/remote/iommu.h
  create mode 100644 include/hw/remote/vfio-user-obj.h
  create mode 100644 hw/remote/iommu.c
  create mode 100644 hw/remote/vfio-user-obj.c
  create mode 100644 stubs/vfio-user-obj.c
  create mode 16 subprojects/libvfio-user






[PULL 00/18] Block patches

2022-06-15 Thread Stefan Hajnoczi
The following changes since commit 8e6c70b9d4a1b1f3011805947925cfdb31642f7f:

  Merge tag 'kraxel-20220614-pull-request' of git://git.kraxel.org/qemu into 
staging (2022-06-14 06:21:46 -0700)

are available in the Git repository at:

  https://gitlab.com/stefanha/qemu.git tags/block-pull-request

for you to fetch changes up to 99b969fbe105117f5af6060d3afef40ca39cc9c1:

  linux-aio: explain why max batch is checked in laio_io_unplug() (2022-06-15 
16:43:42 +0100)


Pull request

This pull request includes an important aio=native I/O stall fix, the
experimental vifo-user server, the io_uring_register_ring_fd() optimization for
aio=io_uring, and an update to Vladimir Sementsov-Ogievskiy's maintainership
details.



Jagannathan Raman (14):
  qdev: unplug blocker for devices
  remote/machine: add HotplugHandler for remote machine
  remote/machine: add vfio-user property
  vfio-user: build library
  vfio-user: define vfio-user-server object
  vfio-user: instantiate vfio-user context
  vfio-user: find and init PCI device
  vfio-user: run vfio-user context
  vfio-user: handle PCI config space accesses
  vfio-user: IOMMU support for remote device
  vfio-user: handle DMA mappings
  vfio-user: handle PCI BAR accesses
  vfio-user: handle device interrupts
  vfio-user: handle reset of remote device

Sam Li (1):
  Use io_uring_register_ring_fd() to skip fd operations

Stefan Hajnoczi (2):
  linux-aio: fix unbalanced plugged counter in laio_io_unplug()
  linux-aio: explain why max batch is checked in laio_io_unplug()

Vladimir Sementsov-Ogievskiy (1):
  MAINTAINERS: update Vladimir's address and repositories

 MAINTAINERS |  27 +-
 meson_options.txt   |   2 +
 qapi/misc.json  |  31 +
 qapi/qom.json   |  20 +-
 configure   |  17 +
 meson.build |  24 +-
 include/exec/memory.h   |   3 +
 include/hw/pci/msi.h|   1 +
 include/hw/pci/msix.h   |   1 +
 include/hw/pci/pci.h|  13 +
 include/hw/qdev-core.h  |  29 +
 include/hw/remote/iommu.h   |  40 +
 include/hw/remote/machine.h |   4 +
 include/hw/remote/vfio-user-obj.h   |   6 +
 block/io_uring.c|  12 +-
 block/linux-aio.c   |  10 +-
 hw/core/qdev.c  |  24 +
 hw/pci/msi.c|  49 +-
 hw/pci/msix.c   |  35 +-
 hw/pci/pci.c|  13 +
 hw/remote/iommu.c   | 131 
 hw/remote/machine.c |  88 ++-
 hw/remote/vfio-user-obj.c   | 958 
 softmmu/physmem.c   |   4 +-
 softmmu/qdev-monitor.c  |   4 +
 stubs/vfio-user-obj.c   |   6 +
 tests/qtest/fuzz/generic_fuzz.c |   9 +-
 .gitlab-ci.d/buildtest.yml  |   1 +
 .gitmodules |   3 +
 Kconfig.host|   4 +
 hw/remote/Kconfig   |   4 +
 hw/remote/meson.build   |   4 +
 hw/remote/trace-events  |  11 +
 scripts/meson-buildoptions.sh   |   4 +
 stubs/meson.build   |   1 +
 subprojects/libvfio-user|   1 +
 tests/docker/dockerfiles/centos8.docker |   2 +
 37 files changed, 1565 insertions(+), 31 deletions(-)
 create mode 100644 include/hw/remote/iommu.h
 create mode 100644 include/hw/remote/vfio-user-obj.h
 create mode 100644 hw/remote/iommu.c
 create mode 100644 hw/remote/vfio-user-obj.c
 create mode 100644 stubs/vfio-user-obj.c
 create mode 16 subprojects/libvfio-user

-- 
2.36.1




Re: [PULL 00/18] Block patches

2020-06-24 Thread Thomas Huth

On 24/06/2020 09.27, Max Reitz wrote:

On 23.06.20 14:55, Peter Maydell wrote:

On Mon, 22 Jun 2020 at 16:11, Max Reitz  wrote:


The following changes since commit bae31bfa48b9caecee25da3d5333901a126a06b4:

   Merge remote-tracking branch 
'remotes/kraxel/tags/audio-20200619-pull-request' into staging (2020-06-19 
22:56:59 +0100)

are available in the Git repository at:

   https://github.com/XanClic/qemu.git tags/pull-block-2020-06-22

for you to fetch changes up to 74c55e4142a7bb835c38d3770c74210cbb1e4fab:

   iotests: don't test qcow2.py inside 291 (2020-06-22 16:05:23 +0200)


Block patches:
- Support modifying a LUKS-encrypted image's keyslots
- iotest fixes




Hi; I see various iotest failures, different things on
PPC64 Linux, OpenBSD and FreeBSD, and on an AArch32 build
that happens to not have optional crypto libs installed.


OK.  Sorry.  None of this looks easily fixable, so I suppose I’ll have
to drop everything but the last two patches for now.


At least the problem with "seq" in test 293 should be easy to fix, since 
we're requiring bash for the iotests. See e.g. commit 30edd9fa50e86fbf 
as an example.


 Thomas





Re: [PULL 00/18] Block patches

2020-06-24 Thread Max Reitz
On 23.06.20 14:55, Peter Maydell wrote:
> On Mon, 22 Jun 2020 at 16:11, Max Reitz  wrote:
>>
>> The following changes since commit bae31bfa48b9caecee25da3d5333901a126a06b4:
>>
>>   Merge remote-tracking branch 
>> 'remotes/kraxel/tags/audio-20200619-pull-request' into staging (2020-06-19 
>> 22:56:59 +0100)
>>
>> are available in the Git repository at:
>>
>>   https://github.com/XanClic/qemu.git tags/pull-block-2020-06-22
>>
>> for you to fetch changes up to 74c55e4142a7bb835c38d3770c74210cbb1e4fab:
>>
>>   iotests: don't test qcow2.py inside 291 (2020-06-22 16:05:23 +0200)
>>
>> 
>> Block patches:
>> - Support modifying a LUKS-encrypted image's keyslots
>> - iotest fixes
>>
>> 
> 
> Hi; I see various iotest failures, different things on
> PPC64 Linux, OpenBSD and FreeBSD, and on an AArch32 build
> that happens to not have optional crypto libs installed.

OK.  Sorry.  None of this looks easily fixable, so I suppose I’ll have
to drop everything but the last two patches for now.

> On PPC64 Linux, lots of iotests fail like this:
> 
>   TESTiotest-qcow2: 001 [fail]
> QEMU  --
> "/home/pm215/qemu/build/all/tests/qemu-iotests/../../ppc64-softmmu/qemu-system-ppc64"
> -nodefaults -display none -accel qtest
> QEMU_IMG  -- 
> "/home/pm215/qemu/build/all/tests/qemu-iotests/../../qemu-img"
> QEMU_IO   --
> "/home/pm215/qemu/build/all/tests/qemu-iotests/../../qemu-io"  --cache
> writeback --aio threads -f qcow2
> QEMU_NBD  -- 
> "/home/pm215/qemu/build/all/tests/qemu-iotests/../../qemu-nbd"
> IMGFMT-- qcow2 (compat=1.1)
> IMGPROTO  -- file
> PLATFORM  -- Linux/ppc64 gcc1-power7 3.10.0-862.14.4.el7.ppc64
> TEST_DIR  -- /home/pm215/qemu/build/all/tests/qemu-iotests/scratch
> SOCK_DIR  -- /tmp/tmp.vvBdnkatyZ
> SOCKET_SCM_HELPER --
> /home/pm215/qemu/build/all/tests/qemu-iotests/socket_scm_helper
> 
> --- /home/pm215/qemu/tests/qemu-iotests/001.out 2015-04-08
> 18:43:24.908449234 +
> +++ /home/pm215/qemu/build/all/tests/qemu-iotests/001.out.bad
> 2020-06-23 10:42:29.262626202 +
> @@ -1,5 +1,6 @@
>  QA output created by 001
> -Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=134217728
> +./common.filter: line 128: readarray: -d: invalid option
> +readarray: usage: readarray [-n count] [-O origin] [-s count] [-t]
> [-u fd] [-C callback] [-c quantum] [array]
> 
>  == reading whole image ==
>  read 134217728/134217728 bytes at offset 0
>   TESTiotest-qcow2: 002 [fail]
> QEMU  --
> "/home/pm215/qemu/build/all/tests/qemu-iotests/../../ppc64-softmmu/qemu-system-ppc64"
> -nodefaults -display none -accel qtest
> QEMU_IMG  -- 
> "/home/pm215/qemu/build/all/tests/qemu-iotests/../../qemu-img"
> QEMU_IO   --
> "/home/pm215/qemu/build/all/tests/qemu-iotests/../../qemu-io"  --cache
> writeback --aio threads -f qcow2
> QEMU_NBD  -- 
> "/home/pm215/qemu/build/all/tests/qemu-iotests/../../qemu-nbd"
> IMGFMT-- qcow2 (compat=1.1)
> IMGPROTO  -- file
> PLATFORM  -- Linux/ppc64 gcc1-power7 3.10.0-862.14.4.el7.ppc64
> TEST_DIR  -- /home/pm215/qemu/build/all/tests/qemu-iotests/scratch
> SOCK_DIR  -- /tmp/tmp.vvBdnkatyZ
> SOCKET_SCM_HELPER --
> /home/pm215/qemu/build/all/tests/qemu-iotests/socket_scm_helper
> 
> Looks like you're trying to use a readarray option that doesn't
> exist (maybe only exists in newer shells?)

Yes, I am.  Well, that’s a real shame. :/

I wasn’t aware that readarray’s -d option was only introduced at some
later point.  Looks like that happened in 4.4, which was only released
2016.  So that’s probably too new indeed.

> iotests failures on aarch32 which happens to not have some
> optional crypto lib dependency installed I guess; these
> iotests ought to be made to skip if the functionality they're
> testing isn't compiled into this QEMU:

Right.  Maxim, can you do that?

>   TESTiotest-qcow2: 293 [fail]
> QEMU  --
> "/home/peter.maydell/qemu/build/all-a32/tests/qemu-iotests/../../aarch64-softmmu/qemu-system-aarch64"
> -nodefaults -display none -machine virt -accel qtest
> QEMU_IMG  --
> "/home/peter.maydell/qemu/build/all-a32/tests/qemu-iotests/../../qemu-img"
> QEMU_IO   --
> "/home/peter.maydell/qemu/build/all-a32/tests/qemu-iotests/../../qemu-io"
>  --cache writeback --aio threads -f qcow2
> QEMU_NBD  --
> "/home/peter.maydell/qemu/build/all-a32/tests/qemu-iotests/../../qemu-nbd"
> IMGFMT-- qcow2 (compat=1.1)
> IMGPROTO  -- file
> PLATFORM  -- Linux/aarch64 mustang-maydell 4.15.0-101-generic
> TEST_DIR  --
> /home/peter.maydell/qemu/build/all-a32/tests/qemu-iotests/scratch
> SOCK_DIR  -- /tmp/tmp.tjBWiNDvED
> SOCKET_SCM_HELPER --
> /home/peter.maydell/qemu/build/all-a32/tests/qemu-iotests/socket_scm_helper
> 
> --- /home/peter.maydell/qemu/tests/qemu-iotests/293.out 2020-06-23
> 10:38:50.091867725 +
> +++ 

Re: [PULL 00/18] Block patches

2020-06-23 Thread Peter Maydell
On Mon, 22 Jun 2020 at 16:11, Max Reitz  wrote:
>
> The following changes since commit bae31bfa48b9caecee25da3d5333901a126a06b4:
>
>   Merge remote-tracking branch 
> 'remotes/kraxel/tags/audio-20200619-pull-request' into staging (2020-06-19 
> 22:56:59 +0100)
>
> are available in the Git repository at:
>
>   https://github.com/XanClic/qemu.git tags/pull-block-2020-06-22
>
> for you to fetch changes up to 74c55e4142a7bb835c38d3770c74210cbb1e4fab:
>
>   iotests: don't test qcow2.py inside 291 (2020-06-22 16:05:23 +0200)
>
> 
> Block patches:
> - Support modifying a LUKS-encrypted image's keyslots
> - iotest fixes
>
> 

Hi; I see various iotest failures, different things on
PPC64 Linux, OpenBSD and FreeBSD, and on an AArch32 build
that happens to not have optional crypto libs installed.

On PPC64 Linux, lots of iotests fail like this:

  TESTiotest-qcow2: 001 [fail]
QEMU  --
"/home/pm215/qemu/build/all/tests/qemu-iotests/../../ppc64-softmmu/qemu-system-ppc64"
-nodefaults -display none -accel qtest
QEMU_IMG  -- "/home/pm215/qemu/build/all/tests/qemu-iotests/../../qemu-img"
QEMU_IO   --
"/home/pm215/qemu/build/all/tests/qemu-iotests/../../qemu-io"  --cache
writeback --aio threads -f qcow2
QEMU_NBD  -- "/home/pm215/qemu/build/all/tests/qemu-iotests/../../qemu-nbd"
IMGFMT-- qcow2 (compat=1.1)
IMGPROTO  -- file
PLATFORM  -- Linux/ppc64 gcc1-power7 3.10.0-862.14.4.el7.ppc64
TEST_DIR  -- /home/pm215/qemu/build/all/tests/qemu-iotests/scratch
SOCK_DIR  -- /tmp/tmp.vvBdnkatyZ
SOCKET_SCM_HELPER --
/home/pm215/qemu/build/all/tests/qemu-iotests/socket_scm_helper

--- /home/pm215/qemu/tests/qemu-iotests/001.out 2015-04-08
18:43:24.908449234 +
+++ /home/pm215/qemu/build/all/tests/qemu-iotests/001.out.bad
2020-06-23 10:42:29.262626202 +
@@ -1,5 +1,6 @@
 QA output created by 001
-Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=134217728
+./common.filter: line 128: readarray: -d: invalid option
+readarray: usage: readarray [-n count] [-O origin] [-s count] [-t]
[-u fd] [-C callback] [-c quantum] [array]

 == reading whole image ==
 read 134217728/134217728 bytes at offset 0
  TESTiotest-qcow2: 002 [fail]
QEMU  --
"/home/pm215/qemu/build/all/tests/qemu-iotests/../../ppc64-softmmu/qemu-system-ppc64"
-nodefaults -display none -accel qtest
QEMU_IMG  -- "/home/pm215/qemu/build/all/tests/qemu-iotests/../../qemu-img"
QEMU_IO   --
"/home/pm215/qemu/build/all/tests/qemu-iotests/../../qemu-io"  --cache
writeback --aio threads -f qcow2
QEMU_NBD  -- "/home/pm215/qemu/build/all/tests/qemu-iotests/../../qemu-nbd"
IMGFMT-- qcow2 (compat=1.1)
IMGPROTO  -- file
PLATFORM  -- Linux/ppc64 gcc1-power7 3.10.0-862.14.4.el7.ppc64
TEST_DIR  -- /home/pm215/qemu/build/all/tests/qemu-iotests/scratch
SOCK_DIR  -- /tmp/tmp.vvBdnkatyZ
SOCKET_SCM_HELPER --
/home/pm215/qemu/build/all/tests/qemu-iotests/socket_scm_helper

Looks like you're trying to use a readarray option that doesn't
exist (maybe only exists in newer shells?)

iotests failures on aarch32 which happens to not have some
optional crypto lib dependency installed I guess; these
iotests ought to be made to skip if the functionality they're
testing isn't compiled into this QEMU:

  TESTiotest-qcow2: 293 [fail]
QEMU  --
"/home/peter.maydell/qemu/build/all-a32/tests/qemu-iotests/../../aarch64-softmmu/qemu-system-aarch64"
-nodefaults -display none -machine virt -accel qtest
QEMU_IMG  --
"/home/peter.maydell/qemu/build/all-a32/tests/qemu-iotests/../../qemu-img"
QEMU_IO   --
"/home/peter.maydell/qemu/build/all-a32/tests/qemu-iotests/../../qemu-io"
 --cache writeback --aio threads -f qcow2
QEMU_NBD  --
"/home/peter.maydell/qemu/build/all-a32/tests/qemu-iotests/../../qemu-nbd"
IMGFMT-- qcow2 (compat=1.1)
IMGPROTO  -- file
PLATFORM  -- Linux/aarch64 mustang-maydell 4.15.0-101-generic
TEST_DIR  --
/home/peter.maydell/qemu/build/all-a32/tests/qemu-iotests/scratch
SOCK_DIR  -- /tmp/tmp.tjBWiNDvED
SOCKET_SCM_HELPER --
/home/peter.maydell/qemu/build/all-a32/tests/qemu-iotests/socket_scm_helper

--- /home/peter.maydell/qemu/tests/qemu-iotests/293.out 2020-06-23
10:38:50.091867725 +
+++ /home/peter.maydell/qemu/build/all-a32/tests/qemu-iotests/293.out.bad
  2020-06-23 10:59:09.027627162 +
@@ -1,5 +1,6 @@
 QA output created by 293
 == creating a test image ==
+qemu-img: TEST_DIR/t.IMGFMT: No crypto library supporting PBKDF in
this build: Function not implemented
 Formatting 'TEST_DIR/t.IMGFMT', fmt=IMGFMT size=33554432

 == test that key 0 opens the image ==
@@ -7,10 +8,15 @@
 4 KiB, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)

 == adding a password to slot 4 ==
+qemu-img: Can't amend encryption options - encryption not present
 == adding a password to slot 1 ==
+qemu-img: Can't amend encryption options - encryption not 

Re: [PULL 00/18] Block patches

2020-06-22 Thread no-reply
Patchew URL: https://patchew.org/QEMU/20200622151059.921191-1-mre...@redhat.com/



Hi,

This series seems to have some coding style problems. See output below for
more information:

Subject: [PULL 00/18] Block patches
Type: series
Message-id: 20200622151059.921191-1-mre...@redhat.com

=== TEST SCRIPT BEGIN ===
#!/bin/bash
git rev-parse base > /dev/null || exit 0
git config --local diff.renamelimit 0
git config --local diff.renames True
git config --local diff.algorithm histogram
./scripts/checkpatch.pl --mailback base..
=== TEST SCRIPT END ===

Switched to a new branch 'test'
3170989 iotests: don't test qcow2.py inside 291
04ade1c iotests: Fix 051 output after qdev_init_nofail() removal
e126517 iotests: add tests for blockdev-amend
04e2dc4 block/qcow2: implement blockdev-amend
4e43879 block/crypto: implement blockdev-amend
9207247 block/core: add generic infrastructure for x-blockdev-amend qmp command
5da1c75 iotests: qemu-img tests for luks key management
7a61c0c block/qcow2: extend qemu-img amend interface with crypto options
91d3523 block/crypto: implement the encryption key management
b87419a block/crypto: rename two functions
204e824 block/amend: refactor qcow2 amend options
6264ccb block/amend: separate amend and create options for qemu-img
52f8343 block/amend: add 'force' option
61029e2 qcrypto/luks: implement encryption key management
4ce359d qcrypto/core: add generic infrastructure for crypto options amendment
555e09e block/block-copy: block_copy_dirty_clusters: fix failure check
3de5cab iotests: filter few more luks specific create options
ad75eea iotests: Make _filter_img_create more active

=== OUTPUT BEGIN ===
1/18 Checking commit ad75eea3d2b2 (iotests: Make _filter_img_create more active)
2/18 Checking commit 3de5cab58b52 (iotests: filter few more luks specific 
create options)
3/18 Checking commit 555e09eaabd5 (block/block-copy: block_copy_dirty_clusters: 
fix failure check)
4/18 Checking commit 4ce359d028ff (qcrypto/core: add generic infrastructure for 
crypto options amendment)
5/18 Checking commit 61029e241398 (qcrypto/luks: implement encryption key 
management)
6/18 Checking commit 52f83435e0e8 (block/amend: add 'force' option)
7/18 Checking commit 6264ccb96333 (block/amend: separate amend and create 
options for qemu-img)
ERROR: Macros with multiple statements should be enclosed in a do - while loop
#34: FILE: block/qcow2.c:5652:
+#define QCOW_COMMON_OPTIONS \
+{   \
+.name = BLOCK_OPT_SIZE, \
+.type = QEMU_OPT_SIZE,  \
+.help = "Virtual disk size" \
+},  \
+{   \
+.name = BLOCK_OPT_COMPAT_LEVEL, \
+.type = QEMU_OPT_STRING,\
+.help = "Compatibility level (v2 [0.10] or v3 [1.1])"   \
+},  \
+{   \
+.name = BLOCK_OPT_BACKING_FILE, \
+.type = QEMU_OPT_STRING,\
+.help = "File name of a base image" \
+},  \
+{   \
+.name = BLOCK_OPT_BACKING_FMT,  \
+.type = QEMU_OPT_STRING,\
+.help = "Image format of the base image"\
+},  \
+{   \
+.name = BLOCK_OPT_DATA_FILE,\
+.type = QEMU_OPT_STRING,\
+.help = "File name of an external data file"\
+},  \
+{   \
+.name = BLOCK_OPT_DATA_FILE_RAW,\
+.type = QEMU_OPT_BOOL,  \
+.help = "The external data file must stay valid "   \
+"as a raw image"\
+},  \
+{   \
+.name = BLOCK_OPT_ENCRYPT,  \
+.type = QEMU_OPT_BOOL,  \
+.help = "E

[PULL 00/18] Block patches

2020-06-22 Thread Max Reitz
The following changes since commit bae31bfa48b9caecee25da3d5333901a126a06b4:

  Merge remote-tracking branch 
'remotes/kraxel/tags/audio-20200619-pull-request' into staging (2020-06-19 
22:56:59 +0100)

are available in the Git repository at:

  https://github.com/XanClic/qemu.git tags/pull-block-2020-06-22

for you to fetch changes up to 74c55e4142a7bb835c38d3770c74210cbb1e4fab:

  iotests: don't test qcow2.py inside 291 (2020-06-22 16:05:23 +0200)


Block patches:
- Support modifying a LUKS-encrypted image's keyslots
- iotest fixes


Max Reitz (1):
  iotests: Make _filter_img_create more active

Maxim Levitsky (14):
  iotests: filter few more luks specific create options
  qcrypto/core: add generic infrastructure for crypto options amendment
  qcrypto/luks: implement encryption key management
  block/amend: add 'force' option
  block/amend: separate amend and create options for qemu-img
  block/amend: refactor qcow2 amend options
  block/crypto: rename two functions
  block/crypto: implement the encryption key management
  block/qcow2: extend qemu-img amend interface with crypto options
  iotests: qemu-img tests for luks key management
  block/core: add generic infrastructure for x-blockdev-amend qmp
command
  block/crypto: implement blockdev-amend
  block/qcow2: implement blockdev-amend
  iotests: add tests for blockdev-amend

Philippe Mathieu-Daudé (1):
  iotests: Fix 051 output after qdev_init_nofail() removal

Vladimir Sementsov-Ogievskiy (2):
  block/block-copy: block_copy_dirty_clusters: fix failure check
  iotests: don't test qcow2.py inside 291

 docs/tools/qemu-img.rst  |   5 +-
 qapi/block-core.json |  68 +
 qapi/crypto.json |  73 +-
 qapi/job.json|   4 +-
 block/crypto.h   |  37 +++
 crypto/blockpriv.h   |   8 +
 include/block/block.h|   1 +
 include/block/block_int.h|  24 +-
 include/crypto/block.h   |  22 ++
 block.c  |   4 +-
 block/amend.c| 113 +
 block/block-copy.c   |   4 +-
 block/crypto.c   | 206 +--
 block/qcow2.c| 332 +---
 crypto/block-luks.c  | 416 ++-
 crypto/block.c   |  29 +++
 qemu-img.c   |  44 +++-
 block/Makefile.objs  |   2 +-
 qemu-img-cmds.hx |   4 +-
 tests/qemu-iotests/049.out   | 102 
 tests/qemu-iotests/051.pc.out|   4 +-
 tests/qemu-iotests/061.out   |  12 +-
 tests/qemu-iotests/082.out   | 185 --
 tests/qemu-iotests/085.out   |  38 +--
 tests/qemu-iotests/087.out   |   6 +-
 tests/qemu-iotests/112.out   |   2 +-
 tests/qemu-iotests/134.out   |   2 +-
 tests/qemu-iotests/141   |   2 +-
 tests/qemu-iotests/144.out   |   4 +-
 tests/qemu-iotests/153   |   9 +-
 tests/qemu-iotests/158.out   |   4 +-
 tests/qemu-iotests/182.out   |   2 +-
 tests/qemu-iotests/185.out   |   8 +-
 tests/qemu-iotests/188.out   |   2 +-
 tests/qemu-iotests/189.out   |   4 +-
 tests/qemu-iotests/198.out   |   4 +-
 tests/qemu-iotests/255.out   |   8 +-
 tests/qemu-iotests/263.out   |   4 +-
 tests/qemu-iotests/274.out   |  46 ++--
 tests/qemu-iotests/280.out   |   2 +-
 tests/qemu-iotests/284.out   |   6 +-
 tests/qemu-iotests/291   |   4 -
 tests/qemu-iotests/291.out   |  33 ---
 tests/qemu-iotests/293   | 207 +++
 tests/qemu-iotests/293.out   |  99 
 tests/qemu-iotests/294   |  90 +++
 tests/qemu-iotests/294.out   |  30 +++
 tests/qemu-iotests/295   | 279 +
 tests/qemu-iotests/295.out   |  40 +++
 tests/qemu-iotests/296   | 234 +
 tests/qemu-iotests/296.out   |  33 +++
 tests/qemu-iotests/common.filter |  93 +--
 tests/qemu-iotests/group |   4 +
 53 files changed, 2482 insertions(+), 516 deletions(-)
 create mode 100644 block/amend.c
 create mode 100755 tests/qemu-iotests/293
 create mode 100644 tests/qemu-iotests/293.out
 create mode 100755 tests/qemu-iotests/294
 create mode 100644 tests/qemu-iotests/294.out
 create mode 100755 tests/qemu-iotests/295
 create mode 100644 tests/qemu-iotests/295.out
 create mode 100755 tests/qemu-iotests/296
 create mode 100644 tests/qemu-iotests/296.out

-- 
2.26.2




Re: [PULL 00/18] Block patches

2020-02-21 Thread Peter Maydell
On Thu, 20 Feb 2020 at 16:07, Max Reitz  wrote:
>
> The following changes since commit 672f9d0df10a68a5c5f2b32cbc8284abf9f5ee18:
>
>   Merge remote-tracking branch 'remotes/kevin/tags/for-upstream' into staging 
> (2020-02-18 14:23:43 +)
>
> are available in the Git repository at:
>
>   https://github.com/XanClic/qemu.git tags/pull-block-2020-02-20
>
> for you to fetch changes up to dff8d44c96f128480430b0c59ed8760917dbd427:
>
>   iotests: Test snapshot -l field separation (2020-02-20 16:43:42 +0100)
>
> 
> Block patches:
> - qemu-img convert: New --target-is-zero parameter
> - qcow2: Specify non-default compression type flag
> - optionally flat output for query-named-block-nodes
> - some fixes
> - pseudo-creation of images on block devices is now done by a generic
>   block layer function
>
> 



Applied, thanks.

Please update the changelog at https://wiki.qemu.org/ChangeLog/5.0
for any user-visible changes.

-- PMM



[PULL 00/18] Block patches

2020-02-20 Thread Max Reitz
The following changes since commit 672f9d0df10a68a5c5f2b32cbc8284abf9f5ee18:

  Merge remote-tracking branch 'remotes/kevin/tags/for-upstream' into staging 
(2020-02-18 14:23:43 +)

are available in the Git repository at:

  https://github.com/XanClic/qemu.git tags/pull-block-2020-02-20

for you to fetch changes up to dff8d44c96f128480430b0c59ed8760917dbd427:

  iotests: Test snapshot -l field separation (2020-02-20 16:43:42 +0100)


Block patches:
- qemu-img convert: New --target-is-zero parameter
- qcow2: Specify non-default compression type flag
- optionally flat output for query-named-block-nodes
- some fixes
- pseudo-creation of images on block devices is now done by a generic
  block layer function


Daniel P. Berrangé (1):
  block: always fill entire LUKS header space with zeros

David Edmondson (1):
  qemu-img: Add --target-is-zero to convert

Max Reitz (11):
  iotests/147: Fix drive parameters
  iotests/279: Fix for non-qcow2 formats
  block/nbd: Fix hang in .bdrv_close()
  block: Generic file creation fallback
  file-posix: Drop hdev_co_create_opts()
  iscsi: Drop iscsi_co_create_opts()
  iotests: Add test for image creation fallback
  qemu-img: Fix convert -n -B for backing-less targets
  iotests: Test convert -n -B to backing-less target
  block: Fix VM size field width in snapshot dump
  iotests: Test snapshot -l field separation

Peter Krempa (1):
  qapi: Allow getting flat output from 'query-named-block-nodes'

Thomas Huth (1):
  iotests: Remove the superfluous 2nd check for the availability of
quorum

Vladimir Sementsov-Ogievskiy (3):
  docs: improve qcow2 spec about extending image header
  docs: qcow2: introduce compression type feature
  block/backup-top: fix flags handling

 block.c| 164 +
 block/backup-top.c |  31 ---
 block/file-posix.c |  67 ---
 block/iscsi.c  |  56 -
 block/nbd.c|  14 +++-
 block/qapi.c   |  15 +++-
 block/qcow2.c  |  11 ++-
 blockdev.c |   8 +-
 docs/interop/qcow2.txt |  64 ++-
 docs/interop/qemu-img.rst  |   9 +-
 include/block/block.h  |   2 +-
 include/block/qapi.h   |   4 +-
 monitor/hmp-cmds.c |   2 +-
 qapi/block-core.json   |   7 +-
 qemu-img-cmds.hx   |   4 +-
 qemu-img.c |  28 ++-
 tests/qemu-iotests/122 |  14 
 tests/qemu-iotests/122.out |   5 ++
 tests/qemu-iotests/139 |   3 -
 tests/qemu-iotests/147 |   2 +-
 tests/qemu-iotests/259 |  62 ++
 tests/qemu-iotests/259.out |  14 
 tests/qemu-iotests/279 |   7 +-
 tests/qemu-iotests/284 |  97 ++
 tests/qemu-iotests/284.out |  62 ++
 tests/qemu-iotests/286 |  76 +
 tests/qemu-iotests/286.out |   8 ++
 tests/qemu-iotests/group   |   3 +
 28 files changed, 659 insertions(+), 180 deletions(-)
 create mode 100755 tests/qemu-iotests/259
 create mode 100644 tests/qemu-iotests/259.out
 create mode 100755 tests/qemu-iotests/284
 create mode 100644 tests/qemu-iotests/284.out
 create mode 100755 tests/qemu-iotests/286
 create mode 100644 tests/qemu-iotests/286.out

-- 
2.24.1




Re: [PULL 00/18] Block patches

2020-01-31 Thread Peter Maydell
On Thu, 30 Jan 2020 at 21:31, Stefan Hajnoczi  wrote:
>
> The following changes since commit 928173659d6e5dc368284f73f90ea1d129e1f57d:
>
>   Merge remote-tracking branch 
> 'remotes/pmaydell/tags/pull-target-arm-20200130' into staging (2020-01-30 
> 16:19:04 +)
>
> are available in the Git repository at:
>
>   https://github.com/stefanha/qemu.git tags/block-pull-request
>
> for you to fetch changes up to 8dff69b9415b4287e900358744b732195e1ab2e2:
>
>   tests/qemu-iotests: use AIOMODE with various tests (2020-01-30 21:01:40 
> +)
>
> 
> Pull request
>
> 
>
> Aarushi Mehta (15):
>   configure: permit use of io_uring
>   qapi/block-core: add option for io_uring
>   block/block: add BDRV flag for io_uring
>   block/io_uring: implements interfaces for io_uring
>   stubs: add stubs for io_uring interface
>   util/async: add aio interfaces for io_uring
>   blockdev: adds bdrv_parse_aio to use io_uring
>   block/file-posix.c: extend to use io_uring
>   block: add trace events for io_uring
>   block/io_uring: adds userspace completion polling
>   qemu-io: adds option to use aio engine
>   qemu-img: adds option to use aio engine for benchmarking
>   qemu-nbd: adds option for aio engines
>   tests/qemu-iotests: enable testing with aio options
>   tests/qemu-iotests: use AIOMODE with various tests
>
> Paolo Bonzini (3):
>   block: eliminate BDRV_REQ_NO_SERIALISING
>   block/io: wait for serialising requests when a request becomes
> serialising
>   block/io: take bs->reqs_lock in bdrv_mark_request_serialising


Applied, thanks.

Please update the changelog at https://wiki.qemu.org/ChangeLog/5.0
for any user-visible changes.

-- PMM



[PULL 00/18] Block patches

2020-01-30 Thread Stefan Hajnoczi
The following changes since commit 928173659d6e5dc368284f73f90ea1d129e1f57d:

  Merge remote-tracking branch 'remotes/pmaydell/tags/pull-target-arm-20200130' 
into staging (2020-01-30 16:19:04 +)

are available in the Git repository at:

  https://github.com/stefanha/qemu.git tags/block-pull-request

for you to fetch changes up to 8dff69b9415b4287e900358744b732195e1ab2e2:

  tests/qemu-iotests: use AIOMODE with various tests (2020-01-30 21:01:40 +)


Pull request



Aarushi Mehta (15):
  configure: permit use of io_uring
  qapi/block-core: add option for io_uring
  block/block: add BDRV flag for io_uring
  block/io_uring: implements interfaces for io_uring
  stubs: add stubs for io_uring interface
  util/async: add aio interfaces for io_uring
  blockdev: adds bdrv_parse_aio to use io_uring
  block/file-posix.c: extend to use io_uring
  block: add trace events for io_uring
  block/io_uring: adds userspace completion polling
  qemu-io: adds option to use aio engine
  qemu-img: adds option to use aio engine for benchmarking
  qemu-nbd: adds option for aio engines
  tests/qemu-iotests: enable testing with aio options
  tests/qemu-iotests: use AIOMODE with various tests

Paolo Bonzini (3):
  block: eliminate BDRV_REQ_NO_SERIALISING
  block/io: wait for serialising requests when a request becomes
serialising
  block/io: take bs->reqs_lock in bdrv_mark_request_serialising

 MAINTAINERS   |   9 +
 block.c   |  22 ++
 block/Makefile.objs   |   3 +
 block/file-posix.c|  99 ++--
 block/io.c| 162 +++--
 block/io_uring.c  | 433 ++
 block/trace-events|  12 +
 blockdev.c|  12 +-
 configure |  27 +++
 docs/interop/qemu-nbd.rst |   4 +-
 include/block/aio.h   |  16 +-
 include/block/block.h |  14 +-
 include/block/block_int.h |   3 +-
 include/block/raw-aio.h   |  12 +
 qapi/block-core.json  |   4 +-
 qemu-img-cmds.hx  |   4 +-
 qemu-img.c|  11 +-
 qemu-img.texi |   5 +-
 qemu-io.c |  25 +-
 qemu-nbd.c|  12 +-
 stubs/Makefile.objs   |   1 +
 stubs/io_uring.c  |  32 +++
 tests/qemu-iotests/028|   2 +-
 tests/qemu-iotests/058|   2 +-
 tests/qemu-iotests/089|   4 +-
 tests/qemu-iotests/091|   4 +-
 tests/qemu-iotests/109|   2 +-
 tests/qemu-iotests/147|   5 +-
 tests/qemu-iotests/181|   8 +-
 tests/qemu-iotests/183|   4 +-
 tests/qemu-iotests/185|  10 +-
 tests/qemu-iotests/200|   2 +-
 tests/qemu-iotests/201|   8 +-
 tests/qemu-iotests/check  |  15 +-
 tests/qemu-iotests/common.rc  |  14 ++
 tests/qemu-iotests/iotests.py |  12 +-
 util/async.c  |  36 +++
 37 files changed, 878 insertions(+), 172 deletions(-)
 create mode 100644 block/io_uring.c
 create mode 100644 stubs/io_uring.c

-- 
2.24.1




Re: [Qemu-devel] [PULL 00/18] Block patches

2014-02-12 Thread Peter Maydell
On 9 February 2014 08:46, Kevin Wolf kw...@redhat.com wrote:
 The following changes since commit 1f6b12f75f2c22f861d0202374033a7594c91707:

   Merge remote-tracking branch 'remotes/mwalle/tags/lm32-fixes/20140204' into 
 staging (2014-02-08 15:57:51 +)

 are available in the git repository at:


   git://repo.or.cz/qemu/kevin.git tags/for-anthony

 for you to fetch changes up to e96126ffa53d36ec75a1ee900a6b7e7c82d9bb9c:

   block: Fix 32 bit truncation in mark_request_serialising() (2014-02-09 
 09:12:39 +0100)

Applied, thanks.

-- PMM



[Qemu-devel] [PULL 00/18] Block patches

2014-02-09 Thread Kevin Wolf
The following changes since commit 1f6b12f75f2c22f861d0202374033a7594c91707:

  Merge remote-tracking branch 'remotes/mwalle/tags/lm32-fixes/20140204' into 
staging (2014-02-08 15:57:51 +)

are available in the git repository at:


  git://repo.or.cz/qemu/kevin.git tags/for-anthony

for you to fetch changes up to e96126ffa53d36ec75a1ee900a6b7e7c82d9bb9c:

  block: Fix 32 bit truncation in mark_request_serialising() (2014-02-09 
09:12:39 +0100)


Block patches


Hu Tao (4):
  qcow2: remove n_start and n_end of qcow2_alloc_cluster_offset()
  qcow2: fix offset overflow in qcow2_alloc_clusters_at()
  qcow2: check for NULL l2meta
  qemu-iotests: add test for qcow2 preallocation with different cluster 
sizes

Kevin Wolf (8):
  qemu-iotest: Make 077 raw-only
  block: Fail gracefully with missing filename
  raw: Fix BlockLimits passthrough
  block: Fix memory leaks in bdrv_co_do_pwritev()
  block: bdrv_aligned_pwritev: Assert overlap range
  block: Don't call ROUND_UP with negative values
  blkdebug: Don't leak bs-file on failure
  block: Fix 32 bit truncation in mark_request_serialising()

Peter Lieven (6):
  block: add native support for NFS
  qemu-iotests: change _supported_proto to file for various tests
  qemu-iotests: blacklist test 020 for NFS protocol
  qemu-iotests: enable test 016 and 025 to work with NFS protocol
  qemu-iotests: enable support for NFS protocol
  block/iscsi: always fill bs-bl.opt_transfer_length

 MAINTAINERS  |   5 +
 block.c  |  27 +--
 block/Makefile.objs  |   1 +
 block/blkdebug.c |  14 +-
 block/iscsi.c|   5 +-
 block/nfs.c  | 439 +++
 block/qcow2-cluster.c|  14 +-
 block/qcow2-refcount.c   |   8 +-
 block/qcow2.c|  44 ++---
 block/qcow2.h|   2 +-
 block/raw_bsd.c  |   8 +-
 configure|  26 +++
 qapi-schema.json |   1 +
 tests/qemu-iotests/013   |   2 +-
 tests/qemu-iotests/014   |   2 +-
 tests/qemu-iotests/016   |   2 +-
 tests/qemu-iotests/018   |   2 +-
 tests/qemu-iotests/019   |   2 +-
 tests/qemu-iotests/020   |   5 +
 tests/qemu-iotests/023   |   2 +-
 tests/qemu-iotests/024   |   2 +-
 tests/qemu-iotests/025   |   2 +-
 tests/qemu-iotests/026   |   2 +-
 tests/qemu-iotests/028   |   2 +-
 tests/qemu-iotests/031   |   2 +-
 tests/qemu-iotests/034   |   2 +-
 tests/qemu-iotests/036   |   2 +-
 tests/qemu-iotests/037   |   2 +-
 tests/qemu-iotests/038   |   2 +-
 tests/qemu-iotests/039   |   2 +-
 tests/qemu-iotests/043   |   2 +-
 tests/qemu-iotests/046   |   2 +-
 tests/qemu-iotests/051   |  12 ++
 tests/qemu-iotests/051.out   |  24 +++
 tests/qemu-iotests/052   |   2 +-
 tests/qemu-iotests/054   |   2 +-
 tests/qemu-iotests/059   |   2 +-
 tests/qemu-iotests/060   |   2 +-
 tests/qemu-iotests/061   |   2 +-
 tests/qemu-iotests/063   |   2 +-
 tests/qemu-iotests/069   |   2 +-
 tests/qemu-iotests/071   |   2 +-
 tests/qemu-iotests/072   |   2 +-
 tests/qemu-iotests/077   |   2 +-
 tests/qemu-iotests/079   |  63 +++
 tests/qemu-iotests/079.out   |  32 
 tests/qemu-iotests/common|  22 ++-
 tests/qemu-iotests/common.rc |   3 +
 tests/qemu-iotests/group |   1 +
 trace-events |   2 +-
 50 files changed, 730 insertions(+), 84 deletions(-)
 create mode 100644 block/nfs.c
 create mode 100755 tests/qemu-iotests/079
 create mode 100644 tests/qemu-iotests/079.out



Re: [Qemu-devel] [PULL 00/18] Block patches

2014-01-10 Thread Stefan Weil
Am 20.12.2013 16:46, schrieb Stefan Hajnoczi:
 Happy holidays to all!  I'll be back on January 2nd.  Kevin is also away so
 there will be no block pull request next Friday.
 
 If there is anything urgent, please contact me at stefa...@gmail.com.
 
 The following changes since commit f8251db121c3f051b22a7536b97d160c30bcccd4:
 
   Merge remote-tracking branch 'agraf/tags/signed-ppc-for-upstream' into 
 staging (2013-12-19 17:03:17 -0800)
 
 are available in the git repository at:
 
 
   git://github.com/stefanha/qemu.git block
 
 for you to fetch changes up to 18da7f94cdce130f2a71387de4980ffa817181a1:
 
   commit: Remove unused check (2013-12-20 16:26:16 +0100)
 
 
 Fam Zheng (8):
   vmdk: Check VMFS extent line field number
   vmdk: Allow vmdk_create to work with protocol
   mirror: Don't close target
   mirror: Move base to MirrorBlockJob
   block: Add commit_active_start()
   commit: Support commit active layer
   qemu-iotests: Update test cases for commit active
   commit: Remove unused check
 
 Jeff Cody (2):
   block: vhdx - improve error message, and .bdrv_check implementation
   docs: updated qemu-img man page and qemu-doc to reflect VHDX support.
 
 Liu Yuan (1):
   sheepdog: fix dynamic grow for running qcow2 format
 
 Paolo Bonzini (4):
   vring: create a common function to parse descriptors
   vring: factor common code for error exits
   dataplane: change vring API to use VirtQueueElement
   dataplane: replace hostmem with memory_region_find
 
 Stefan Hajnoczi (2):
   qapi-schema: fix QEMU 1.8 references
   qemu-iotests: drop duplicate virtio-blk initialization failure
 
 Stefan Weil (1):
   block/iscsi: Fix compilation for libiscsi 1.4.0 (API change)


Ping.

QEMU compilation is broken on Debian hosts since several weeks now.
These block patches include the fix. I'd appreciate if they could be pulled.

Thanks,
Stefan W.





Re: [Qemu-devel] [PULL 00/18] Block patches

2014-01-10 Thread Paolo Bonzini
Il 10/01/2014 18:29, Stefan Weil ha scritto:
 Ping.
 
 QEMU compilation is broken on Debian hosts since several weeks now.
 These block patches include the fix. I'd appreciate if they could be pulled.

And also all the other pull requests.  Seriously, if it was not for the
few email messages on the disable TCG thread, I would have been worried
about Anthony's health...

Paolo



Re: [Qemu-devel] [PULL 00/18] Block patches

2014-01-10 Thread Anthony Liguori
I'm working through the backlog from the holidays.  I should be
through the full backlog today for PULL requests.

On Fri, Jan 10, 2014 at 10:06 AM, Paolo Bonzini pbonz...@redhat.com wrote:
 Il 10/01/2014 18:29, Stefan Weil ha scritto:
 Ping.

 QEMU compilation is broken on Debian hosts since several weeks now.
 These block patches include the fix. I'd appreciate if they could be pulled.

 And also all the other pull requests.  Seriously, if it was not for the
 few email messages on the disable TCG thread, I would have been worried
 about Anthony's health...

 Paolo




[Qemu-devel] [PULL 00/18] Block patches

2013-12-20 Thread Stefan Hajnoczi
Happy holidays to all!  I'll be back on January 2nd.  Kevin is also away so
there will be no block pull request next Friday.

If there is anything urgent, please contact me at stefa...@gmail.com.

The following changes since commit f8251db121c3f051b22a7536b97d160c30bcccd4:

  Merge remote-tracking branch 'agraf/tags/signed-ppc-for-upstream' into 
staging (2013-12-19 17:03:17 -0800)

are available in the git repository at:


  git://github.com/stefanha/qemu.git block

for you to fetch changes up to 18da7f94cdce130f2a71387de4980ffa817181a1:

  commit: Remove unused check (2013-12-20 16:26:16 +0100)


Fam Zheng (8):
  vmdk: Check VMFS extent line field number
  vmdk: Allow vmdk_create to work with protocol
  mirror: Don't close target
  mirror: Move base to MirrorBlockJob
  block: Add commit_active_start()
  commit: Support commit active layer
  qemu-iotests: Update test cases for commit active
  commit: Remove unused check

Jeff Cody (2):
  block: vhdx - improve error message, and .bdrv_check implementation
  docs: updated qemu-img man page and qemu-doc to reflect VHDX support.

Liu Yuan (1):
  sheepdog: fix dynamic grow for running qcow2 format

Paolo Bonzini (4):
  vring: create a common function to parse descriptors
  vring: factor common code for error exits
  dataplane: change vring API to use VirtQueueElement
  dataplane: replace hostmem with memory_region_find

Stefan Hajnoczi (2):
  qapi-schema: fix QEMU 1.8 references
  qemu-iotests: drop duplicate virtio-blk initialization failure

Stefan Weil (1):
  block/iscsi: Fix compilation for libiscsi 1.4.0 (API change)

 block/commit.c|   8 +-
 block/iscsi.c |   5 +-
 block/mirror.c|  78 +--
 block/sheepdog.c  |   7 +-
 block/vhdx-log.c  |  13 +-
 block/vhdx.c  |  22 ++-
 block/vhdx.h  |   5 +-
 block/vmdk.c  | 173 +--
 blockdev.c|   9 +-
 configure |  22 +++
 hw/block/dataplane/virtio-blk.c   |  86 +---
 hw/virtio/dataplane/Makefile.objs |   2 +-
 hw/virtio/dataplane/hostmem.c | 183 
 hw/virtio/dataplane/vring.c   | 253 ++
 include/block/block_int.h |  22 ++-
 include/hw/virtio/dataplane/hostmem.h |  58 
 include/hw/virtio/dataplane/vring.h   |  10 +-
 qapi-schema.json  |   7 +-
 qemu-doc.texi |  15 ++
 qemu-img.texi |   4 +-
 tests/qemu-iotests/040|  74 +-
 tests/qemu-iotests/051.out|   1 -
 tests/qemu-iotests/059|  14 ++
 tests/qemu-iotests/059.out|   5 +
 24 files changed, 535 insertions(+), 541 deletions(-)
 delete mode 100644 hw/virtio/dataplane/hostmem.c
 delete mode 100644 include/hw/virtio/dataplane/hostmem.h

-- 
1.8.4.2




Re: [Qemu-devel] [PULL 00/18] Block patches

2013-08-19 Thread Stefan Hajnoczi
On Fri, Aug 16, 2013 at 05:47:06PM +0200, Stefan Hajnoczi wrote:
 fatal: Needed a single revision
 The following changes since commit f202039811d8746b0586d2fd5f61de6c8cf68056:
 
   Open up 1.7 development branch (2013-08-15 15:41:13 -0500)
 
 are available in the git repository at:
 
   git://github.com/stefanha/qemu.git block-next
 
 for you to fetch changes up to ab97be151813b6823fa41e46f62c500f5b03f771:
 
   aio: drop io_flush argument (2013-08-16 14:16:21 +0200)
 
 
 Stefan Hajnoczi (18):
   block: ensure bdrv_drain_all() works during bdrv_delete()
   block: stop relying on io_flush() in bdrv_drain_all()
   dataplane/virtio-blk: check exit conditions before aio_poll()
   tests: adjust test-aio to new aio_poll() semantics
   tests: adjust test-thread-pool to new aio_poll() semantics
   aio: stop using .io_flush()
   block/curl: drop curl_aio_flush()
   block/gluster: drop qemu_gluster_aio_flush_cb()
   block/iscsi: drop iscsi_process_flush()
   block/linux-aio: drop qemu_laio_completion_cb()
   block/nbd: drop nbd_have_request()
   block/rbd: drop qemu_rbd_aio_flush_cb()
   block/sheepdog: drop have_co_req() and aio_flush_request()
   block/ssh: drop return_true()
   dataplane/virtio-blk: drop flush_true() and flush_io()
   thread-pool: drop thread_pool_active()
   tests: drop event_active_cb()
   aio: drop io_flush argument
 
  aio-posix.c | 36 ++
  aio-win32.c | 37 ---
  async.c |  4 +-
  block.c | 49 ++--
  block/curl.c| 25 ++---
  block/gluster.c | 21 ++-
  block/iscsi.c   | 10 +
  block/linux-aio.c   | 18 +
  block/nbd.c | 18 ++---
  block/rbd.c | 16 +---
  block/sheepdog.c| 33 -
  block/ssh.c | 12 +-
  block/stream.c  |  6 ++-
  hw/block/dataplane/virtio-blk.c | 25 +++--
  include/block/aio.h | 14 +--
  main-loop.c |  9 ++---
  tests/test-aio.c| 82 
 +
  tests/test-thread-pool.c| 24 ++--
  thread-pool.c   | 11 +-
  19 files changed, 163 insertions(+), 287 deletions(-)

Bharata found an issue with the GlusterFS patch, I will resend with the
fix squashed in.

Stefan



[Qemu-devel] [PULL 00/18] Block patches

2013-08-16 Thread Stefan Hajnoczi
fatal: Needed a single revision
The following changes since commit f202039811d8746b0586d2fd5f61de6c8cf68056:

  Open up 1.7 development branch (2013-08-15 15:41:13 -0500)

are available in the git repository at:

  git://github.com/stefanha/qemu.git block-next

for you to fetch changes up to ab97be151813b6823fa41e46f62c500f5b03f771:

  aio: drop io_flush argument (2013-08-16 14:16:21 +0200)


Stefan Hajnoczi (18):
  block: ensure bdrv_drain_all() works during bdrv_delete()
  block: stop relying on io_flush() in bdrv_drain_all()
  dataplane/virtio-blk: check exit conditions before aio_poll()
  tests: adjust test-aio to new aio_poll() semantics
  tests: adjust test-thread-pool to new aio_poll() semantics
  aio: stop using .io_flush()
  block/curl: drop curl_aio_flush()
  block/gluster: drop qemu_gluster_aio_flush_cb()
  block/iscsi: drop iscsi_process_flush()
  block/linux-aio: drop qemu_laio_completion_cb()
  block/nbd: drop nbd_have_request()
  block/rbd: drop qemu_rbd_aio_flush_cb()
  block/sheepdog: drop have_co_req() and aio_flush_request()
  block/ssh: drop return_true()
  dataplane/virtio-blk: drop flush_true() and flush_io()
  thread-pool: drop thread_pool_active()
  tests: drop event_active_cb()
  aio: drop io_flush argument

 aio-posix.c | 36 ++
 aio-win32.c | 37 ---
 async.c |  4 +-
 block.c | 49 ++--
 block/curl.c| 25 ++---
 block/gluster.c | 21 ++-
 block/iscsi.c   | 10 +
 block/linux-aio.c   | 18 +
 block/nbd.c | 18 ++---
 block/rbd.c | 16 +---
 block/sheepdog.c| 33 -
 block/ssh.c | 12 +-
 block/stream.c  |  6 ++-
 hw/block/dataplane/virtio-blk.c | 25 +++--
 include/block/aio.h | 14 +--
 main-loop.c |  9 ++---
 tests/test-aio.c| 82 +
 tests/test-thread-pool.c| 24 ++--
 thread-pool.c   | 11 +-
 19 files changed, 163 insertions(+), 287 deletions(-)

-- 
1.8.3.1



[Qemu-devel] [PULL 00/18] Block patches

2013-07-26 Thread Kevin Wolf
The following changes since commit 003e26bc9f7c4f5cd90e046ae112c1d09363b8d1:

  Merge remote-tracking branch 'mdroth/qga-pull-2013-7-25' into staging 
(2013-07-25 15:58:29 -0500)

are available in the git repository at:


  git://repo.or.cz/qemu/kevin.git for-anthony

for you to fetch changes up to e3409362bd64731e042c9d001e43cc1d13d2df5d:

  Add tests for sync modes 'TOP' and 'NONE' (2013-07-26 22:01:31 +0200)


Ian Main (2):
  Implement sync modes for drive-backup.
  Add tests for sync modes 'TOP' and 'NONE'

Kevin Wolf (16):
  qapi-types.py: Implement 'base' for unions
  qapi-visit.py: Split off generate_visit_struct_fields()
  qapi-visit.py: Implement 'base' for unions
  docs: Document QAPI union types
  qapi: Add visitor for implicit structs
  qapi: Flat unions with arbitrary discriminator
  qapi: Add consume argument to qmp_input_get_object()
  qapi.py: Maintain a list of union types
  qapi: Anonymous unions
  block: Allow driver option on the top level
  QemuOpts: Add qemu_opt_unset()
  blockdev: Rename I/O throttling options for QMP
  qcow2: Use dashes instead of underscores in options
  blockdev: Rename 'readonly' option to 'read-only'
  blockdev: Split up 'cache' option
  Implement qdict_flatten()

 block.c   |   7 ++
 block/backup.c| 105 +---
 block/qcow2.c |   2 +-
 block/qcow2.h |   8 +-
 blockdev.c| 168 --
 docs/qapi-code-gen.txt| 109 +++--
 include/block/block_int.h |   4 +-
 include/qapi/qmp/qdict.h  |   1 +
 include/qapi/qmp/qobject.h|   1 +
 include/qapi/visitor-impl.h   |   6 ++
 include/qapi/visitor.h|   6 ++
 include/qemu/option.h |   1 +
 qapi/qapi-visit-core.c|  25 ++
 qapi/qmp-input-visitor.c  |  47 ---
 qmp-commands.hx   |   1 +
 qobject/qdict.c   |  51 
 qobject/qjson.c   |   2 +
 scripts/qapi-types.py |  65 ++-
 scripts/qapi-visit.py | 183 ++
 scripts/qapi.py   |  28 +++
 tests/qemu-iotests/051|  14 ++--
 tests/qemu-iotests/051.out|  32 
 tests/qemu-iotests/055|   6 ++
 tests/qemu-iotests/055.out|   4 +-
 tests/qemu-iotests/056|  94 ++
 tests/qemu-iotests/056.out|   5 ++
 tests/qemu-iotests/group  |   1 +
 tests/qemu-iotests/iotests.py |   5 ++
 util/qemu-option.c|  14 
 29 files changed, 839 insertions(+), 156 deletions(-)
 create mode 100755 tests/qemu-iotests/056
 create mode 100644 tests/qemu-iotests/056.out



[Qemu-devel] [PULL 00/18] Block patches

2012-12-19 Thread Stefan Hajnoczi
One last block pull request before the end of the world on 21 December.

Kevin is on vacation until 2nd week of January.  I am away until January 2
starting from tomorrow.  If there is anything urgent, don't hesitate to email
stefa...@gmail.com.

The following changes since commit 914606d26e654d4c01bd5186f4d05e3fd445e219:

  Merge remote-tracking branch 'stefanha/trivial-patches' into staging 
(2012-12-18 15:41:43 -0600)

are available in the git repository at:


  git://github.com/stefanha/qemu.git block

for you to fetch changes up to 1dc5e4dc3eefcc3f8d8e5af0da8316ab5dd283bd:

  sheepdog: pass oid directly to send_pending_req() (2012-12-19 16:33:57 +0100)


Alexey Zaytsev (1):
  virtio-blk: Return UNSUPP for unknown request types

Liu Yuan (2):
  sheepdog: don't update inode when create_and_write fails
  sheepdog: pass oid directly to send_pending_req()

Stefan Hajnoczi (12):
  raw-posix: add raw_get_aio_fd() for virtio-blk-data-plane
  configure: add CONFIG_VIRTIO_BLK_DATA_PLANE
  dataplane: add host memory mapping code
  dataplane: add virtqueue vring code
  dataplane: add event loop
  dataplane: add Linux AIO request queue
  iov: add iov_discard_front/back() to remove data
  test-iov: add iov_discard_front/back() testcases
  iov: add qemu_iovec_concat_iov()
  virtio-blk: restore VirtIOBlkConf-config_wce flag
  dataplane: add virtio-blk data plane code
  virtio-blk: add x-data-plane=on|off performance feature

Stefan Weil (1):
  block/raw-win32: Fix compiler warnings (wrong format specifiers)

liguang (2):
  cutils: change strtosz_suffix_unit function
  qemu-img: report size overflow error message

 block.h|   9 +
 block/raw-posix.c  |  34 
 block/raw-win32.c  |   4 +-
 block/sheepdog.c   |  11 +-
 configure  |  21 ++
 cutils.c   |   6 +-
 hw/Makefile.objs   |   2 +-
 hw/dataplane/Makefile.objs |   3 +
 hw/dataplane/event-poll.c  | 100 ++
 hw/dataplane/event-poll.h  |  40 
 hw/dataplane/hostmem.c | 176 +
 hw/dataplane/hostmem.h |  57 ++
 hw/dataplane/ioq.c | 117 
 hw/dataplane/ioq.h |  57 ++
 hw/dataplane/virtio-blk.c  | 465 +
 hw/dataplane/virtio-blk.h  |  29 +++
 hw/dataplane/vring.c   | 362 +++
 hw/dataplane/vring.h   |  63 ++
 hw/virtio-blk.c|  53 +-
 hw/virtio-blk.h|   5 +-
 hw/virtio-pci.c|   4 +
 iov.c  |  90 +++--
 iov.h  |  13 ++
 qemu-common.h  |   3 +
 qemu-img.c |  10 +-
 tests/test-iov.c   | 150 +++
 trace-events   |   9 +
 27 files changed, 1864 insertions(+), 29 deletions(-)
 create mode 100644 hw/dataplane/Makefile.objs
 create mode 100644 hw/dataplane/event-poll.c
 create mode 100644 hw/dataplane/event-poll.h
 create mode 100644 hw/dataplane/hostmem.c
 create mode 100644 hw/dataplane/hostmem.h
 create mode 100644 hw/dataplane/ioq.c
 create mode 100644 hw/dataplane/ioq.h
 create mode 100644 hw/dataplane/virtio-blk.c
 create mode 100644 hw/dataplane/virtio-blk.h
 create mode 100644 hw/dataplane/vring.c
 create mode 100644 hw/dataplane/vring.h

-- 
1.8.0.2



[Qemu-devel] [PULL 00/18] Block patches

2011-05-19 Thread Kevin Wolf
The following changes since commit 96d19bcbf5f679bbaaeab001b572c367fbfb2b03:

  ahci: Unbreak bar registration (2011-05-16 10:15:47 -0500)

are available in the git repository at:
  git://repo.or.cz/qemu/kevin.git for-anthony

Alexander Graf (1):
  ahci: Fix non-NCQ accesses for LBA  16bits

Andrea Arcangeli (1):
  ide: cleanup warnings

Dmitry Konishchev (1):
  qemu_img: is_not_zero() optimization

Jan Kiszka (1):
  ahci: Fix crashes on duplicate BH registration

Jes Sorensen (2):
  qemu-img.c: Remove superfluous parenthesis
  Add documentation for qemu_progress_{init,print}()

Kevin Wolf (2):
  posix-aio-compat: Fix idle_threads counter
  ide: Turn debug messages into assertions

Markus Armbruster (6):
  ide: Split qdev ide-drive into ide-hd and ide-cd
  scsi: Split qdev scsi-disk into scsi-hd and scsi-cd
  defaults: ide-cd, ide-hd and scsi-cd devices suppress default CD-ROM
  block QMP: Deprecate query-block's type, drop info block's type=
  blockdev: Store -drive option media in DriveInfo
  block: Remove type hint, it's guest matter, doesn't belong here

Stefan Hajnoczi (3):
  qemu-tool: Stub out qemu-timer functions
  qed: Periodically flush and clear need check bit
  qed: support for growing images

Stefan Weil (1):
  hw/xen_disk: Remove unused local variable

 block.c|   32 +---
 block.h|5 --
 block/qed.c|  126 ++-
 block/qed.h|7 +++
 block_int.h|1 -
 blockdev.c |5 +-
 blockdev.h |1 +
 hw/ide/ahci.c  |   35 +++--
 hw/ide/core.c  |   10 ++--
 hw/ide/internal.h  |2 +-
 hw/ide/pci.c   |8 +--
 hw/ide/qdev.c  |   81 ---
 hw/scsi-disk.c |  137 +++-
 hw/xen_devconfig.c |2 +-
 hw/xen_disk.c  |4 +-
 posix-aio-compat.c |6 +--
 qemu-common.h  |2 +-
 qemu-img.c |   35 +++--
 qemu-progress.c|   24 -
 qemu-tool.c|   25 ++
 qmp-commands.hx|   11 ++--
 trace-events   |3 +
 vl.c   |3 +
 23 files changed, 436 insertions(+), 129 deletions(-)



Re: [Qemu-devel] [PULL 00/18] Block patches

2011-05-19 Thread Anthony Liguori

On 05/19/2011 07:33 AM, Kevin Wolf wrote:

The following changes since commit 96d19bcbf5f679bbaaeab001b572c367fbfb2b03:

   ahci: Unbreak bar registration (2011-05-16 10:15:47 -0500)

are available in the git repository at:
   git://repo.or.cz/qemu/kevin.git for-anthony


Pulled.  Thanks.

Regards,

Anthony Liguori



Alexander Graf (1):
   ahci: Fix non-NCQ accesses for LBA  16bits

Andrea Arcangeli (1):
   ide: cleanup warnings

Dmitry Konishchev (1):
   qemu_img: is_not_zero() optimization

Jan Kiszka (1):
   ahci: Fix crashes on duplicate BH registration

Jes Sorensen (2):
   qemu-img.c: Remove superfluous parenthesis
   Add documentation for qemu_progress_{init,print}()

Kevin Wolf (2):
   posix-aio-compat: Fix idle_threads counter
   ide: Turn debug messages into assertions

Markus Armbruster (6):
   ide: Split qdev ide-drive into ide-hd and ide-cd
   scsi: Split qdev scsi-disk into scsi-hd and scsi-cd
   defaults: ide-cd, ide-hd and scsi-cd devices suppress default CD-ROM
   block QMP: Deprecate query-block's type, drop info block's type=
   blockdev: Store -drive option media in DriveInfo
   block: Remove type hint, it's guest matter, doesn't belong here

Stefan Hajnoczi (3):
   qemu-tool: Stub out qemu-timer functions
   qed: Periodically flush and clear need check bit
   qed: support for growing images

Stefan Weil (1):
   hw/xen_disk: Remove unused local variable

  block.c|   32 +---
  block.h|5 --
  block/qed.c|  126 ++-
  block/qed.h|7 +++
  block_int.h|1 -
  blockdev.c |5 +-
  blockdev.h |1 +
  hw/ide/ahci.c  |   35 +++--
  hw/ide/core.c  |   10 ++--
  hw/ide/internal.h  |2 +-
  hw/ide/pci.c   |8 +--
  hw/ide/qdev.c  |   81 ---
  hw/scsi-disk.c |  137 +++-
  hw/xen_devconfig.c |2 +-
  hw/xen_disk.c  |4 +-
  posix-aio-compat.c |6 +--
  qemu-common.h  |2 +-
  qemu-img.c |   35 +++--
  qemu-progress.c|   24 -
  qemu-tool.c|   25 ++
  qmp-commands.hx|   11 ++--
  trace-events   |3 +
  vl.c   |3 +
  23 files changed, 436 insertions(+), 129 deletions(-)





[Qemu-devel] Re: [PULL 00/18] Block patches

2010-05-03 Thread Anthony Liguori

On 04/30/2010 09:00 AM, Kevin Wolf wrote:

Hi Anthony,

this is the second part of the block patches in my queue that I promised in the
pull request last week. I also included the high watermark patch even if it
didn't sit on the list for a very long time - but the people that I expected to
comment on it have already done so, either on the list or internally.

Kevin

The following changes since commit 9ed7b059ef776a3921cfd085e891f45076922542:
   Amit Shah (1):
 virtio-serial: Implement flow control for individual ports

are available in the git repository at:

   git://repo.or.cz/qemu/kevin.git for-anthony
   


Pulled.  Thanks.

Regards,

Anthony Liguori


Christoph Hellwig (1):
   block: separate raw images from the file protocol

Jan Kiszka (1):
   block: Release allocated options after bdrv_open

Kevin Wolf (10):
   block: Split bdrv_open
   block: Avoid forward declaration of bdrv_open_common
   block: Open the underlying image file in generic code
   block: bdrv_has_zero_init
   vmdk: Fix COW
   vmdk: Clean up backing file handling
   vmdk: Convert to bdrv_open
   qcow2: Remove abort on free_clusters failure
   block: Add wr_highest_sector blockstat
   qemu-img rebase: Fix output image corruption

Stefan Hajnoczi (6):
   block: Set backing_hd to NULL after deleting it
   qcow2: Avoid shadowing variable in alloc_clusters_noref()
   raw-posix: Use pread/pwrite instead of lseek+read/write
   block: Cache total_sectors to reduce bdrv_getlength calls
   qemu-img: Add 'resize' command to grow/shrink disk images
   qcow2: Implement bdrv_truncate() for growing images

  Makefile.objs  |2 +-
  block.c|  384 ++--
  block.h|2 +
  block/blkdebug.c   |   17 +--
  block/bochs.c  |2 +-
  block/cloop.c  |2 +-
  block/cow.c|2 +-
  block/curl.c   |   10 +-
  block/dmg.c|2 +-
  block/nbd.c|2 +-
  block/parallels.c  |2 +-
  block/qcow.c   |   67 -
  block/qcow2-cluster.c  |   64 
  block/qcow2-refcount.c |   86 ++--
  block/qcow2-snapshot.c |   22 ++--
  block/qcow2.c  |  110 +-
  block/qcow2.h  |8 +-
  block/raw-posix.c  |   62 +++--
  block/raw-win32.c  |   16 +-
  block/raw.c|  144 ++
  block/vdi.c|   29 +---
  block/vmdk.c   |  140 +-
  block/vpc.c|   32 ++---
  block/vvfat.c  |2 +-
  block_int.h|6 +-
  qemu-img-cmds.hx   |6 +
  qemu-img.c |  104 +-
  qemu-img.texi  |   12 ++
  28 files changed, 843 insertions(+), 494 deletions(-)
  create mode 100644 block/raw.c
   






[Qemu-devel] [PULL 00/18] Block patches

2010-04-30 Thread Kevin Wolf
Hi Anthony,

this is the second part of the block patches in my queue that I promised in the
pull request last week. I also included the high watermark patch even if it
didn't sit on the list for a very long time - but the people that I expected to
comment on it have already done so, either on the list or internally.

Kevin

The following changes since commit 9ed7b059ef776a3921cfd085e891f45076922542:
  Amit Shah (1):
virtio-serial: Implement flow control for individual ports

are available in the git repository at:

  git://repo.or.cz/qemu/kevin.git for-anthony

Christoph Hellwig (1):
  block: separate raw images from the file protocol

Jan Kiszka (1):
  block: Release allocated options after bdrv_open

Kevin Wolf (10):
  block: Split bdrv_open
  block: Avoid forward declaration of bdrv_open_common
  block: Open the underlying image file in generic code
  block: bdrv_has_zero_init
  vmdk: Fix COW
  vmdk: Clean up backing file handling
  vmdk: Convert to bdrv_open
  qcow2: Remove abort on free_clusters failure
  block: Add wr_highest_sector blockstat
  qemu-img rebase: Fix output image corruption

Stefan Hajnoczi (6):
  block: Set backing_hd to NULL after deleting it
  qcow2: Avoid shadowing variable in alloc_clusters_noref()
  raw-posix: Use pread/pwrite instead of lseek+read/write
  block: Cache total_sectors to reduce bdrv_getlength calls
  qemu-img: Add 'resize' command to grow/shrink disk images
  qcow2: Implement bdrv_truncate() for growing images

 Makefile.objs  |2 +-
 block.c|  384 ++--
 block.h|2 +
 block/blkdebug.c   |   17 +--
 block/bochs.c  |2 +-
 block/cloop.c  |2 +-
 block/cow.c|2 +-
 block/curl.c   |   10 +-
 block/dmg.c|2 +-
 block/nbd.c|2 +-
 block/parallels.c  |2 +-
 block/qcow.c   |   67 -
 block/qcow2-cluster.c  |   64 
 block/qcow2-refcount.c |   86 ++--
 block/qcow2-snapshot.c |   22 ++--
 block/qcow2.c  |  110 +-
 block/qcow2.h  |8 +-
 block/raw-posix.c  |   62 +++--
 block/raw-win32.c  |   16 +-
 block/raw.c|  144 ++
 block/vdi.c|   29 +---
 block/vmdk.c   |  140 +-
 block/vpc.c|   32 ++---
 block/vvfat.c  |2 +-
 block_int.h|6 +-
 qemu-img-cmds.hx   |6 +
 qemu-img.c |  104 +-
 qemu-img.texi  |   12 ++
 28 files changed, 843 insertions(+), 494 deletions(-)
 create mode 100644 block/raw.c