Reviewed-by: Alberto Garcia
Reviewed-by: Hanna Czenczek
Signed-off-by: zhenwei pi
---
tests/unit/test-throttle.c | 66 ++
1 file changed, 66 insertions(+)
diff --git a/tests/unit/test-throttle.c b/tests/unit/test-throttle.c
index a60b5fe22e..5547837a58
Operations on a cryptodev are considered as *write* only, the callback
of read direction is never invoked. Use NULL instead of an unreachable
path(cryptodev_backend_throttle_timer_cb on read direction).
The dummy read timer(never invoked) is already removed here, it means
that the 'FIXME' tag is
The first dimension of both to_check and
bucket_types_size/bucket_types_units is used as throttle direction,
use THROTTLE_MAX instead of hard coded number. Also use ARRAY_SIZE()
to avoid hard coded number for the second dimension.
Hanna noticed that the two array should be static. Yes, turn them
'bool is_write' style is obsolete from throttle framework, adapt
fsdev to the new style.
Cc: Greg Kurz
Reviewed-by: Hanna Czenczek
Signed-off-by: zhenwei pi
---
fsdev/qemu-fsdev-throttle.c | 14 +++---
fsdev/qemu-fsdev-throttle.h | 4 ++--
hw/9pfs/cofile.c| 4 ++--
3
On 7/28/23 00:12, Hanna Czenczek wrote:
On 24.07.23 12:09, zhenwei pi wrote:
'bool is_write' style is obsolete from throttle framework, adapt
block throttle groups to the new style.
Use a simple python script to test the new style:
#!/usr/bin/python3
import subprocess
import random
import
enum ThrottleDirection is already there, use ThrottleDirection instead
of 'bool is_write' for throttle API, also modify related codes from
block, fsdev, cryptodev and tests.
Reviewed-by: Hanna Czenczek
Signed-off-by: zhenwei pi
---
backends/cryptodev.c| 9 +
'bool is_write' style is obsolete from throttle framework, adapt
block throttle groups to the new style:
- use ThrottleDirection instead of 'bool is_write'. Ex,
schedule_next_request(ThrottleGroupMember *tgm, bool is_write)
-> schedule_next_request(ThrottleGroupMember *tgm, ThrottleDirection
Use enum ThrottleDirection instead in the throttle test codes.
Reviewed-by: Alberto Garcia
Reviewed-by: Hanna Czenczek
Signed-off-by: zhenwei pi
---
tests/unit/test-throttle.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/tests/unit/test-throttle.c
Use enum ThrottleDirection instead of number index.
Reviewed-by: Alberto Garcia
Reviewed-by: Hanna Czenczek
Signed-off-by: zhenwei pi
---
include/qemu/throttle.h | 11 ---
util/throttle.c | 16 +---
2 files changed, 17 insertions(+), 10 deletions(-)
diff --git
v4 -> v5:
- typo fix in 'throttle: use enum ThrottleDirection instead of bool is_write':
'@throttle: throttle direction' -> '@direction: throttle direction'
- several 'for (i = 0; i < 2; i++)' left, use
'for (dir = THROTTLE_READ; dir < THROTTLE_MAX; dir++)' instead.
'true/false' left,
Only one direction is necessary in several scenarios:
- a read-only disk
- operations on a device are considered as *write* only. For example,
encrypt/decrypt/sign/verify operations on a cryptodev use a single
*write* timer(read timer callback is defined, but never invoked).
Allow a single
> On Jul 25, 2023, at 6:19 AM, Li Feng wrote:
>
> Thanks for your comments.
>
>> 2023年7月25日 上午1:21,Raphael Norwitz 写道:
>>
>> Very excited to see this. High level looks good modulo a few small things.
>>
>> My major concern is around existing vhost-user-scsi backends which don’t
>> support
From: Stefano Garzarella
libblkio 1.3.0 added support of "fd" property for virtio-blk-vhost-vdpa
driver. In QEMU, starting from commit cad2ccc395 ("block/blkio: use
qemu_open() to support fd passing for virtio-blk") we are using
`blkio_get_int(..., "fd")` to check if the "fd" property is
From: Stefano Garzarella
This is in preparation for the next patch, where for virtio-blk
drivers we need to handle the failure of blkio_connect().
Let's also rename the *_open() functions to *_connect() to make
the code reflect the changes applied.
Signed-off-by: Stefano Garzarella
On Thu, Jul 27, 2023 at 06:10:16PM +0200, Stefano Garzarella wrote:
> There is a problem with virtio-blk-vhost-vdpa.
> The first patch does some preparation changes. The second and third patches
> fix the issues, the last patch tries to prepare QEMU for a future version of
> libblkio where we can
The following changes since commit 66547f416a61e0cb711dc76821890242432ba193:
block/nvme: invoke blk_io_plug_call() outside q->lock (2023-07-17 09:17:41
-0400)
are available in the Git repository at:
https://gitlab.com/stefanha/qemu.git tags/block-pull-request
for you to fetch changes up
From: Stefano Garzarella
Until libblkio 1.3.0, virtio-blk drivers had completion eventfd
notifications enabled from the start, but from the next releases
this is no longer the case, so we have to explicitly enable them.
In fact, the libblkio documentation says they could be disabled,
so we
From: Stefano Garzarella
qemu_open() in blkio_virtio_blk_common_open() is used to open the
character device (e.g. /dev/vhost-vdpa-0 or /dev/vfio/vfio) or in
the future eventually the unix socket.
In all these cases we cannot open the path in read-only mode,
when the `read-only` option of
From: Stefano Garzarella
Setting the `fd` property fails with virtio-blk-* libblkio drivers
that do not support fd passing since
https://gitlab.com/libblkio/libblkio/-/merge_requests/208.
Getting the `fd` property, on the other hand, always succeeds for
virtio-blk-* libblkio drivers even when
From: Sam Li
The g_file_get_contents() function returns a g_boolean. If it fails, the
returned value will be 0 instead of -1. Solve the issue by skipping
assigning ret value.
This issue was found by Matthew Rosato using virtio-blk-{pci,ccw} backed
by an NVMe partition e.g. /dev/nvme0n1p1 on
From: Stefano Garzarella
qemu_open() fails if called with an unix domain socket in this way:
-blockdev
node-name=drive0,driver=virtio-blk-vhost-user,path=vhost-user-blk.sock,cache.direct=on:
Could not open 'vhost-user-blk.sock': No such device or address
Since virtio-blk-vhost-user does
From: Hanna Czenczek
bdrv_pad_request() relies on requests' lengths not to exceed SIZE_MAX,
which bdrv_check_qiov_request() does not guarantee.
bdrv_check_request32() however will guarantee this, and both of
bdrv_pad_request()'s callers (bdrv_co_preadv_part() and
bdrv_co_pwritev_part()) already
On 27.07.23 18:27, Hanna Czenczek wrote:
On 25.07.23 19:40, Vladimir Sementsov-Ogievskiy wrote:
From: Vladimir Sementsov-Ogievskiy
Actually block job is not completed without this final flush. It's
rather unexpected to have broken target when job was successfully
completed long ago and now we
On 24.07.23 12:09, zhenwei pi wrote:
'bool is_write' style is obsolete from throttle framework, adapt
block throttle groups to the new style.
Use a simple python script to test the new style:
#!/usr/bin/python3
import subprocess
import random
import time
commands = ['virsh blkdeviotune jammy
This is in preparation for the next patch, where for virtio-blk
drivers we need to handle the failure of blkio_connect().
Let's also rename the *_open() functions to *_connect() to make
the code reflect the changes applied.
Signed-off-by: Stefano Garzarella
---
block/blkio.c | 67
There is a problem with virtio-blk-vhost-vdpa.
The first patch does some preparation changes. The second and third patches
fix the issues, the last patch tries to prepare QEMU for a future version of
libblkio where we can use blkio_set_fd() to check whether the property is
supported or not.
While
On Thu, Jul 27, 2023 at 05:45:17PM +0900, Jeuk Kim wrote:
> Since v7:
> In ufs-test.c, make the following changes
> - Change TIMEOUT from 5 to 10 (Thomas's review comment)
> - Rename the temporary file to "qemu-ufs." (Thomas's review comment)
> - Use "-blockdev" instead of "-drive" (Stefan's
On 24.07.23 12:09, zhenwei pi wrote:
The first dimension of both to_check and
bucket_types_size/bucket_types_units is used as throttle direction,
use THROTTLE_MAX instead of hard coded number. Also use ARRAY_SIZE()
to avoid hard coded number for the second dimension.
Hanna noticed that the two
Setting the `fd` property fails with virtio-blk-* libblkio drivers
that do not support fd passing since
https://gitlab.com/libblkio/libblkio/-/merge_requests/208.
Getting the `fd` property, on the other hand, always succeeds for
virtio-blk-* libblkio drivers even when they don't support fd
qemu_open() fails if called with an unix domain socket in this way:
-blockdev
node-name=drive0,driver=virtio-blk-vhost-user,path=vhost-user-blk.sock,cache.direct=on:
Could not open 'vhost-user-blk.sock': No such device or address
Since virtio-blk-vhost-user does not support fd passing,
On 24.07.23 12:09, zhenwei pi wrote:
enum ThrottleDirection is already there, use ThrottleDirection instead
of 'bool is_write' for throttle API, also modify related codes from
block, fsdev, cryptodev and tests.
Signed-off-by: zhenwei pi
---
backends/cryptodev.c| 9 +
libblkio 1.3.0 added support of "fd" property for virtio-blk-vhost-vdpa
driver. In QEMU, starting from commit cad2ccc395 ("block/blkio: use
qemu_open() to support fd passing for virtio-blk") we are using
`blkio_get_int(..., "fd")` to check if the "fd" property is supported
for all the virtio-blk-*
On Thu, Jul 27, 2023 at 05:45:17PM +0900, Jeuk Kim wrote:
> Since v7:
> In ufs-test.c, make the following changes
> - Change TIMEOUT from 5 to 10 (Thomas's review comment)
> - Rename the temporary file to "qemu-ufs." (Thomas's review comment)
> - Use "-blockdev" instead of "-drive" (Stefan's
On Wed, Jun 21, 2023 at 02:16:30PM +0200, kvaps wrote:
> > QCOW2 caches two forms of data, cluster metadata (L1/L2 data, refcount
> > table, etc) and mutable header information (file size, snapshot
> > entries, etc). This data is discarded after the last piece of incoming
> > migration data is
On 24.07.23 12:09, zhenwei pi wrote:
'bool is_write' style is obsolete from throttle framework, adapt
fsdev to the new style.
Cc: Greg Kurz
Signed-off-by: zhenwei pi
---
fsdev/qemu-fsdev-throttle.c | 14 +++---
fsdev/qemu-fsdev-throttle.h | 4 ++--
hw/9pfs/cofile.c|
On 25.07.23 19:40, Vladimir Sementsov-Ogievskiy wrote:
From: Vladimir Sementsov-Ogievskiy
Actually block job is not completed without this final flush. It's
rather unexpected to have broken target when job was successfully
completed long ago and now we fail to flush or process just
In block/iscsi.c we use a raw malloc() call, which is unusual
given the project standard is to use the glib memory allocation
functions. Document why we do so, to avoid it being converted
to g_malloc() by mistake.
Signed-off-by: Peter Maydell
---
There aren't many uses of raw malloc() in the
On Thu, 27 Jul 2023 at 16:07, Peter Maydell wrote:
>
> In block/iscsi.c we use a raw malloc() call, which is unusual
> given the project standard is to use the glib memory allocation
> functions. Document why we do so, to avoid it being converted
> to g_malloc() by mistake.
>
> Signed-off-by:
On Thu, Jul 27, 2023 at 12:58:28PM +0200, Denis V. Lunev wrote:
> Unfortunately
> commit 03b67621445d601c9cdc7dfe25812e9f19b81488
> Author: Denis V. Lunev
> Date: Mon Jul 17 16:55:40 2023 +0200
> qemu-nbd: pass structure into nbd_client_thread instead of plain char*
> has
On Thu, Jul 27, 2023 at 01:15:32PM +0100, Daniel P. Berrangé wrote:
> On Thu, Jul 27, 2023 at 07:58:44PM +0800, Sam Li wrote:
> > The g_file_get_contents() function returns a g_boolean. If it fails, the
> > returned value will be 0 instead of -1. Solve the issue by skipping
> > assigning ret
On Thu, Jul 27, 2023 at 07:58:44PM +0800, Sam Li wrote:
> The g_file_get_contents() function returns a g_boolean. If it fails, the
> returned value will be 0 instead of -1. Solve the issue by skipping
> assigning ret value.
>
> This issue was found by Matthew Rosato using virtio-blk-{pci,ccw}
On Tue, 25 Jul 2023 at 19:04, John Snow wrote:
>
> Like we did for the QMP socket, use socketpair() for the console socket
> so that hopefully there isn't a race condition during early boot where
> data might get dropped on the floor.
>
> May or may not help with various race conditions where
On Wednesday, 14 June 2023 Simon Rowe wrote:
> We've also seen a handful of similar reports. Again, just the MBR sector
> overwritten by what looks to be guest data (e.g. log messages). The
> common thread with our incidents is again a SATA disk under the AHCI
> controller, we have a network
Matthew Rosato 于2023年7月27日周四 19:46写道:
>
> On 7/5/23 10:54 AM, Matthew Rosato wrote:
> > On 6/4/23 2:16 AM, Sam Li wrote:
> >> The g_file_get_contents() function returns a g_boolean. If it fails, the
> >> returned value will be 0 instead of -1. Solve the issue by skipping
> >> assigning ret value.
On Thu, Jul 27, 2023 at 07:58:44PM +0800, Sam Li wrote:
> The g_file_get_contents() function returns a g_boolean. If it fails, the
> returned value will be 0 instead of -1. Solve the issue by skipping
> assigning ret value.
>
> This issue was found by Matthew Rosato using virtio-blk-{pci,ccw}
The g_file_get_contents() function returns a g_boolean. If it fails, the
returned value will be 0 instead of -1. Solve the issue by skipping
assigning ret value.
This issue was found by Matthew Rosato using virtio-blk-{pci,ccw} backed
by an NVMe partition e.g. /dev/nvme0n1p1 on s390x.
On 7/5/23 10:54 AM, Matthew Rosato wrote:
> On 6/4/23 2:16 AM, Sam Li wrote:
>> The g_file_get_contents() function returns a g_boolean. If it fails, the
>> returned value will be 0 instead of -1. Solve the issue by skipping
>> assigning ret value.
>>
>> This issue was found by Matthew Rosato using
Unfortunately
commit 03b67621445d601c9cdc7dfe25812e9f19b81488
Author: Denis V. Lunev
Date: Mon Jul 17 16:55:40 2023 +0200
qemu-nbd: pass structure into nbd_client_thread instead of plain char*
has introduced a regression. struct NbdClientOpts resides on stack inside
'if' block.
On 7/26/23 19:57, Eric Blake wrote:
On Wed, Jul 26, 2023 at 04:52:47PM +0200, Denis V. Lunev wrote:
Unfortunately
commit 03b67621445d601c9cdc7dfe25812e9f19b81488
Author: Denis V. Lunev
Date: Mon Jul 17 16:55:40 2023 +0200
qemu-nbd: pass structure into nbd_client_thread
On Thu, Jul 27, 2023 at 11:22:35AM +0530, Ani Sinha wrote:
>
>
> > On 26-Jul-2023, at 10:51 PM, John Snow wrote:
> >
> >
> >
> > On Wed, Jul 26, 2023, 6:50 AM Ani Sinha wrote:
> >
> >
> > > On 25-Jul-2023, at 11:33 PM, John Snow wrote:
> > >
> > > Create a socketpair for the console
This patch includes the following tests
Test mmio read
Test ufs device initialization and ufs-lu recognition
Test I/O (Performs a write followed by a read to verify)
Signed-off-by: Jeuk Kim
Acked-by: Thomas Huth
Reviewed-by: Stefan Hajnoczi
---
MAINTAINERS | 1 +
Universal Flash Storage (UFS) is a high-performance mass storage device
with a serial interface. It is primarily used as a high-performance
data storage device for embedded applications.
This commit contains code for UFS device to be recognized
as a UFS PCI device.
Patches to handle UFS logical
Since v7:
In ufs-test.c, make the following changes
- Change TIMEOUT from 5 to 10 (Thomas's review comment)
- Rename the temporary file to "qemu-ufs." (Thomas's review comment)
- Use "-blockdev" instead of "-drive" (Stefan's review comment)
Since v6:
- Add tests/qtest/ufs-test.c to test ufs
This commit adds support for ufs logical unit.
The LU handles processing for the SCSI command,
unit descriptor query request.
This commit enables the UFS device to process
IO requests.
Signed-off-by: Jeuk Kim
Reviewed-by: Stefan Hajnoczi
---
hw/ufs/lu.c | 1445
This commit makes the UFS device support query
and nop out transfer requests.
The next patch would be support for UFS logical
unit and scsi command transfer request.
Signed-off-by: Jeuk Kim
Reviewed-by: Stefan Hajnoczi
---
hw/ufs/trace-events | 1 +
hw/ufs/ufs.c| 980
> On 27-Jul-2023, at 11:22 AM, Ani Sinha wrote:
>
>
>
>> On 26-Jul-2023, at 10:51 PM, John Snow wrote:
>>
>>
>>
>> On Wed, Jul 26, 2023, 6:50 AM Ani Sinha wrote:
>>
>>
>>> On 25-Jul-2023, at 11:33 PM, John Snow wrote:
>>>
>>> Create a socketpair for the console output. This should
> On 26-Jul-2023, at 10:51 PM, John Snow wrote:
>
>
>
> On Wed, Jul 26, 2023, 6:50 AM Ani Sinha wrote:
>
>
> > On 25-Jul-2023, at 11:33 PM, John Snow wrote:
> >
> > Create a socketpair for the console output. This should help eliminate
> > race conditions around console text early in
57 matches
Mail list logo