<feed xmlns='http://www.w3.org/2005/Atom'>
<title>bwlp/qemu.git/block/export/vhost-user-blk-server.c, branch spice_video_codecs</title>
<subtitle>Experimental fork of QEMU with video encoding patches</subtitle>
<id>https://git.openslx.org/bwlp/qemu.git/atom/block/export/vhost-user-blk-server.c?h=spice_video_codecs</id>
<link rel='self' href='https://git.openslx.org/bwlp/qemu.git/atom/block/export/vhost-user-blk-server.c?h=spice_video_codecs'/>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/'/>
<updated>2022-06-24T15:07:06+00:00</updated>
<entry>
<title>vduse-blk: Add serial option</title>
<updated>2022-06-24T15:07:06+00:00</updated>
<author>
<name>Xie Yongji</name>
</author>
<published>2022-06-14T05:15:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=0862a087fd710a6c7ad4ea01d35309686e54e202'/>
<id>urn:sha1:0862a087fd710a6c7ad4ea01d35309686e54e202</id>
<content type='text'>
Add a 'serial' option to allow user to specify this value
explicitly. And the default value is changed to an empty
string as what we did in "hw/block/virtio-blk.c".

Signed-off-by: Xie Yongji &lt;xieyongji@bytedance.com&gt;
Message-Id: &lt;20220614051532.92-6-xieyongji@bytedance.com&gt;
Signed-off-by: Kevin Wolf &lt;kwolf@redhat.com&gt;
</content>
</entry>
<entry>
<title>block/export: Abstract out the logic of virtio-blk I/O process</title>
<updated>2022-06-24T15:07:06+00:00</updated>
<author>
<name>Xie Yongji</name>
</author>
<published>2022-05-23T08:46:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=5c368029703da5f16dd2bbc4308c4486e74c1aa3'/>
<id>urn:sha1:5c368029703da5f16dd2bbc4308c4486e74c1aa3</id>
<content type='text'>
Abstract the common logic of virtio-blk I/O process to a function
named virtio_blk_process_req(). It's needed for the following commit.

Signed-off-by: Xie Yongji &lt;xieyongji@bytedance.com&gt;
Message-Id: &lt;20220523084611.91-4-xieyongji@bytedance.com&gt;
Reviewed-by: Stefan Hajnoczi &lt;stefanha@redhat.com&gt;
Signed-off-by: Kevin Wolf &lt;kwolf@redhat.com&gt;
</content>
</entry>
<entry>
<title>block/export: Fix incorrect length passed to vu_queue_push()</title>
<updated>2022-06-24T15:07:06+00:00</updated>
<author>
<name>Xie Yongji</name>
</author>
<published>2022-05-23T08:46:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=8e7fd6f623fb8f6c6eb9b456d9221d4c8226f3d5'/>
<id>urn:sha1:8e7fd6f623fb8f6c6eb9b456d9221d4c8226f3d5</id>
<content type='text'>
Now the req-&gt;size is set to the correct value only
when handling VIRTIO_BLK_T_GET_ID request. This patch
fixes it.

