Re: [PATCH v2] block/file-posix: optimize append write

2024-10-21 Thread Stefan Hajnoczi
On Mon, Oct 21, 2024 at 09:32:50PM +0900, Damien Le Moal wrote: > On 10/21/24 20:08, Kevin Wolf wrote: > > Am 20.10.2024 um 03:03 hat Damien Le Moal geschrieben: > >> On 10/18/24 23:37, Kevin Wolf wrote: > >>> Am 04.10.2024 um 12:41 hat Sam Li geschrieben: > When the file-posix driver emulates

[PULL 0/1] Block patches

2024-09-17 Thread Stefan Hajnoczi
The following changes since commit ea9cdbcf3a0b8d5497cddf87990f1b39d8f3bb0a: Merge tag 'hw-misc-20240913' of https://github.com/philmd/qemu into staging (2024-09-15 18:27:40 +0100) are available in the Git repository at: https://gitlab.com/stefanha/qemu.git tags/block-pull-request for you

[PULL 1/1] hw/block: fix uint32 overflow

2024-09-17 Thread Stefan Hajnoczi
From: Dmitry Frolov The product bs->bl.zone_size * (bs->bl.nr_zones - 1) may overflow uint32. Found by Linux Verification Center (linuxtesting.org) with SVACE. Signed-off-by: Dmitry Frolov Message-id: 20240917080356.270576-2-fro...@swemel.ru Signed-off-by: Stefan Hajnoczi --- hw

Re: [PATCH] hw/block: fix uint32 overflow

2024-09-17 Thread Stefan Hajnoczi
On Tue, Sep 17, 2024 at 11:03:18AM +0300, Dmitry Frolov wrote: > The product bs->bl.zone_size * (bs->bl.nr_zones - 1) may overflow > uint32. > > Found by Linux Verification Center (linuxtesting.org) with SVACE. > > Signed-off-by: Dmitry Frolov > --- > hw/block/virtio-blk.c | 2 +- > 1 file chan

Re: [PATCH v12 09/10] hw/nvme: add reservation protocal command

