1 | The following changes since commit 768cef2974fb1fa30dd188b043ea737e13fea477: | 1 | The following changes since commit aceeaa69d28e6f08a24395d0aa6915b687d0a681: |
---|---|---|---|
2 | 2 | ||
3 | Merge remote-tracking branch 'remotes/ehabkost/tags/x86-next-pull-request' into staging (2018-07-24 10:37:52 +0100) | 3 | Merge remote-tracking branch 'remotes/huth-gitlab/tags/pull-request-2019-12-17' into staging (2019-12-17 15:55:20 +0000) |
4 | 4 | ||
5 | are available in the Git repository at: | 5 | are available in the Git repository at: |
6 | 6 | ||
7 | git://github.com/stefanha/qemu.git tags/block-pull-request | 7 | https://github.com/stefanha/qemu.git tags/block-pull-request |
8 | 8 | ||
9 | for you to fetch changes up to 042b757cc77c9580b99ef2781cfb0a2d1bf495a6: | 9 | for you to fetch changes up to 725fe5d10dbd4259b1853b7d253cef83a3c0d22a: |
10 | 10 | ||
11 | block/file-posix: add bdrv_attach_aio_context callback for host dev and cdrom (2018-07-24 14:27:41 +0100) | 11 | virtio-blk: fix out-of-bounds access to bitmap in notify_guest_bh (2019-12-19 16:20:25 +0000) |
12 | 12 | ||
13 | ---------------------------------------------------------------- | 13 | ---------------------------------------------------------------- |
14 | Pull request | 14 | Pull request |
15 | 15 | ||
16 | Regression fix for host block devices with the file-posix driver when aio=native is in use. | ||
17 | |||
18 | ---------------------------------------------------------------- | 16 | ---------------------------------------------------------------- |
19 | 17 | ||
20 | Nishanth Aravamudan (1): | 18 | Li Hangjing (1): |
21 | block/file-posix: add bdrv_attach_aio_context callback for host dev | 19 | virtio-blk: fix out-of-bounds access to bitmap in notify_guest_bh |
22 | and cdrom | ||
23 | 20 | ||
24 | block/file-posix.c | 3 +++ | 21 | Stefan Hajnoczi (2): |
25 | 1 file changed, 3 insertions(+) | 22 | virtio-blk: deprecate SCSI passthrough |
23 | docs: fix rst syntax errors in unbuilt docs | ||
24 | |||
25 | docs/arm-cpu-features.rst | 6 +++--- | ||
26 | docs/virtio-net-failover.rst | 4 ++-- | ||
27 | docs/virtio-pmem.rst | 19 ++++++++++--------- | ||
28 | hw/block/dataplane/virtio-blk.c | 2 +- | ||
29 | qemu-deprecated.texi | 11 +++++++++++ | ||
30 | 5 files changed, 27 insertions(+), 15 deletions(-) | ||
26 | 31 | ||
27 | -- | 32 | -- |
28 | 2.17.1 | 33 | 2.23.0 |
29 | 34 | ||
35 | -- | ||
36 | libvir-list mailing list | ||
37 | libvir-list@redhat.com | ||
38 | https://www.redhat.com/mailman/listinfo/libvir-list | ||
30 | 39 | diff view generated by jsdifflib |
New patch | |||
---|---|---|---|
1 | The Linux virtio_blk.ko guest driver is removing legacy SCSI passthrough | ||
2 | support. Deprecate this feature in QEMU too. | ||
1 | 3 | ||
4 | Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com> | ||
5 | Reviewed-by: Paolo Bonzini <pbonzini@redhat.com> | ||
6 | Reviewed-by: Christoph Hellwig <hch@lst.de> | ||
7 | Reviewed-by: Thomas Huth <thuth@redhat.com> | ||
8 | Message-id: 20191213144626.1208237-1-stefanha@redhat.com | ||
9 | Message-Id: <20191213144626.1208237-1-stefanha@redhat.com> | ||
10 | Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com> | ||
11 | --- | ||
12 | qemu-deprecated.texi | 11 +++++++++++ | ||
13 | 1 file changed, 11 insertions(+) | ||
14 | |||
15 | diff --git a/qemu-deprecated.texi b/qemu-deprecated.texi | ||
16 | index XXXXXXX..XXXXXXX 100644 | ||
17 | --- a/qemu-deprecated.texi | ||
18 | +++ b/qemu-deprecated.texi | ||
19 | @@ -XXX,XX +XXX,XX @@ spec you can use the ``-cpu rv64gcsu,priv_spec=v1.9.1`` command line argument. | ||
20 | |||
21 | @section Device options | ||
22 | |||
23 | +@subsection Emulated device options | ||
24 | + | ||
25 | +@subsubsection -device virtio-blk,scsi=on|off (since 5.0.0) | ||
26 | + | ||
27 | +The virtio-blk SCSI passthrough feature is a legacy VIRTIO feature. VIRTIO 1.0 | ||
28 | +and later do not support it because the virtio-scsi device was introduced for | ||
29 | +full SCSI support. Use virtio-scsi instead when SCSI passthrough is required. | ||
30 | + | ||
31 | +Note this also applies to ``-device virtio-blk-pci,scsi=on|off'', which is an | ||
32 | +alias. | ||
33 | + | ||
34 | @subsection Block device options | ||
35 | |||
36 | @subsubsection "backing": "" (since 2.12.0) | ||
37 | -- | ||
38 | 2.23.0 | ||
39 | |||
40 | -- | ||
41 | libvir-list mailing list | ||
42 | libvir-list@redhat.com | ||
43 | https://www.redhat.com/mailman/listinfo/libvir-list | ||
44 | diff view generated by jsdifflib |
New patch | |||
---|---|---|---|
1 | The .rst files outside docs/{devel,interop,specs} aren't built yet and | ||
2 | therefore a few syntax errors have slipped through. Fix them. | ||
1 | 3 | ||
4 | Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com> | ||
5 | Reviewed-by: Daniel P. Berrangé <berrange@redhat.com> | ||
6 | Message-Id: <20191111094411.427174-1-stefanha@redhat.com> | ||
7 | Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com> | ||
8 | --- | ||
9 | docs/arm-cpu-features.rst | 6 +++--- | ||
10 | docs/virtio-net-failover.rst | 4 ++-- | ||
11 | docs/virtio-pmem.rst | 19 ++++++++++--------- | ||
12 | 3 files changed, 15 insertions(+), 14 deletions(-) | ||
13 | |||
14 | diff --git a/docs/arm-cpu-features.rst b/docs/arm-cpu-features.rst | ||
15 | index XXXXXXX..XXXXXXX 100644 | ||
16 | --- a/docs/arm-cpu-features.rst | ||
17 | +++ b/docs/arm-cpu-features.rst | ||
18 | @@ -XXX,XX +XXX,XX @@ CPU type is possible with the `query-cpu-model-expansion` QMP command. | ||
19 | Below are some examples where `scripts/qmp/qmp-shell` (see the top comment | ||
20 | block in the script for usage) is used to issue the QMP commands. | ||
21 | |||
22 | -(1) Determine which CPU features are available for the `max` CPU type | ||
23 | - (Note, we started QEMU with qemu-system-aarch64, so `max` is | ||
24 | - implementing the ARMv8-A reference manual in this case):: | ||
25 | +1. Determine which CPU features are available for the `max` CPU type | ||
26 | + (Note, we started QEMU with qemu-system-aarch64, so `max` is | ||
27 | + implementing the ARMv8-A reference manual in this case):: | ||
28 | |||
29 | (QEMU) query-cpu-model-expansion type=full model={"name":"max"} | ||
30 | { "return": { | ||
31 | diff --git a/docs/virtio-net-failover.rst b/docs/virtio-net-failover.rst | ||
32 | index XXXXXXX..XXXXXXX 100644 | ||
33 | --- a/docs/virtio-net-failover.rst | ||
34 | +++ b/docs/virtio-net-failover.rst | ||
35 | @@ -XXX,XX +XXX,XX @@ | ||
36 | -======================== | ||
37 | +====================================== | ||
38 | QEMU virtio-net standby (net_failover) | ||
39 | -======================== | ||
40 | +====================================== | ||
41 | |||
42 | This document explains the setup and usage of virtio-net standby feature which | ||
43 | is used to create a net_failover pair of devices. | ||
44 | diff --git a/docs/virtio-pmem.rst b/docs/virtio-pmem.rst | ||
45 | index XXXXXXX..XXXXXXX 100644 | ||
46 | --- a/docs/virtio-pmem.rst | ||
47 | +++ b/docs/virtio-pmem.rst | ||
48 | @@ -XXX,XX +XXX,XX @@ virtio pmem usage | ||
49 | ----------------- | ||
50 | |||
51 | A virtio pmem device backed by a memory-backend-file can be created on | ||
52 | - the QEMU command line as in the following example: | ||
53 | + the QEMU command line as in the following example:: | ||
54 | |||
55 | - -object memory-backend-file,id=mem1,share,mem-path=./virtio_pmem.img,size=4G | ||
56 | - -device virtio-pmem-pci,memdev=mem1,id=nv1 | ||
57 | + -object memory-backend-file,id=mem1,share,mem-path=./virtio_pmem.img,size=4G | ||
58 | + -device virtio-pmem-pci,memdev=mem1,id=nv1 | ||
59 | |||
60 | - where: | ||
61 | - - "object memory-backend-file,id=mem1,share,mem-path=<image>, size=<image size>" | ||
62 | - creates a backend file with the specified size. | ||
63 | + where: | ||
64 | |||
65 | - - "device virtio-pmem-pci,id=nvdimm1,memdev=mem1" creates a virtio pmem | ||
66 | - pci device whose storage is provided by above memory backend device. | ||
67 | + - "object memory-backend-file,id=mem1,share,mem-path=<image>, size=<image size>" | ||
68 | + creates a backend file with the specified size. | ||
69 | + | ||
70 | + - "device virtio-pmem-pci,id=nvdimm1,memdev=mem1" creates a virtio pmem | ||
71 | + pci device whose storage is provided by above memory backend device. | ||
72 | |||
73 | Multiple virtio pmem devices can be created if multiple pairs of "-object" | ||
74 | and "-device" are provided. | ||
75 | @@ -XXX,XX +XXX,XX @@ memory backing has to be added via 'object_add'; afterwards, the virtio | ||
76 | pmem device can be added via 'device_add'. | ||
77 | |||
78 | For example, the following commands add another 4GB virtio pmem device to | ||
79 | -the guest: | ||
80 | +the guest:: | ||
81 | |||
82 | (qemu) object_add memory-backend-file,id=mem2,share=on,mem-path=virtio_pmem2.img,size=4G | ||
83 | (qemu) device_add virtio-pmem-pci,id=virtio_pmem2,memdev=mem2 | ||
84 | -- | ||
85 | 2.23.0 | ||
86 | |||
87 | -- | ||
88 | libvir-list mailing list | ||
89 | libvir-list@redhat.com | ||
90 | https://www.redhat.com/mailman/listinfo/libvir-list | diff view generated by jsdifflib |
1 | From: Nishanth Aravamudan <naravamudan@digitalocean.com> | 1 | From: Li Hangjing <lihangjing@baidu.com> |
---|---|---|---|
2 | 2 | ||
3 | In ed6e2161 ("linux-aio: properly bubble up errors from initialzation"), | 3 | When the number of a virtio-blk device's virtqueues is larger than |
4 | I only added a bdrv_attach_aio_context callback for the bdrv_file | 4 | BITS_PER_LONG, the out-of-bounds access to bitmap[ ] will occur. |
5 | driver. There are several other drivers that use the shared | ||
6 | aio_plug callback, though, and they will trip the assertion added to | ||
7 | aio_get_linux_aio because they did not call aio_setup_linux_aio first. | ||
8 | Add the appropriate callback definition to the affected driver | ||
9 | definitions. | ||
10 | 5 | ||
11 | Fixes: ed6e2161 ("linux-aio: properly bubble up errors from initialization") | 6 | Fixes: e21737ab15 ("virtio-blk: multiqueue batch notify") |
12 | Reported-by: Farhan Ali <alifm@linux.ibm.com> | 7 | Cc: qemu-stable@nongnu.org |
13 | Signed-off-by: Nishanth Aravamudan <naravamudan@digitalocean.com> | ||
14 | Reviewed-by: John Snow <jsnow@redhat.com> | ||
15 | Message-id: 20180718211256.29774-1-naravamudan@digitalocean.com | ||
16 | Cc: Eric Blake <eblake@redhat.com> | ||
17 | Cc: Kevin Wolf <kwolf@redhat.com> | ||
18 | Cc: John Snow <jsnow@redhat.com> | ||
19 | Cc: Max Reitz <mreitz@redhat.com> | ||
20 | Cc: Stefan Hajnoczi <stefanha@redhat.com> | 8 | Cc: Stefan Hajnoczi <stefanha@redhat.com> |
21 | Cc: Fam Zheng <famz@redhat.com> | 9 | Signed-off-by: Li Hangjing <lihangjing@baidu.com> |
22 | Cc: Paolo Bonzini <pbonzini@redhat.com> | 10 | Reviewed-by: Xie Yongji <xieyongji@baidu.com> |
23 | Cc: qemu-block@nongnu.org | 11 | Reviewed-by: Chai Wen <chaiwen@baidu.com> |
24 | Cc: qemu-devel@nongnu.org | 12 | Message-id: 20191216023050.48620-1-lihangjing@baidu.com |
13 | Message-Id: <20191216023050.48620-1-lihangjing@baidu.com> | ||
25 | Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com> | 14 | Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com> |
26 | --- | 15 | --- |
27 | block/file-posix.c | 3 +++ | 16 | hw/block/dataplane/virtio-blk.c | 2 +- |
28 | 1 file changed, 3 insertions(+) | 17 | 1 file changed, 1 insertion(+), 1 deletion(-) |
29 | 18 | ||
30 | diff --git a/block/file-posix.c b/block/file-posix.c | 19 | diff --git a/hw/block/dataplane/virtio-blk.c b/hw/block/dataplane/virtio-blk.c |
31 | index XXXXXXX..XXXXXXX 100644 | 20 | index XXXXXXX..XXXXXXX 100644 |
32 | --- a/block/file-posix.c | 21 | --- a/hw/block/dataplane/virtio-blk.c |
33 | +++ b/block/file-posix.c | 22 | +++ b/hw/block/dataplane/virtio-blk.c |
34 | @@ -XXX,XX +XXX,XX @@ static BlockDriver bdrv_host_device = { | 23 | @@ -XXX,XX +XXX,XX @@ static void notify_guest_bh(void *opaque) |
35 | .bdrv_refresh_limits = raw_refresh_limits, | 24 | memset(s->batch_notify_vqs, 0, sizeof(bitmap)); |
36 | .bdrv_io_plug = raw_aio_plug, | 25 | |
37 | .bdrv_io_unplug = raw_aio_unplug, | 26 | for (j = 0; j < nvqs; j += BITS_PER_LONG) { |
38 | + .bdrv_attach_aio_context = raw_aio_attach_aio_context, | 27 | - unsigned long bits = bitmap[j]; |
39 | 28 | + unsigned long bits = bitmap[j / BITS_PER_LONG]; | |
40 | .bdrv_co_truncate = raw_co_truncate, | 29 | |
41 | .bdrv_getlength = raw_getlength, | 30 | while (bits != 0) { |
42 | @@ -XXX,XX +XXX,XX @@ static BlockDriver bdrv_host_cdrom = { | 31 | unsigned i = j + ctzl(bits); |
43 | .bdrv_refresh_limits = raw_refresh_limits, | ||
44 | .bdrv_io_plug = raw_aio_plug, | ||
45 | .bdrv_io_unplug = raw_aio_unplug, | ||
46 | + .bdrv_attach_aio_context = raw_aio_attach_aio_context, | ||
47 | |||
48 | .bdrv_co_truncate = raw_co_truncate, | ||
49 | .bdrv_getlength = raw_getlength, | ||
50 | @@ -XXX,XX +XXX,XX @@ static BlockDriver bdrv_host_cdrom = { | ||
51 | .bdrv_refresh_limits = raw_refresh_limits, | ||
52 | .bdrv_io_plug = raw_aio_plug, | ||
53 | .bdrv_io_unplug = raw_aio_unplug, | ||
54 | + .bdrv_attach_aio_context = raw_aio_attach_aio_context, | ||
55 | |||
56 | .bdrv_co_truncate = raw_co_truncate, | ||
57 | .bdrv_getlength = raw_getlength, | ||
58 | -- | 32 | -- |
59 | 2.17.1 | 33 | 2.23.0 |
60 | 34 | ||
35 | -- | ||
36 | libvir-list mailing list | ||
37 | libvir-list@redhat.com | ||
38 | https://www.redhat.com/mailman/listinfo/libvir-list | ||
61 | 39 | diff view generated by jsdifflib |