Signed-off-by: Xie Yongji &lt;xieyongji@bytedance.com&gt;
Message-Id: &lt;20220523084611.91-3-xieyongji@bytedance.com&gt;
Reviewed-by: Stefan Hajnoczi &lt;stefanha@redhat.com&gt;
Signed-off-by: Kevin Wolf &lt;kwolf@redhat.com&gt;
</content>
</entry>
<entry>
<title>block: get rid of blk-&gt;guest_block_size</title>
<updated>2022-06-24T15:07:06+00:00</updated>
<author>
<name>Stefan Hajnoczi</name>
</author>
<published>2022-05-18T13:09:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=1ab5096b3a9790f28be0399f8642b8cebd3529e0'/>
<id>urn:sha1:1ab5096b3a9790f28be0399f8642b8cebd3529e0</id>
<content type='text'>
Commit 1b7fd729559c ("block: rename buffer_alignment to
guest_block_size") noted:

  At this point, the field is set by the device emulation, but completely
  ignored by the block layer.

The last time the value of buffer_alignment/guest_block_size was
actually used was before commit 339064d50639 ("block: Don't use guest
sector size for qemu_blockalign()").

This value has not been used since 2013. Get rid of it.

Cc: Xie Yongji &lt;xieyongji@bytedance.com&gt;
Signed-off-by: Stefan Hajnoczi &lt;stefanha@redhat.com&gt;
Message-Id: &lt;20220518130945.2657905-1-stefanha@redhat.com&gt;
Reviewed-by: Paul Durrant &lt;paul@xen.org&gt;
Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
Reviewed-by: Alberto Faria &lt;afaria@redhat.com&gt;
Signed-off-by: Kevin Wolf &lt;kwolf@redhat.com&gt;
</content>
</entry>
<entry>
<title>block/export: Fix vhost-user-blk shutdown with requests in flight</title>
<updated>2022-02-01T12:49:15+00:00</updated>
<author>
<name>Kevin Wolf</name>
</author>
<published>2022-01-25T15:14:35+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=520d8b40e898158bc9a2b416d1cbdb44d2260bc7'/>
<id>urn:sha1:520d8b40e898158bc9a2b416d1cbdb44d2260bc7</id>
<content type='text'>
The vhost-user-blk export runs requests asynchronously in their own
coroutine. When the vhost connection goes away and we want to stop the
vhost-user server, we need to wait for these coroutines to stop before
we can unmap the shared memory. Otherwise, they would still access the
unmapped memory and crash.

This introduces a refcount to VuServer which is increased when spawning
a new request coroutine and decreased before the coroutine exits. The
memory is only unmapped when the refcount reaches zero.

Signed-off-by: Kevin Wolf &lt;kwolf@redhat.com&gt;
Message-Id: &lt;20220125151435.48792-1-kwolf@redhat.com&gt;
Signed-off-by: Kevin Wolf &lt;kwolf@redhat.com&gt;
</content>
</entry>
<entry>
<title>block/export: improve vu_blk_sect_range_ok()</title>
<updated>2021-05-18T09:08:13+00:00</updated>
<author>
<name>Stefan Hajnoczi</name>
</author>
<published>2021-03-31T14:27:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=1b0b2e6d06c26185ecc820e868e025c894f979f7'/>
<id>urn:sha1:1b0b2e6d06c26185ecc820e868e025c894f979f7</id>
<content type='text'>
The checks in vu_blk_sect_range_ok() assume VIRTIO_BLK_SECTOR_SIZE is
equal to BDRV_SECTOR_SIZE. This is true, but let's add a
QEMU_BUILD_BUG_ON() to make it explicit.

We might as well check that the request buffer size is a multiple of
VIRTIO_BLK_SECTOR_SIZE while we're at it.

Suggested-by: Max Reitz &lt;mreitz@redhat.com&gt;
Signed-off-by: Stefan Hajnoczi &lt;stefanha@redhat.com&gt;
Message-Id: &lt;20210331142727.391465-1-stefanha@redhat.com&gt;
Reviewed-by: Eric Blake &lt;eblake@redhat.com&gt;
Signed-off-by: Kevin Wolf &lt;kwolf@redhat.com&gt;
</content>
</entry>
<entry>
<title>block/export: disable VHOST_USER_PROTOCOL_F_INFLIGHT_SHMFD for now</title>
<updated>2021-03-19T09:15:06+00:00</updated>
<author>
<name>Stefan Hajnoczi</name>
</author>
<published>2021-03-09T09:41:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=6f4b1996b4cdc6b745bebae737c250f08c1ad965'/>
<id>urn:sha1:6f4b1996b4cdc6b745bebae737c250f08c1ad965</id>
<content type='text'>
The vhost-user in-flight shmfd feature has not been tested with
qemu-storage-daemon's vhost-user-blk server. Disable this optional
feature for now because it requires MFD_ALLOW_SEALING, which is not
available in some CI environments.

If we need this feature in the future it can be re-enabled after
testing.

Reported-by: Peter Maydell &lt;peter.maydell@linaro.org&gt;
Cc: Kevin Wolf &lt;kwolf@redhat.com&gt;
Signed-off-by: Stefan Hajnoczi &lt;stefanha@redhat.com&gt;
Message-Id: &lt;20210309094106.196911-2-stefanha@redhat.com&gt;
Signed-off-by: Kevin Wolf &lt;kwolf@redhat.com&gt;
</content>
</entry>
<entry>
<title>block/export: port virtio-blk read/write range check</title>
<updated>2021-03-08T13:56:54+00:00</updated>
<author>
<name>Stefan Hajnoczi</name>
</author>
<published>2021-02-23T14:46:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=05ae4e674e3d47342a7660ae7bc55b393e09f4c7'/>
<id>urn:sha1:05ae4e674e3d47342a7660ae7bc55b393e09f4c7</id>
<content type='text'>
Check that the sector number and byte count are valid.

Signed-off-by: Stefan Hajnoczi &lt;stefanha@redhat.com&gt;
Message-Id: &lt;20210223144653.811468-13-stefanha@redhat.com&gt;
Signed-off-by: Kevin Wolf &lt;kwolf@redhat.com&gt;
</content>
</entry>
<entry>
<title>block/export: port virtio-blk discard/write zeroes input validation</title>
<updated>2021-03-08T13:56:54+00:00</updated>
<author>
<name>Stefan Hajnoczi</name>
</author>
<published>2021-02-23T14:46:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=db4eadf9f10e19f864d70d1df3a90fbda31b8c06'/>
<id>urn:sha1:db4eadf9f10e19f864d70d1df3a90fbda31b8c06</id>
<content type='text'>
Validate discard/write zeroes the same way we do for virtio-blk. Some of
these checks are mandated by the VIRTIO specification, others are
internal to QEMU.

Signed-off-by: Stefan Hajnoczi &lt;stefanha@redhat.com&gt;
Message-Id: &lt;20210223144653.811468-11-stefanha@redhat.com&gt;
Signed-off-by: Kevin Wolf &lt;kwolf@redhat.com&gt;
</content>
</entry>
<entry>
<title>block/export: fix vhost-user-blk export sector number calculation</title>
<updated>2021-03-08T13:56:54+00:00</updated>
<author>
<name>Stefan Hajnoczi</name>
</author>
<published>2021-02-23T14:46:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=e44362ce317bcc46d409ed6c4a5ed2b46804bcbf'/>
<id>urn:sha1:e44362ce317bcc46d409ed6c4a5ed2b46804bcbf</id>
<content type='text'>
The driver is supposed to honor the blk_size field but the protocol
still uses 512-byte sector numbers. It is incorrect to multiply
req-&gt;sector_num by blk_size.

VIRTIO 1.1 5.2.5 Device Initialization says:

  blk_size can be read to determine the optimal sector size for the
  driver to use. This does not affect the units used in the protocol
  (always 512 bytes), but awareness of the correct value can affect
  performance.

Fixes: 3578389bcf76c824a5d82e6586a6f0c71e56f2aa ("block/export: vhost-user block device backend server")
Signed-off-by: Stefan Hajnoczi &lt;stefanha@redhat.com&gt;
Message-Id: &lt;20210223144653.811468-10-stefanha@redhat.com&gt;
Signed-off-by: Kevin Wolf &lt;kwolf@redhat.com&gt;
</content>
</entry>
</feed>