2024-09-13 Thread Stefan Hajnoczi
On Thu, Sep 12, 2024 at 07:19:16PM +0800, Changqi Lu wrote: > +static int nvme_read_reservation_cb(NvmeReadReservation *reservation) > +{ > +int rc; > +NvmeReservationStatus *nvme_status; > +NvmeRequest *req = reservation->req; > +NvmeCtrl *n = req->sq->ctrl; > +NvmeResvKeys *ke

Re: [PATCH v11 09/10] hw/nvme: add reservation protocal command

2024-09-10 Thread Stefan Hajnoczi
On Mon, Sep 09, 2024 at 07:34:52PM +0800, Changqi Lu wrote: > Add reservation acquire, reservation register, > reservation release and reservation report commands > in the nvme device layer. > > By introducing these commands, this enables the nvme > device to perform reservation-related tasks, inc

Re: [PATCH for-9.1] nbd/server: CVE-2024-7409: Avoid use-after-free when closing server

2024-08-26 Thread Stefan Hajnoczi
7;/path/to/build/qemu-nbd -L -k /tmp/nbd-sock') > > > > def test(): > > sst = Thread(target=start_stop) > > sst.start() > > nlt = Thread(target=nbd_list) > > nlt.start() > > > > sst.join() > > nlt.join() > > &g

[PULL 0/1] Block patches

2024-08-12 Thread Stefan Hajnoczi
The following changes since commit 0f397dcfecc9211d12c2c720c01eb32f0eaa7d23: Merge tag 'pull-nbd-2024-08-08' of https://repo.or.cz/qemu/ericb into staging (2024-08-09 08:40:37 +1000) are available in the Git repository at: https://gitlab.com/stefanha/qemu.git tags/block-pull-request for yo

[PULL 1/1] block/blkio: use FUA flag on write zeroes only if supported

2024-08-12 Thread Stefan Hajnoczi
m Signed-off-by: Stefan Hajnoczi --- meson.build | 2 ++ block/blkio.c | 6 -- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/meson.build b/meson.build index c2a050b844..81ecd4bae7 100644 --- a/meson.build +++ b/meson.build @@ -2305,6 +2305,8 @@ config_host_data.set('CONFIG

Re: [PATCH] block/blkio: use FUA flag on write zeroes only if supported

2024-08-12 Thread Stefan Hajnoczi
On Thu, Aug 08, 2024 at 10:05:45AM +0200, Stefano Garzarella wrote: > libblkio supports BLKIO_REQ_FUA with write zeros requests only since > version 1.4.0, so let's inform the block layer that the blkio driver > supports it only in this case. Otherwise we can have runtime errors > as reported in ht

Re: [PATCH 2/2] qemu-img: CVE-XXX Sanitize untrusted output from NBD server

2024-08-07 Thread Stefan Hajnoczi
On Fri, Aug 02, 2024 at 11:41:35PM +0200, Philippe Mathieu-Daudé wrote: > On 2/8/24 21:26, Eric Blake wrote: > > Error messages from an NBD server must be treated as untrusted; a > > malicious server can inject escape sequences to try and trigger RCE > > flaws via escape sequences to whatever termi

[PULL 1/1] util/async.c: Forbid negative min/max in aio_context_set_thread_pool_params()

2024-07-25 Thread Stefan Hajnoczi
olves: Coverity CID 1547605 Signed-off-by: Peter Maydell Reviewed-by: Philippe Mathieu-Daudé Message-id: 20240723150927.1396456-1-peter.mayd...@linaro.org Signed-off-by: Stefan Hajnoczi --- util/async.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/util/async.c b/util/as

[PULL 0/1] Block patches

2024-07-25 Thread Stefan Hajnoczi
The following changes since commit 029e13a8a56a2931e7c24c0db52ae7256b932cb0: Merge tag 'bsd-user-for-9.1-pull-request' of gitlab.com:bsdimp/qemu into staging (2024-07-25 09:53:57 +1000) are available in the Git repository at: https://gitlab.com/stefanha/qemu.git tags/block-pull-request for

Re: [PATCH] util/async.c: Forbid negative min/max in aio_context_set_thread_pool_params()

2024-07-25 Thread Stefan Hajnoczi
On Tue, Jul 23, 2024 at 04:09:27PM +0100, Peter Maydell wrote: > aio_context_set_thread_pool_params() takes two int64_t arguments to > set the minimum and maximum number of threads in the pool. We do > some bounds checking on these, but we don't catch the case where the > inputs are negative. Thi

Re: [PATCH v8 09/10] hw/nvme: add reservation protocal command

2024-07-11 Thread Stefan Hajnoczi
On Tue, Jul 09, 2024 at 10:47:05AM +0800, Changqi Lu wrote: > Add reservation acquire, reservation register, > reservation release and reservation report commands > in the nvme device layer. > > By introducing these commands, this enables the nvme > device to perform reservation-related tasks, inc

Re: [PATCH v8 10/10] block/iscsi: add persistent reservation in/out driver

2024-07-11 Thread Stefan Hajnoczi
_co_pr_clear and bdrv_co_pr_preempt. > > Signed-off-by: Changqi Lu > Signed-off-by: zhenwei pi > --- > block/iscsi.c | 425 ++ > 1 file changed, 425 insertions(+) Aside from the g_free() issue I commented on: Reviewed-by: St

Re: [PATCH v8 10/10] block/iscsi: add persistent reservation in/out driver

2024-07-11 Thread Stefan Hajnoczi
On Tue, Jul 09, 2024 at 10:47:06AM +0800, Changqi Lu wrote: > Add persistent reservation in/out operations for iscsi driver. > The following methods are implemented: bdrv_co_pr_read_keys, > bdrv_co_pr_read_reservation, bdrv_co_pr_register, bdrv_co_pr_reserve, > bdrv_co_pr_release, bdrv_co_pr_clear

Re: [PATCH v8 05/10] hw/scsi: add persistent reservation in/out api for scsi device

2024-07-11 Thread Stefan Hajnoczi
ent manner. > > Signed-off-by: Changqi Lu > Signed-off-by: zhenwei pi > --- > hw/scsi/scsi-disk.c | 368 > 1 file changed, 368 insertions(+) Paolo: Please review this patch, I'm not familiar enough with hw/scsi/. Reviewed-by: Stefan Hajnoczi signature.asc Description: PGP signature

Re: [PATCH v8 08/10] hw/nvme: enable ONCS and rescap function

2024-07-11 Thread Stefan Hajnoczi
Reviewed-by: Klaus Jensen > Signed-off-by: Changqi Lu > Signed-off-by: zhenwei pi > --- > hw/nvme/ctrl.c | 3 ++- > hw/nvme/ns.c | 5 + > include/block/nvme.h | 2 +- > 3 files changed, 8 insertions(+), 2 deletions(-) Reviewed-by: Stefan Hajnoczi signature.asc Description: PGP signature

[PULL 0/2] Block patches

2024-07-11 Thread Stefan Hajnoczi
The following changes since commit 59084feb256c617063e0dbe7e64821ae8852d7cf: Merge tag 'pull-aspeed-20240709' of https://github.com/legoater/qemu into staging (2024-07-09 07:13:55 -0700) are available in the Git repository at: https://gitlab.com/stefanha/qemu.git tags/block-pull-request fo

[PULL 1/2] qemu-iotest/245: Add missing discard=unmap

2024-07-11 Thread Stefan Hajnoczi
From: Nir Soffer The test works since we punch holes by default even when opening the image without discard=on or discard=unmap. Fix the test to enable discard. Signed-off-by: Stefan Hajnoczi --- tests/qemu-iotests/245 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests

[PULL 2/2] Consider discard option when writing zeros

2024-07-11 Thread Stefan Hajnoczi
https://lists.nongnu.org/archive/html/qemu-discuss/2024-06/msg3.html Signed-off-by: Nir Soffer Message-id: 20240628202058.1964986-3-nsof...@redhat.com Signed-off-by: Stefan Hajnoczi --- block/io.c| 9 +- tests/qemu-iotests/tests/write-zeroes-unmap

Re: [PATCH v3 0/2] Consider discard option when writing zeros

2024-07-11 Thread Stefan Hajnoczi
On Fri, Jun 28, 2024 at 11:20:56PM +0300, Nir Soffer wrote: > Punch holes only when the image is opened with discard=on or discard=unmap. > > Tested by: > - new write-zeroes-unmap iotest on xfs, ext4, and tmpfs > - tests/qemu-iotests/check -raw > - tests/qemu-iotests/check -qcow2 > > Changes sinc

Re: [PATCH v3 2/2] Consider discard option when writing zeros

2024-07-11 Thread Stefan Hajnoczi
| 9 +- > tests/qemu-iotests/tests/write-zeroes-unmap | 127 ++ > .../qemu-iotests/tests/write-zeroes-unmap.out | 81 +++ > 3 files changed, 213 insertions(+), 4 deletions(-) > create mode 100755 tests/qemu-iotests/tests/write-zeroes-unmap > create

Re: [PATCH v3 1/2] qemu-iotest/245: Add missing discard=unmap

2024-07-11 Thread Stefan Hajnoczi
ion(+), 1 deletion(-) Reviewed-by: Stefan Hajnoczi signature.asc Description: PGP signature

Re: [PATCH 0/2] block/graph-lock: Make WITH_GRAPH_RDLOCK_GUARD() fully checked

2024-07-10 Thread Stefan Hajnoczi
ck > block/graph-lock: Make WITH_GRAPH_RDLOCK_GUARD() fully checked > > include/block/graph-lock.h | 21 ++--- > block/block-copy.c | 4 +++- > meson.build| 14 +- > 3 files changed, 30 insertions(+), 9 deletions(-) >

Re: [PATCH v7 00/10] Support persistent reservation operations

2024-07-08 Thread Stefan Hajnoczi
On Fri, Jul 05, 2024 at 06:56:04PM +0800, Changqi Lu wrote: > Hi, > > Patch v7 has been modified. > Thanks again to Stefan for reviewing the code. > > v6->v7: > - Add buferlen size check at SCSI layer. > - Add pr_cap calculation in bdrv_merge_limits() function at block layer, > so the ugly bs->

Re: [PATCH v7 06/10] block/nvme: add reservation command protocol constants

2024-07-08 Thread Stefan Hajnoczi
angqi Lu > Signed-off-by: zhenwei pi > --- > include/block/nvme.h | 61 > 1 file changed, 61 insertions(+) Reviewed-by: Stefan Hajnoczi signature.asc Description: PGP signature

Re: [PATCH v7 10/10] block/iscsi: add persistent reservation in/out driver

2024-07-08 Thread Stefan Hajnoczi
On Fri, Jul 05, 2024 at 06:56:14PM +0800, Changqi Lu wrote: > Add persistent reservation in/out operations for iscsi driver. > The following methods are implemented: bdrv_co_pr_read_keys, > bdrv_co_pr_read_reservation, bdrv_co_pr_register, bdrv_co_pr_reserve, > bdrv_co_pr_release, bdrv_co_pr_clear

Re: [PATCH v7 08/10] hw/nvme: enable ONCS and rescap function

2024-07-08 Thread Stefan Hajnoczi
ed-off-by: Changqi Lu > Signed-off-by: zhenwei pi > --- > hw/nvme/ctrl.c | 3 ++- > hw/nvme/ns.c | 5 + > include/block/nvme.h | 2 +- > 3 files changed, 8 insertions(+), 2 deletions(-) Reviewed-by: Stefan Hajnoczi signature.asc Description: PGP signature

Re: [PATCH v7 05/10] hw/scsi: add persistent reservation in/out api for scsi device

2024-07-08 Thread Stefan Hajnoczi
On Fri, Jul 05, 2024 at 06:56:09PM +0800, Changqi Lu wrote: > Add persistent reservation in/out operations in the > SCSI device layer. By introducing the persistent > reservation in/out api, this enables the SCSI device > to perform reservation-related tasks, including querying > keys, querying res

Re: [PATCH v6 08/10] hw/nvme: enable ONCS and rescap function

2024-07-05 Thread Stefan Hajnoczi
On Thu, Jul 04, 2024 at 08:20:31PM +0200, Stefan Hajnoczi wrote: > On Thu, Jun 13, 2024 at 03:13:25PM +0800, Changqi Lu wrote: > > This commit enables ONCS to support the reservation > > function at the controller level. Also enables rescap > > function in the namespace by de

Re: [PATCH v6 09/10] hw/nvme: add reservation protocal command

2024-07-04 Thread Stefan Hajnoczi
I will skip this since Klaus Jensen's review is required for NVMe anyway. Stefan signature.asc Description: PGP signature

Re: [PATCH v6 05/10] hw/scsi: add persistent reservation in/out api for scsi device

2024-07-04 Thread Stefan Hajnoczi
On Thu, Jun 13, 2024 at 03:13:22PM +0800, Changqi Lu wrote: > Add persistent reservation in/out operations in the > SCSI device layer. By introducing the persistent > reservation in/out api, this enables the SCSI device > to perform reservation-related tasks, including querying > keys, querying res

Re: [PATCH v6 10/10] block/iscsi: add persistent reservation in/out driver

2024-07-04 Thread Stefan Hajnoczi
On Thu, Jun 13, 2024 at 03:13:27PM +0800, Changqi Lu wrote: > Add persistent reservation in/out operations for iscsi driver. > The following methods are implemented: bdrv_co_pr_read_keys, > bdrv_co_pr_read_reservation, bdrv_co_pr_register, bdrv_co_pr_reserve, > bdrv_co_pr_release, bdrv_co_pr_clear

Re: [PATCH v6 06/10] block/nvme: add reservation command protocol constants

2024-07-04 Thread Stefan Hajnoczi
On Thu, Jun 13, 2024 at 03:13:23PM +0800, Changqi Lu wrote: > Add constants for the NVMe persistent command protocol. > The constants include the reservation command opcode and > reservation type values defined in section 7 of the NVMe > 2.0 specification. > > Signed-off-by: Changqi Lu > Signed-o

Re: [PATCH v6 08/10] hw/nvme: enable ONCS and rescap function

2024-07-04 Thread Stefan Hajnoczi
On Thu, Jun 13, 2024 at 03:13:25PM +0800, Changqi Lu wrote: > This commit enables ONCS to support the reservation > function at the controller level. Also enables rescap > function in the namespace by detecting the supported reservation > function in the backend driver. > > Signed-off-by: Changqi

Re: [PATCH v6 05/10] hw/scsi: add persistent reservation in/out api for scsi device

2024-07-04 Thread Stefan Hajnoczi
On Thu, Jun 13, 2024 at 03:13:22PM +0800, Changqi Lu wrote: > Add persistent reservation in/out operations in the > SCSI device layer. By introducing the persistent > reservation in/out api, this enables the SCSI device > to perform reservation-related tasks, including querying > keys, querying res

Re: [PATCH v6 04/10] scsi/util: add helper functions for persistent reservation types conversion

2024-06-26 Thread Stefan Hajnoczi
u > Signed-off-by: zhenwei pi > --- > include/scsi/utils.h | 8 + > scsi/utils.c | 81 > 2 files changed, 89 insertions(+) Reviewed-by: Stefan Hajnoczi signature.asc Description: PGP signature

Re: [PATCH v6 03/10] scsi/constant: add persistent reservation in/out protocol constants

2024-06-26 Thread Stefan Hajnoczi
i_proto.h like the rest of the file, but it's okay because constants.h is not kept in sync with the Linux headers. Reviewed-by: Stefan Hajnoczi signature.asc Description: PGP signature

Re: [PATCH v6 02/10] block/raw: add persistent reservation in/out driver

2024-06-26 Thread Stefan Hajnoczi
_co_pr_clear and bdrv_co_pr_preempt. > > Signed-off-by: Changqi Lu > Signed-off-by: zhenwei pi > --- > block/raw-format.c | 56 ++ > 1 file changed, 56 insertions(+) Reviewed-by: Stefan Hajnoczi signature.asc Description: PGP signature

Re: [PATCH v6 01/10] block: add persistent reservation in/out api

2024-06-26 Thread Stefan Hajnoczi
| 40 +++ > include/block/block-io.h | 20 ++ > include/block/block_int-common.h | 84 +++ > include/sysemu/block-backend-io.h | 24 ++ > 6 files changed, 734 insertions(+) Reviewed-by: Stefan Hajnoczi signature.asc Description: PGP signature

Re: [PATCH v2] Consider discard option when writing zeros

2024-06-24 Thread Stefan Hajnoczi
On Wed, Jun 19, 2024 at 08:43:25PM +0300, Nir Soffer wrote: > Tested using: Hi Nir, This looks like a good candidate for the qemu-iotests test suite. Adding it to the automated tests will protect against future regressions. Please add the script and the expected output to tests/qemu-iotests/test/

Re: Re: [PATCH v5 00/10] Support persistent reservation operations

2024-06-11 Thread Stefan Hajnoczi
ented in subsequent patches. Thanks for explaining! Stefan > > On 2024/6/11 01:18, Stefan Hajnoczi wrote: > > On Thu, Jun 06, 2024 at 08:24:34PM +0800, Changqi Lu wrote: > >> Hi, > >> > >> patchv5 has been modified. > >> > >> Sincerely ho

Re: [PATCH v5 01/10] block: add persistent reservation in/out api

2024-06-10 Thread Stefan Hajnoczi
On Thu, Jun 06, 2024 at 08:24:35PM +0800, Changqi Lu wrote: > Add persistent reservation in/out operations > at the block level. The following operations > are included: > > - read_keys:retrieves the list of registered keys. > - read_reservation: retrieves the current reservation status. >

Re: [PATCH v5 00/10] Support persistent reservation operations

2024-06-10 Thread Stefan Hajnoczi
On Thu, Jun 06, 2024 at 08:24:34PM +0800, Changqi Lu wrote: > Hi, > > patchv5 has been modified. > > Sincerely hope that everyone can help review the > code and provide some suggestions. > > v4->v5: > - Fixed a memory leak bug at hw/nvme/ctrl.c. > > v3->v4: > - At the nvme layer, the two patch

Re: [PATCH] Use "void *" as parameter for functions that are used for aio_set_event_notifier()

2024-05-29 Thread Stefan Hajnoczi
On Wed, May 29, 2024 at 07:49:48PM +0200, Thomas Huth wrote: > aio_set_event_notifier() and aio_set_event_notifier_poll() in > util/aio-posix.c and util/aio-win32.c are casting function pointers of > functions that take an "EventNotifier *" pointer as parameter to function > pointers that take a "v

Re: [PATCH 0/2] block/crypto: do not require number of threads upfront

2024-05-29 Thread Stefan Hajnoczi
On Wed, May 29, 2024 at 06:50:34PM +0200, Kevin Wolf wrote: > Am 27.05.2024 um 17:58 hat Stefan Hajnoczi geschrieben: > > The block layer does not know how many threads will perform I/O. It is > > possible > > to exceed the number of threads that is given to qcrypto_block

[PATCH 1/2] block/crypto: create ciphers on demand

2024-05-27 Thread Stefan Hajnoczi
read's argument and allocate ciphers on demand. Reported-by: Qing Wang Buglink: https://issues.redhat.com/browse/RHEL-36159 Signed-off-by: Stefan Hajnoczi --- crypto/blockpriv.h | 12 +++-- crypto/block-luks.c | 3 +- crypto/block-qcow.c | 2 +- crypto/block.c

[PATCH 0/2] block/crypto: do not require number of threads upfront

2024-05-27 Thread Stefan Hajnoczi
arbitrary number of threads. --- Is it secure to store the key in QCryptoBlock? In this series I assumed the answer is yes since the QCryptoBlock's cipher state is equally sensitive, but I'm not familiar with this code or a crypto expert. Stefan Hajnoczi (2): block/crypto: create ciphers

[PATCH 2/2] crypto/block: drop qcrypto_block_open() n_threads argument

2024-05-27 Thread Stefan Hajnoczi
The n_threads argument is no longer used since the previous commit. Remove it. Signed-off-by: Stefan Hajnoczi --- crypto/blockpriv.h | 1 - include/crypto/block.h | 2 -- block/crypto.c | 1 - block/qcow.c | 2 +- block/qcow2.c

Re: [PATCH] qio: Inherit follow_coroutine_ctx across TLS

2024-05-16 Thread Stefan Hajnoczi
LS thread in nbd/server.c, > it is more generic if all qio channels that wrap other channels > inherit the follow status, in the same way that they inherit feature > bits. > > CC: Stefan Hajnoczi > CC: Daniel P. Berrangé > CC: qemu-sta...@nongnu.org > Fixes: https://issues.r

Re: [PATCH 00/20] qapi: new sphinx qapi domain pre-requisites

2024-05-16 Thread Stefan Hajnoczi
pi/visit.py | 9 +- > tests/qapi-schema/doc-empty-section.err | 2 +- > tests/qapi-schema/doc-empty-section.json | 2 +- > tests/qapi-schema/doc-good.json | 18 +- > tests/qapi-schema/doc-good.out| 61 +++--- > tests/qapi

Re: [PATCH v4 00/12] vhost-user: support any POSIX system (tested on macOS, FreeBSD, OpenBSD)

2024-05-09 Thread Stefan Hajnoczi
ests/qtest/vhost-user-blk-test.c | 2 +- > tests/qtest/vhost-user-test.c | 23 > util/vhost-user-server.c | 12 +++ > backends/meson.build | 1 + > hw/block/Kconfig | 2 +- > qemu-options.hx | 13 +++ > util/meson.build | 4 +- > 16 files changed, 305 insertions(+), 28 deletions(-) > create mode 100644 backends/hostmem-shm.c > > -- > 2.45.0 > Acked-by: Stefan Hajnoczi signature.asc Description: PGP signature

Re: [PATCH 5/9] hw/scsi: add persistent reservation in/out api for scsi device

2024-05-09 Thread Stefan Hajnoczi
On Wed, May 08, 2024 at 05:36:25PM +0800, Changqi Lu wrote: > Add persistent reservation in/out operations in the > SCSI device layer. By introducing the persistent > reservation in/out api, this enables the SCSI device > to perform reservation-related tasks, including querying > keys, querying res

Re: [PATCH 0/9] Support persistent reservation operations

2024-05-09 Thread Stefan Hajnoczi
On Wed, May 08, 2024 at 05:36:20PM +0800, Changqi Lu wrote: > Hi, > > I am going to introduce persistent reservation for QEMU block. > There are three parts in this series: > > Firstly, at the block layer, the commit abstracts seven APIs related to > the persistent reservation command. These APIs

Re: [PATCH 7/9] hw/nvme: add helper functions for converting reservation types

2024-05-09 Thread Stefan Hajnoczi
ed-off-by: zhenwei pi > --- > hw/nvme/nvme.h | 40 > 1 file changed, 40 insertions(+) Reviewed-by: Stefan Hajnoczi signature.asc Description: PGP signature

Re: [PATCH 6/9] block/nvme: add reservation command protocol constants

2024-05-09 Thread Stefan Hajnoczi
angqi Lu > Signed-off-by: zhenwei pi > --- > include/block/nvme.h | 30 ++ > 1 file changed, 30 insertions(+) Reviewed-by: Stefan Hajnoczi signature.asc Description: PGP signature

Re: [PATCH 5/9] hw/scsi: add persistent reservation in/out api for scsi device

2024-05-09 Thread Stefan Hajnoczi
On Wed, May 08, 2024 at 05:36:25PM +0800, Changqi Lu wrote: > Add persistent reservation in/out operations in the > SCSI device layer. By introducing the persistent > reservation in/out api, this enables the SCSI device > to perform reservation-related tasks, including querying > keys, querying res

Re: [PATCH 3/9] scsi/constant: add persistent reservation in/out protocol constants

2024-05-09 Thread Stefan Hajnoczi
SCSI Primary Commands-4 (SPC-4) specification. > > Signed-off-by: Changqi Lu > Signed-off-by: zhenwei pi > --- > include/scsi/constants.h | 29 + > 1 file changed, 29 insertions(+) Reviewed-by: Stefan Hajnoczi signature.asc Description: PGP signature

Re: [PATCH 4/9] scsi/util: add helper functions for persistent reservation types conversion

2024-05-09 Thread Stefan Hajnoczi
u > Signed-off-by: zhenwei pi > --- > include/scsi/utils.h | 5 + > scsi/utils.c | 40 > 2 files changed, 45 insertions(+) Reviewed-by: Stefan Hajnoczi signature.asc Description: PGP signature

Re: [PATCH 2/9] block/raw: add persistent reservation in/out driver

2024-05-09 Thread Stefan Hajnoczi
_co_pr_clear and bdrv_co_pr_preempt. > > Signed-off-by: Changqi Lu > Signed-off-by: zhenwei pi > --- > block/raw-format.c | 55 ++ > 1 file changed, 55 insertions(+) Reviewed-by: Stefan Hajnoczi signature.asc Description: PGP signature

Re: [PATCH 1/9] block: add persistent reservation in/out api

2024-05-09 Thread Stefan Hajnoczi
On Wed, May 08, 2024 at 05:36:21PM +0800, Changqi Lu wrote: > Add persistent reservation in/out operations > at the block level. The following operations > are included: > > - read_keys:retrieves the list of registered keys. > - read_reservation: retrieves the current reservation status. >

[PATCH] qemu-io: add cvtnum() error handling for zone commands

2024-05-07 Thread Stefan Hajnoczi
ff-by: Stefan Hajnoczi --- qemu-io-cmds.c | 48 +++- 1 file changed, 47 insertions(+), 1 deletion(-) diff --git a/qemu-io-cmds.c b/qemu-io-cmds.c index f5d7202a13..e2fab57183 100644 --- a/qemu-io-cmds.c +++ b/qemu-io-cmds.c @@ -1739,12 +1739,26 @@ stati

Re: [PULL v2 03/16] block/block-backend: add block layer APIs resembling Linux ZonedBlockDevice ioctls

2024-05-07 Thread Stefan Hajnoczi
On Fri, May 03, 2024 at 01:33:51PM +0100, Peter Maydell wrote: > On Mon, 15 May 2023 at 17:07, Stefan Hajnoczi wrote: > > > > From: Sam Li > > > > Add zoned device option to host_device BlockDriver. It will be presented > > only > > for zoned host b

[PATCH 1/2] Revert "monitor: use aio_co_reschedule_self()"

2024-05-06 Thread Stefan Hajnoczi
everts commit 1f25c172f83704e350c0829438d832384084a74d. Buglink: https://issues.redhat.com/browse/RHEL-34618 Signed-off-by: Stefan Hajnoczi --- qapi/qmp-dispatch.c | 7 +-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/qapi/qmp-dispatch.c b/qapi/qmp-dispatch.c index f3488afeef..176b549473 100644 -

[PATCH 0/2] Revert "monitor: use aio_co_reschedule_self()"

2024-05-06 Thread Stefan Hajnoczi
le_self()") as the root cause. There is a subtlety regarding how qemu_get_current_aio_context() returns qemu_aio_context even though we may be running in iohandler_ctx. Revert commit 1f25c172f837, it was just intended as a code cleanup. Stefan Hajnoczi (2): Revert "monitor: use aio_

[PATCH 2/2] aio: warn about iohandler_ctx special casing

2024-05-06 Thread Stefan Hajnoczi
er to reduce the chance of future bugs. Signed-off-by: Stefan Hajnoczi --- include/block/aio.h | 6 ++ 1 file changed, 6 insertions(+) diff --git a/include/block/aio.h b/include/block/aio.h index 8378553eb9..4ee81936ed 100644 --- a/include/block/aio.h +++ b/include/block/aio.h @@ -629,6 +

Re: [PATCH v2 5/5] monitor: use aio_co_reschedule_self()

2024-05-06 Thread Stefan Hajnoczi
On Fri, May 03, 2024 at 07:33:17PM +0200, Kevin Wolf wrote: > Am 06.02.2024 um 20:06 hat Stefan Hajnoczi geschrieben: > > The aio_co_reschedule_self() API is designed to avoid the race > > condition between scheduling the coroutine in another AioContext and > > yielding. >

[PULL 1/1] hw/ufs: Fix buffer overflow bug

2024-04-29 Thread Stefan Hajnoczi
ted-by: Zheyu Ma Signed-off-by: Jeuk Kim Signed-off-by: Stefan Hajnoczi Message-ID: --- hw/ufs/ufs.c | 8 1 file changed, 8 insertions(+) diff --git a/hw/ufs/ufs.c b/hw/ufs/ufs.c index eccdb852a0..bac78a32bb 100644 --- a/hw/ufs/ufs.c +++ b/hw/ufs/ufs.c @@ -126,6 +126,10 @@ st

[PULL 0/1] Block patches

2024-04-29 Thread Stefan Hajnoczi
The following changes since commit fd87be1dada5672f877e03c2ca8504458292c479: Merge tag 'accel-20240426' of https://github.com/philmd/qemu into staging (2024-04-26 15:28:13 -0700) are available in the Git repository at: https://gitlab.com/stefanha/qemu.git tags/block-pull-request for you to

Re: [PULL 0/1] ufs queue

2024-04-29 Thread Stefan Hajnoczi
On Mon, Apr 29, 2024 at 12:25:37PM +0900, Jeuk Kim wrote: > From: Jeuk Kim > > The following changes since commit fd87be1dada5672f877e03c2ca8504458292c479: > > Merge tag 'accel-20240426' of https://github.com/philmd/qemu into staging > (2024-04-26 15:28:13 -0700) > > are available in the Git

Re: [PATCH v2] tests/unit: Remove debug statements in test-nested-aio-poll.c

2024-04-22 Thread Stefan Hajnoczi
pollOK > > Reviewed-by: Eric Blake > Reviewed-by: Richard Henderson > Signed-off-by: Philippe Mathieu-Daudé > --- > tests/unit/test-nested-aio-poll.c | 7 --- > 1 file changed, 7 deletions(-) Reviewed-by: Stefan Hajnoczi signature.asc Description: PGP signature

[PULL for-9.0 0/1] Block patches

2024-04-04 Thread Stefan Hajnoczi
The following changes since commit 786fd793b81410fb2a28914315e2f05d2ff6733b: Merge tag 'for-upstream' of https://gitlab.com/bonzini/qemu into staging (2024-04-03 12:52:03 +0100) are available in the Git repository at: https://gitlab.com/stefanha/qemu.git tags/block-pull-request for you to

[PULL for-9.0 1/1] block/virtio-blk: Fix memory leak from virtio_blk_zone_report

2024-04-04 Thread Stefan Hajnoczi
/block/virtio-blk.c:1157:5 Signed-off-by: Zheyu Ma Message-id: 20240404120040.1951466-1-zheyum...@gmail.com Signed-off-by: Stefan Hajnoczi --- hw/block/virtio-blk.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/hw/block/virtio-blk.c b/hw/block/virtio-blk.c index 92de315f17

Re: [PATCH] block/virtio-blk: Fix memory leak from virtio_blk_zone_report

2024-04-04 Thread Stefan Hajnoczi
On Thu, Apr 04, 2024 at 02:00:40PM +0200, Zheyu Ma wrote: > This modification ensures that in scenarios where the buffer size is > insufficient for a zone report, the function will now properly set an > error status and proceed to a cleanup label, instead of merely > returning. > > The following A

Re: [PATCH 13/19] hw/virtio-blk: fix -Werror=maybe-uninitialized false-positive

2024-04-02 Thread Stefan Hajnoczi
virtio-blk.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) Reviewed-by: Stefan Hajnoczi signature.asc Description: PGP signature

Re: [PATCH 01/19] util/coroutine: fix -Werror=maybe-uninitialized false-positive

2024-04-02 Thread Stefan Hajnoczi
-coroutine.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) Reviewed-by: Stefan Hajnoczi signature.asc Description: PGP signature

bdrv_pad_request() Coverity report

2024-03-27 Thread Stefan Hajnoczi
Hi Fiona, The Coverity static checker sent a report about commit 3f934817c82c ("block/io: accept NULL qiov in bdrv_pad_request"). Please take a look and send a follow-up patch, if necessary: *** CID 1542668: Null pointer dereferences (REVERSE_INULL) /builds/qemu-project/qemu/bloc k/io.c: 1733 i

Re: [PATCH v3 0/4] fix two edge cases related to stream block jobs

2024-03-25 Thread Stefan Hajnoczi
On Fri, Mar 22, 2024 at 10:50:05AM +0100, Fiona Ebner wrote: > Changes in v3: > * Also deal with edge case in bdrv_next_cleanup(). Haven't run > into an actual issue there, but at least the caller in > migration/block.c uses bdrv_nb_sectors() which, while not a > coroutine wra

Re: [PATCH v3 4/4] iotests: add test for stream job with an unaligned prefetch read

2024-03-25 Thread Stefan Hajnoczi
> > .../tests/stream-unaligned-prefetch | 86 +++ > .../tests/stream-unaligned-prefetch.out | 5 ++ > 2 files changed, 91 insertions(+) > create mode 100755 tests/qemu-iotests/tests/stream-unaligned-prefetch > create mode 100644 tests/qemu-iote

Re: [PATCH v3 3/4] block-backend: fix edge case in bdrv_next_cleanup() where BDS associated to BB changes

2024-03-25 Thread Stefan Hajnoczi
lock-backend.c | 11 --- > 1 file changed, 4 insertions(+), 7 deletions(-) Reviewed-by: Stefan Hajnoczi signature.asc Description: PGP signature

Re: [PATCH v3 2/4] block-backend: fix edge case in bdrv_next() where BDS associated to BB changes

2024-03-25 Thread Stefan Hajnoczi
_locked (job=...) > > #9 job_exit (opaque=...) > > #10 aio_bh_poll (ctx=...) > > #11 aio_poll (ctx=..., blocking=...) > > #12 bdrv_poll_co (s=...) > > #13 bdrv_flush (bs=...) > > #14 bdrv_flush_all () > > #15 do_vm_stop (state=..., send_stop=...) > > #16 vm_shutdown () > > Signed-off-by: Fiona Ebner > --- > > No changes in v3. > New in v2. > > block/block-backend.c | 7 +++ > 1 file changed, 3 insertions(+), 4 deletions(-) Reviewed-by: Stefan Hajnoczi signature.asc Description: PGP signature

Re: [PATCH v3 1/4] block/io: accept NULL qiov in bdrv_pad_request

2024-03-25 Thread Stefan Hajnoczi
> Signed-off-by: Thomas Lamprecht > [FE: do update bytes and offset in any case > add reproducer to commit message] > Signed-off-by: Fiona Ebner > --- > > No changes in v3. > No changes in v2. > > block/io.c | 31 +++ > 1 file changed, 19 insertions(+), 12 deletions(-) Reviewed-by: Stefan Hajnoczi signature.asc Description: PGP signature

Re: [PATCH v1] coroutine: avoid inserting duplicate coroutine to co_queue_wakeup

2024-03-25 Thread Stefan Hajnoczi
On Mon, Mar 25, 2024 at 05:18:50PM +0800, zhuyangyang wrote: > If g_main_loop_run()/aio_poll() is called in the coroutine context, > the pending coroutine may be woken up repeatedly, and the co_queue_wakeup > may be disordered. aio_poll() must not be called from coroutine context: bool no_corou

[PULL for-9.0 1/1] coroutine: reserve 5,000 mappings

2024-03-21 Thread Stefan Hajnoczi
pool size") Signed-off-by: Stefan Hajnoczi Reviewed-by: Daniel P. Berrangé Message-id: 20240320181232.1464819-1-stefa...@redhat.com Signed-off-by: Stefan Hajnoczi --- util/qemu-coroutine.c | 15 ++- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/util/qemu-cor

[PULL for-9.0 0/1] Block patches

2024-03-21 Thread Stefan Hajnoczi
ool sizing change for -rc0 and still needed to address feedback from Daniel Berrangé. ---- Stefan Hajnoczi (1): coroutine: reserve 5,000 mappings util/qemu-coroutine.c | 15 ++- 1 file changed, 10 insertions(+), 5

Re: [PATCH] block/io: accept NULL qiov in bdrv_pad_request

2024-03-19 Thread Stefan Hajnoczi
On Tue, Mar 19, 2024 at 10:13:41AM +0100, Fiona Ebner wrote: > From: Stefan Reiter > > Some operations, e.g. block-stream, perform reads while discarding the > results (only copy-on-read matters). In this case, they will pass NULL > as the target QEMUIOVector, which will however trip bdrv_pad_req

Re: [PULL 1/1] coroutine: cap per-thread local pool size

2024-03-19 Thread Stefan Hajnoczi
the discussion has finished. Stefan > > On Tue, Mar 19, 2024 at 11:09:38AM -0400, Stefan Hajnoczi wrote: > > The coroutine pool implementation can hit the Linux vm.max_map_count > > limit, causing QEMU to abort with "failed to allocate memory for stack" > > or "fa

[PULL 0/1] Block patches

2024-03-19 Thread Stefan Hajnoczi
error that has been reported on Linux hosts where the QEMU coroutine pool exceeds the vm.max_map_count limit. -------- Stefan Hajnoczi (1): coroutine: cap per-thread local pool size util/qemu-coroutine.c | 282 +

[PULL 1/1] coroutine: cap per-thread local pool size

2024-03-19 Thread Stefan Hajnoczi
oroutine-pool-fix-sizing Buglink: https://issues.redhat.com/browse/RHEL-28947 Reported-by: Sanjay Rao Reported-by: Boaz Ben Shabat Reported-by: Joe Mario Reviewed-by: Kevin Wolf Signed-off-by: Stefan Hajnoczi Message-ID: <20240318183429.1039340-1-stefa...@redhat.com> --- util/qemu-coroutine.c | 282

Re: [PATCH v2] virtio-blk: iothread-vq-mapping coroutine pool sizing

2024-03-18 Thread Stefan Hajnoczi
On Tue, Mar 12, 2024 at 11:12:04AM -0400, Stefan Hajnoczi wrote: > It is possible to hit the sysctl vm.max_map_count limit when the > coroutine pool size becomes large. Each coroutine requires two mappings > (one for the stack and one for the guard page). QEMU can crash with > "

Re: [PATCH for-9.0 0/2] nbd: Fix server crash on reset with iothreads

2024-03-18 Thread Stefan Hajnoczi
tests/iothreads-nbd-export.out > > -- > 2.44.0 > Reviewed-by: Stefan Hajnoczi signature.asc Description: PGP signature

Re: [PATCH for-9.0] mirror: Don't call job_pause_point() under graph lock

2024-03-18 Thread Stefan Hajnoczi
On Mon, Mar 18, 2024 at 12:37:19PM +0100, Kevin Wolf wrote: > Am 14.03.2024 um 15:29 hat Stefan Hajnoczi geschrieben: > > On Wed, Mar 13, 2024 at 04:30:00PM +0100, Kevin Wolf wrote: > > > Calling job_pause_point() while holding the graph reader lock > > > potent

Re: [PATCH for-9.0] mirror: Don't call job_pause_point() under graph lock

2024-03-14 Thread Stefan Hajnoczi
On Wed, Mar 13, 2024 at 04:30:00PM +0100, Kevin Wolf wrote: > Calling job_pause_point() while holding the graph reader lock > potentially results in a deadlock: bdrv_graph_wrlock() first drains > everything, including the mirror job, which pauses it. The job is only > unpaused at the end of the dra

Re: [PATCH] file-posix: rearrange BDRVRawState fields

2024-03-14 Thread Stefan Hajnoczi
-- > block/file-posix.c | 39 +++ > 1 file changed, 19 insertions(+), 20 deletions(-) Reviewed-by: Stefan Hajnoczi signature.asc Description: PGP signature

Re: [PATCH v4] linux-aio: add IO_CMD_FDSYNC command support

2024-03-14 Thread Stefan Hajnoczi
; 3 files changed, 28 insertions(+), 1 deletion(-) > > v4: New boolean field to indicate if aio_fdsync is available or not. > It is set at file open time and checked before AIO_FLUSH call. > - https://lists.nongnu.org/archive/html/qemu-devel/2024-03/msg03701.html Reviewed-by: Stefan Hajnoczi signature.asc Description: PGP signature

Re: [PATCH v3] linux-aio: add IO_CMD_FDSYNC command support

2024-03-13 Thread Stefan Hajnoczi
On Wed, Mar 13, 2024 at 10:49:31PM +0530, Prasad Pandit wrote: > On Wed, 13 Mar 2024 at 20:48, Stefan Hajnoczi wrote: > > > +extern bool laio_has_fdsync(int); > > Please declare this in include/block/raw-aio.h alongside the other laio > > APIs. > > > > FDS

Re: [PATCH v3] linux-aio: add IO_CMD_FDSYNC command support

2024-03-13 Thread Stefan Hajnoczi
On Wed, Mar 13, 2024 at 02:19:35PM +0530, Prasad Pandit wrote: > From: Prasad Pandit > > Libaio defines IO_CMD_FDSYNC command to sync all outstanding > asynchronous I/O operations, by flushing out file data to the > disk storage. > > Enable linux-aio to submit such aio request. This helps to > r

Re: [PATCH for 9.0] migration: Skip only empty block devices

2024-03-12 Thread Stefan Hajnoczi
On Tue, Mar 12, 2024 at 09:22:06PM +0100, Cédric Le Goater wrote: > On 3/12/24 19:41, Stefan Hajnoczi wrote: > > On Tue, Mar 12, 2024 at 01:04:31PM +0100, Cédric Le Goater wrote: > > > The block .save_setup() handler calls a helper routine > > > init_blk_migration() w

  1   2   3   4   5   6   7   8   9   10   >