Re: [PATCH] ui/clipboard: avoid crash upon request when clipboard peer is not initialized

2024-01-17 Thread Fiona Ebner
Am 16.01.24 um 13:11 schrieb Fiona Ebner: > Am 15.01.24 um 13:00 schrieb Marc-André Lureau: >>>>> >>>> >>>> The trouble is when qemu_clipboard_update() is called without data & >>>> without a request callback set. We shouldn't all

Re: [PATCH v2] ui/clipboard: ensure data is available or request callback is set upon update

2024-01-17 Thread Fiona Ebner
Am 17.01.24 um 12:11 schrieb Marc-André Lureau: > Hi > > On Wed, Jan 17, 2024 at 3:01 PM Fiona Ebner wrote: >> >> +for (type = 0; type < QEMU_CLIPBOARD_TYPE__COUNT && !missing_data; >> type++) { >> +if (!info->types[ty

Re: [PATCH v2] ui/clipboard: ensure data is available or request callback is set upon update

2024-01-17 Thread Fiona Ebner
Am 17.01.24 um 12:33 schrieb Marc-André Lureau: > Hi > > On Wed, Jan 17, 2024 at 3:30 PM Fiona Ebner wrote: >> >> Am 17.01.24 um 12:11 schrieb Marc-André Lureau: >>> Hi >>> >>> On Wed, Jan 17, 2024 at 3:01 PM Fiona Ebner wrote: >>>>

Re: [PATCH v2] ui/clipboard: ensure data is available or request callback is set upon update

2024-01-17 Thread Fiona Ebner
Am 17.01.24 um 13:20 schrieb Marc-André Lureau: > Hi > > On Wed, Jan 17, 2024 at 3:56 PM Fiona Ebner wrote: >> >> Am 17.01.24 um 12:33 schrieb Marc-André Lureau: >>> Hi >>> >>> On Wed, Jan 17, 2024 at 3:30 PM Fiona Ebner wrote: >>>> &

Re: [PATCH 3/3] monitor: only run coroutine commands in qemu_aio_context

2024-01-18 Thread Fiona Ebner
ke testing with some other QMP and QGA commands and didn't find any obvious breakage, so: Tested-by: Fiona Ebner P.S. Unfortunately, the patch does not solve the other issue I came across back then [0] with snapshot_save_job_bh() being executed during a vCPU thread's aio_poll(). See

Re: [PATCH 2/3] qapi: blockdev-backup: add discard-source parameter

2024-01-11 Thread Fiona Ebner
Hi Vladimir, hope I didn't miss a newer version of this series. I'm currently evaluating fleecing backup for Proxmox downstream, so I pulled in this series and wanted to let you know about two issues I encountered while testing. We are still based on 8.1, but if I'm not mistaken, they are still

Re: [PATCH for-8.2] ui/vnc-clipboard: fix inflate_buffer

2023-11-23 Thread Fiona Ebner
Am 23.11.23 um 07:52 schrieb Marc-André Lureau: > Hi > > On Wed, Nov 22, 2023 at 5:25 PM Fiona Ebner wrote: >> >> Am 22.11.23 um 14:06 schrieb Marc-André Lureau: >>> Hi >>> >>> On Wed, Nov 22, 2023 at 5:00 PM Fiona Ebner wrote: >>>>

Re: [PULL 31/53] hw/i386/pc: Default to use SMBIOS 3.0 for newer machine models

2023-11-28 Thread Fiona Ebner
Am 26.06.23 um 14:29 schrieb Michael S. Tsirkin: > From: Suravee Suthikulpanit > > Currently, pc-q35 and pc-i44fx machine models are default to use SMBIOS 2.8 > (32-bit entry point). Since SMBIOS 3.0 (64-bit entry point) is now fully > supported since QEMU 7.0, default to use SMBIOS 3.0 for

Re: [PULL 31/53] hw/i386/pc: Default to use SMBIOS 3.0 for newer machine models

2023-11-28 Thread Fiona Ebner
Am 28.11.23 um 15:13 schrieb Daniel P. Berrangé: > On Tue, Nov 28, 2023 at 02:57:17PM +0100, Fiona Ebner wrote: >> we received some reports about the new default causing issues for >> certain guest OSes [0][1]. Namely, for Juniper vSRX, where boot fails >> and Microsoft Wi

Re: [PATCH for-8.2] ui/vnc-clipboard: fix inflate_buffer

2023-12-06 Thread Fiona Ebner
Am 04.12.23 um 08:30 schrieb Marc-André Lureau: > Hi > > On Tue, Nov 28, 2023 at 2:52 PM Marc-André Lureau > wrote: >> >> >> It's hard to make the best decision. >> >> We could return the uncompressed data so far, that would fix the >> regression. But potentially, we have incomplete data

Re: [PATCH for-8.2] ui/vnc-clipboard: fix inflate_buffer

2023-11-27 Thread Fiona Ebner
Am 27.11.23 um 10:15 schrieb Marc-André Lureau: > > It seems like a bug in tigervnc then. For some reason, the compressed > data doesn't trigger Z_STREAM_END on the decompression side. Have you > investigated or reported an issue to them? > This was with noVNC. A colleague tested with TigerVNC.

Re: [PULL 29/32] virtio-blk: implement BlockDevOps->drained_begin()

2023-12-07 Thread Fiona Ebner
Am 03.11.23 um 14:12 schrieb Fiona Ebner: > Hi, > > I ran into a strange issue where guest IO would get completely stuck > during certain block jobs a while ago and finally managed to find a > small reproducer [0]. I'm using a VM with virtio-blk-pci (or > virtio-scsi-pci

Re: [PULL 31/53] hw/i386/pc: Default to use SMBIOS 3.0 for newer machine models

2023-11-30 Thread Fiona Ebner
Am 30.11.23 um 12:47 schrieb Gerd Hoffmann: > Hi, > >> However it affects VMs with Seabios only, UEFI based VMs work just fine. >> My guess would be it's not QEMU issue, but Seabios one. > > seabios version must be 1.16.x. > > The version bundled with qemu should be new enough for smbios 3.0

Re: [PATCH 1/2] virtio-scsi: Attach event vq notifier with no_poll

2024-01-25 Thread Fiona Ebner
by using virtio_queue_aio_attach_host_notifier_no_poll() for the > event virtqueue. > > Reported-by: Fiona Ebner > Fixes: 766aa2de0f29b657148e04599320d771c36fd126 >("virtio-scsi: implement BlockDevOps->drained_begin()") > Signed-off-by: Hanna Czenczek Tested-by: Fiona Ebner Reviewed-by: Fiona Ebner

Re: [PATCH 2/2] virtio: Keep notifications disabled during drain

2024-01-25 Thread Fiona Ebner
Because we will always miss virtqueue updates in the drained section, we > also need to poll the virtqueue once after attaching the notifiers. > > Buglink: https://issues.redhat.com/browse/RHEL-3934 > Signed-off-by: Hanna Czenczek Tested-by: Fiona Ebner Reviewed-by: Fiona Ebner

Re: [PATCH v2 3/4] qapi: blockdev-backup: add discard-source parameter

2024-01-25 Thread Fiona Ebner
Am 24.01.24 um 16:03 schrieb Fiona Ebner: > Am 17.01.24 um 17:07 schrieb Vladimir Sementsov-Ogievskiy: >> Add a parameter that enables discard-after-copy. That is mostly useful >> in "push backup with fleecing" scheme, when source is snapshot-access >> format dr

Re: [PATCH v2] qemu_init: increase NOFILE soft limit on POSIX

2024-02-02 Thread Fiona Ebner
Am 18.12.23 um 11:13 schrieb Fiona Ebner: > In many configurations, e.g. multiple vNICs with multiple queues or > with many Ceph OSDs, the default soft limit of 1024 is not enough. > QEMU is supposed to work fine with file descriptors >= 1024 and does > not use select() on POSIX

Re: [PATCH v2 3/4] qapi: blockdev-backup: add discard-source parameter

2024-01-19 Thread Fiona Ebner
Am 17.01.24 um 17:07 schrieb Vladimir Sementsov-Ogievskiy: > Add a parameter that enables discard-after-copy. That is mostly useful > in "push backup with fleecing" scheme, when source is snapshot-access > format driver node, based on copy-before-write filter snapshot-access > API: > > [guest]

[PATCH] block/io_uring: improve error message when init fails

2024-01-23 Thread Fiona Ebner
r code is returned. The caller should not > rely on errno variable. Tested using 'sysctl kernel.io_uring_disabled=2'. Output before this change: > failed to init linux io_uring ring Output after this change: > failed to init linux io_uring ring: Operation not permitted Signed-off-by: Fiona Eb

Re: [RFC 0/3] aio-posix: call ->poll_end() when removing AioHandler

2024-01-23 Thread Fiona Ebner
Am 22.01.24 um 18:52 schrieb Hanna Czenczek: > On 22.01.24 18:41, Hanna Czenczek wrote: >> On 05.01.24 15:30, Fiona Ebner wrote: >>> Am 05.01.24 um 14:43 schrieb Fiona Ebner: >>>> Am 03.01.24 um 14:35 schrieb Paolo Bonzini: >>>>> On 1/3/24 12:40,

Re: [PATCH v2 3/4] qapi: blockdev-backup: add discard-source parameter

2024-01-26 Thread Fiona Ebner
Am 25.01.24 um 18:22 schrieb Vladimir Sementsov-Ogievskiy: > > Hmm. Taking maximum is not optimal for usual case without > discard-source: user may want to work in smaller granularity than > source, to save disk space. > > In case with discarding we have two possibilities: > > - either take

Re: [PULL 29/32] virtio-blk: implement BlockDevOps->drained_begin()

2023-11-13 Thread Fiona Ebner
Am 03.11.23 um 14:12 schrieb Fiona Ebner: > Hi, > > Am 30.05.23 um 18:32 schrieb Kevin Wolf: >> From: Stefan Hajnoczi >> >> Detach ioeventfds during drained sections to stop I/O submission from >> the guest. virtio-blk is no longer reliant on aio_disab

[PATCH for-8.2] ui/vnc-clipboard: fix inflate_buffer

2023-11-22 Thread Fiona Ebner
est direction of the clipboard with noVNC and TigerVNC as clients. Fixes: d921fea338 ("ui/vnc-clipboard: fix infinite loop in inflate_buffer (CVE-2023-3255)") Reported-by: Friedrich Weber Signed-off-by: Fiona Ebner --- ui/vnc-clipboard.c | 5 + 1 file changed, 5 insertions(

Re: [PATCH for-8.2] ui/vnc-clipboard: fix inflate_buffer

2023-11-22 Thread Fiona Ebner
Am 22.11.23 um 14:06 schrieb Marc-André Lureau: > Hi > > On Wed, Nov 22, 2023 at 5:00 PM Fiona Ebner wrote: >> >> Commit d921fea338 ("ui/vnc-clipboard: fix infinite loop in >> inflate_buffer (CVE-2023-3255)") removed this hunk, but it is sti

Re: [PATCH] Makefile: preserve --jobserver-auth argument when calling ninja

2024-04-12 Thread Fiona Ebner
Am 02.04.24 um 10:17 schrieb Martin Hundebøll: > Qemu wraps its call to ninja in a Makefile. Since ninja, as opposed to > make, utilizes all CPU cores by default, the qemu Makefile translates > the absense of a `-jN` argument into `-j1`. This breaks jobserver > functionality, so update the -jN

Re: [PULL 5/5] virtio-gpu: fix scanout migration post-load

2024-04-30 Thread Fiona Ebner
Am 12.03.24 um 15:02 schrieb marcandre.lur...@redhat.com: > From: Marc-André Lureau > > The current post-loading code for scanout has a FIXME: it doesn't take > the resource region/rect into account. But there is more, when adding > blob migration support in commit f66767f75c9, I didn't realize

[PATCH] block/copy-before-write: use uint64_t for timeout in nanoseconds

2024-04-29 Thread Fiona Ebner
() call where this is used already takes a uint64_t for the timeout, so no change required there. Fixes: 6db7fd1ca9 ("block/copy-before-write: implement cbw-timeout option") Reported-by: Friedrich Weber Signed-off-by: Fiona Ebner --- block/copy-before-write.c | 2 +- 1 file changed, 1 inser

Re: [PATCH] block/copy-before-write: use uint64_t for timeout in nanoseconds

2024-04-29 Thread Fiona Ebner
Am 29.04.24 um 16:36 schrieb Philippe Mathieu-Daudé: > Hi Fiona, > > On 29/4/24 16:19, Fiona Ebner wrote: > > Not everybody uses an email client that shows the patch content just > after the subject (your first lines wasn't making sense at first). > > Simply dupli

Re: [PATCH 1/2] copy-before-write: allow specifying minimum cluster size

2024-05-13 Thread Fiona Ebner
Am 26.03.24 um 10:06 schrieb Markus Armbruster: >> @@ -365,7 +368,13 @@ BlockCopyState *block_copy_state_new(BdrvChild *source, >> BdrvChild *target, >> >> GLOBAL_STATE_CODE(); >> >> -cluster_size = block_copy_calculate_cluster_size(target->bs, errp); >> +if (min_cluster_size &&

Re: [PATCH v2 0/4] Fix "virtio-gpu: fix scanout migration post-load"

2024-05-13 Thread Fiona Ebner
const VMStateDescription > vmstate_virtio_gpu_scanout = { > > static const VMStateDescription vmstate_virtio_gpu_scanouts = { > .name = "virtio-gpu-scanouts", > -.version_id = 1, > +.version_id = 2, > > Thanks! With that on top: Tested-by: Fion

Re: [PATCH v2 0/4] Fix "virtio-gpu: fix scanout migration post-load"

2024-05-13 Thread Fiona Ebner
Hi, Am 13.05.24 um 09:19 schrieb marcandre.lur...@redhat.com: > From: Marc-André Lureau > > Hi, > > The aforementioned patch breaks virtio-gpu device migrations for versions > pre-9.0/9.0, both forwards and backwards. Versioning of `VMS_STRUCT` is more > complex than it may initially appear,

Re: [PATCH 0/4] Fix "virtio-gpu: fix scanout migration post-load"

2024-05-08 Thread Fiona Ebner
| 1 + > hw/display/virtio-gpu.c| 28 +--- > migration/vmstate.c| 5 +++-- > migration/trace-events | 2 +- > 6 files changed, 39 insertions(+), 10 deletions(-) > Tested-by: Fiona Ebner Thank you for the fix! Tested with an Ub

Re: [PATCH v2 2/4] mirror: allow specifying working bitmap

2024-05-08 Thread Fiona Ebner
Am 07.05.24 um 14:15 schrieb Fiona Ebner: > Am 02.04.24 um 22:14 schrieb Vladimir Sementsov-Ogievskiy: >> On 07.03.24 16:47, Fiona Ebner wrote: >>> +# @bitmap: The name of a bitmap to use as a working bitmap for >>> +# sync=full mode.  This argument must

Re: [PATCH v4 0/3] Fix "virtio-gpu: fix scanout migration post-load"

2024-05-16 Thread Fiona Ebner
ix a typo > virtio-gpu: fix v2 migration > > include/hw/virtio/virtio-gpu.h | 1 + > hw/core/machine.c | 1 + > hw/display/virtio-gpu.c| 24 > migration/vmstate.c| 7 --- > migration/trace-events |

Re: [PULL 04/17] virtio-net: Add support for USO features

2024-05-16 Thread Fiona Ebner
Hi, Am 08.09.23 um 08:44 schrieb Jason Wang: > diff --git a/hw/core/machine.c b/hw/core/machine.c > index da699cf..230aab8 100644 > --- a/hw/core/machine.c > +++ b/hw/core/machine.c > @@ -38,6 +38,7 @@ > #include "exec/confidential-guest-support.h" > #include "hw/virtio/virtio.h" > #include

Re: [PATCH v4] hw/pflash: fix block write start

2024-05-16 Thread Fiona Ebner
Am 16.05.24 um 10:46 schrieb Gerd Hoffmann: > Move the pflash_blk_write_start() call. We need the offset of the > first data write, not the offset for the setup (number-of-bytes) > write. Without this fix u-boot can do block writes to the first > flash block only. > > While being at it drop a

Re: [PATCH v3 5/5] accel/tcg: Always call tcg_flush_jmp_cache() on reset

2024-05-16 Thread Fiona Ebner
Hi, Am 03.05.24 um 14:34 schrieb Philippe Mathieu-Daudé: > In commit bb6cf6f016 ("accel/tcg: Factor tcg_cpu_reset_hold() out") > we unfortunately restricted the tcg_flush_jmp_cache() to system > emulation. Move it to the common tcg_exec_cpu_reset_hold() handler > so user emulation gets the

Re: [PATCH v2 2/4] mirror: allow specifying working bitmap

2024-05-07 Thread Fiona Ebner
Am 02.04.24 um 22:14 schrieb Vladimir Sementsov-Ogievskiy: > On 07.03.24 16:47, Fiona Ebner wrote: >> diff --git a/block/mirror.c b/block/mirror.c >> index 1609354db3..5c9a00b574 100644 >> --- a/block/mirror.c >> +++ b/block/mirror.c >> @@ -51,7 +51,7

[PATCH v3 4/5] iotests: add test for bitmap mirror

2024-05-10 Thread Fiona Ebner
files, copy-mode=write-blocking, larger cluster size] Signed-off-by: Fiona Ebner --- Changes in v3: * avoid script potentially waiting on non-existent job when blockdev-mirror QMP command fails by asserting that there is no error when none is expected. * fix pylint issues * rename test from

[PATCH v3 1/5] qapi/block-core: avoid the re-use of MirrorSyncMode for backup

2024-05-10 Thread Fiona Ebner
introspection: query-qmp-schema no longer reports drive-mirror and blockdev-mirror accepting @sync values they actually reject. Suggested-by: Vladimir Sementsov-Ogievskiy Signed-off-by: Fiona Ebner Acked-by: Markus Armbruster Reviewed-by: Vladimir Sementsov-Ogievskiy --- Changes in v3: * add

[PATCH v3 0/5] mirror: allow specifying working bitmap

2024-05-10 Thread Fiona Ebner
69-4d51-ba40-96a91038c...@yandex-team.ru/T/#m4ae27dc8ca1fb053e0a32cc4ffa2cfab6646805c [1]: https://lore.kernel.org/qemu-devel/1599127031.9uxdp5h9o2.astr...@nora.none/ [2]: https://lore.kernel.org/qemu-devel/20240307134711.709816-1-f.eb...@proxmox.com/ Fabian Grünbichler (1): iotests: add test for bitmap mirror Fiona

[PATCH v3 2/5] block/mirror: replace is_none_mode with sync_mode in MirrorBlockJob struct

2024-05-10 Thread Fiona Ebner
with a clean error. Signed-off-by: Fiona Ebner --- New in v3. block/mirror.c | 22 +++--- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/block/mirror.c b/block/mirror.c index c0597039a5..ca23d6ef65 100644 --- a/block/mirror.c +++ b/block/mirror.c @@ -51,7 +51,7

[PATCH v3 3/5] mirror: allow specifying working bitmap

2024-05-10 Thread Fiona Ebner
parameter use caller-provided bitmap as working bitmap turn bitmap parameter experimental] Signed-off-by: Fiona Ebner --- Changes in v3: * remove duplicate "use" in QAPI description * clarify that cluster size caveats only applies to non-COW diff image * split changing is_none_mode

[PATCH v3 5/5] blockdev: mirror: check for target's cluster size when using bitmap

2024-05-10 Thread Fiona Ebner
imply skip the check then. Signed-off-by: Fiona Ebner --- Changes in v3: * detect when the target does COW and do not error out in that case * treat ENOTSUP differently from other failure when querying the cluster size blockdev.c | 57 ++ tests/qe

Re: [RFC 0/4] mirror: implement incremental and bitmap modes

2024-03-06 Thread Fiona Ebner
Am 29.02.24 um 13:47 schrieb Fiona Ebner: > Am 29.02.24 um 12:48 schrieb Vladimir Sementsov-Ogievskiy: >> On 29.02.24 13:11, Fiona Ebner wrote: >>> >>> The iotest creates a new target image for each incremental sync which >>> only records the diff relative t

Re: [PATCH v2 00/10] mirror: allow switching from background to active mode

2024-03-08 Thread Fiona Ebner
Am 07.03.24 um 20:42 schrieb Vladimir Sementsov-Ogievskiy: > On 04.03.24 14:09, Peter Krempa wrote: >> On Mon, Mar 04, 2024 at 11:48:54 +0100, Kevin Wolf wrote: >>> Am 28.02.2024 um 19:07 hat Vladimir Sementsov-Ogievskiy geschrieben: On 03.11.23 18:56, Markus Armbruster wrote: > Kevin

[PATCH 0/2] backup: allow specifying minimum cluster size

2024-03-08 Thread Fiona Ebner
for copy operations and in particular, discard requests to the backup source will too. If the granularity is too small, they will just be aligned down in cbw_co_pdiscard_snapshot() and thus effectively ignored. Fiona Ebner (2): copy-before-write: allow specifying minimum cluster size backup: add

[PATCH 2/2] backup: add minimum cluster size to performance options

2024-03-08 Thread Fiona Ebner
. If the granularity is too small, they will just be aligned down in cbw_co_pdiscard_snapshot() and thus effectively ignored. Suggested-by: Vladimir Sementsov-Ogievskiy Signed-off-by: Fiona Ebner --- block/backup.c| 2 +- block/copy-before-write.c | 2 ++ block/copy-before-write.h | 1 + blockdev.c

Re: [PATCH v3 5/5] iotests: add backup-discard-source

2024-03-08 Thread Fiona Ebner
t; +# Copyright (c) 2022 Virtuozzo International GmbH. > +# Title and copyright year are wrong. Apart from that: Reviewed-by: Fiona Ebner

Re: [PATCH v3 0/5] backup: discard-source parameter

2024-03-08 Thread Fiona Ebner
qemu-iotests/tests/backup-discard-source > create mode 100644 tests/qemu-iotests/tests/backup-discard-source.out > Tested-by: Fiona Ebner

[PATCH 1/2] copy-before-write: allow specifying minimum cluster size

2024-03-08 Thread Fiona Ebner
small, they will just be aligned down in cbw_co_pdiscard_snapshot() and thus effectively ignored. The QAPI uses uint32 so the value will be non-negative, but still fit into a uint64_t. Suggested-by: Vladimir Sementsov-Ogievskiy Signed-off-by: Fiona Ebner --- block/block-copy.c | 17

Re: [PATCH v3 4/5] qapi: blockdev-backup: add discard-source parameter

2024-03-08 Thread Fiona Ebner
card to work. Still we can't take it > unconditionally, as it will break normal backup from RO source. So, we > have to add a parameter and pass it thorough bdrv_open flags. > > Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Fiona Ebner

Re: [PATCH v3 3/5] block/copy-before-write: create block_copy bitmap in filter node

2024-03-08 Thread Fiona Ebner
copy_bitmap in filter node, where > anyway two other bitmaps are created. > > Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Fiona Ebner

Re: [PATCH v3 2/5] block/copy-before-write: support unligned snapshot-discard

2024-03-08 Thread Fiona Ebner
Am 28.02.24 um 15:14 schrieb Vladimir Sementsov-Ogievskiy: > First thing that crashes on unligned access here is > bdrv_reset_dirty_bitmap(). Correct way is to align-down the > snapshot-discard request. > > Signed-off-by: Vladimir Sementsov-Ogievskiy Reviewed-by: Fiona Ebner

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

2024-03-19 Thread Fiona Ebner
ot;blockdev-add", "arguments": { "driver": "compress", "file": > "node0", "node-name": "node1" } } > {"execute": "block-stream", "arguments": { "job-id": "stream0", &

[PATCH v2 1/3] block/io: accept NULL qiov in bdrv_pad_request

2024-03-21 Thread Fiona Ebner
ot;blockdev-add", "arguments": { "driver": "compress", "file": > "node0", "node-name": "node1" } } > {"execute": "block-stream", "arguments": { "job-id": "stream0", &

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

2024-03-21 Thread Fiona Ebner
; #8 job_do_finalize_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 () S

[PATCH v2 3/3] iotests: add test for stream job with an unaligned prefetch read

2024-03-21 Thread Fiona Ebner
in bdrv_flush_all() could lead to unreferencing the wrong block driver state and an assertion failure later. Signed-off-by: Fiona Ebner --- New in v2. .../tests/stream-unaligned-prefetch | 86 +++ .../tests/stream-unaligned-prefetch.out | 5 ++ 2 files changed, 91

[PATCH v2 0/3] fix two edge cases related to stream block jobs

2024-03-21 Thread Fiona Ebner
Changes in v2: * Ran into another issue while writing the IO test Stefan wanted to have (good call :)), so include a fix for that and add the test. I didn't notice during manual testing, because I hadn't used a scripted QMP 'quit', so there was no race. Fiona Ebner (2

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

2024-03-22 Thread Fiona Ebner
to have (good call :)), so include a fix for that and add the test. I didn't notice during manual testing, because I hadn't used a scripted QMP 'quit', so there was no race. Fiona Ebner (3): block-backend: fix edge case in bdrv_next() where BDS associated to BB changes block-backend

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

2024-03-22 Thread Fiona Ebner
; #8 job_do_finalize_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_shutd

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

2024-03-22 Thread Fiona Ebner
ly anymore. Instead, rely on bdrv_next() to set it->bs to the BDS it referenced and unreference that one in any case. Signed-off-by: Fiona Ebner --- New in v3. block/block-backend.c | 11 --- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/block/block-backend.c b/block/bl

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

2024-03-22 Thread Fiona Ebner
ot;blockdev-add", "arguments": { "driver": "compress", "file": > "node0", "node-name": "node1" } } > {"execute": "block-stream", "arguments": { "job-id": "stream0", &

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

2024-03-22 Thread Fiona Ebner
in bdrv_flush_all() could lead to unreferencing the wrong block driver state and an assertion failure later. Signed-off-by: Fiona Ebner --- No changes in v3. New in v2. .../tests/stream-unaligned-prefetch | 86 +++ .../tests/stream-unaligned-prefetch.out | 5 ++ 2

[PATCH v2 2/4] mirror: allow specifying working bitmap

2024-03-07 Thread Fiona Ebner
parameter use caller-provided bitmap as working bitmap turn bitmap parameter experimental] Signed-off-by: Fiona Ebner --- block/mirror.c | 95 -- blockdev.c | 39 +-- include/block/block_int-global-state.h |

[PATCH v2 0/4] mirror: allow specifying working bitmap

2024-03-07 Thread Fiona Ebner
5c [1]: https://lore.kernel.org/qemu-devel/1599127031.9uxdp5h9o2.astr...@nora.none/ Fabian Grünbichler (1): iotests: add test for bitmap mirror Fiona Ebner (2): qapi/block-core: avoid the re-use of MirrorSyncMode for backup blockdev: mirror: check for target's cluster size when using bitmap

[PATCH v2 1/4] qapi/block-core: avoid the re-use of MirrorSyncMode for backup

2024-03-07 Thread Fiona Ebner
-Ogievskiy Signed-off-by: Fiona Ebner --- I felt like keeping the "Since: X.Y" as before makes the most sense as to not lose history. Or is it necessary to change this for BackupSyncMode (and its members) since it got a new name? block/backup.c

[PATCH v2 3/4] iotests: add test for bitmap mirror

2024-03-07 Thread Fiona Ebner
as the working bitmap. Signed-off-by: Fabian Grünbichler Signed-off-by: Thomas Lamprecht [FE: rebase for 9.0 adapt to changes to mirror bitmap interface rename test from '384' to 'bitmap-sync-mirror'] Signed-off-by: Fiona Ebner --- tests/qemu-iotests/tests/bitmap-sync-mirror | 565

[PATCH v2 4/4] blockdev: mirror: check for target's cluster size when using bitmap

2024-03-07 Thread Fiona Ebner
Signed-off-by: Fiona Ebner --- blockdev.c| 19 +++ tests/qemu-iotests/tests/bitmap-sync-mirror | 6 ++ .../qemu-iotests/tests/bitmap-sync-mirror.out | 7 +++ 3 files changed, 32 insertions(+) diff --git a/blockdev.c b/blockd

Re: [PATCH] block: Remove unnecessary NULL check in bdrv_pad_request()

2024-03-28 Thread Fiona Ebner
gt; > Resolves: Coverity CID 1542668 > Signed-off-by: Kevin Wolf Reviewed-by: Fiona Ebner Thank you for the fix, Fiona

Question about block graph lock limitation with generated co-wrappers

2024-03-26 Thread Fiona Ebner
Hi, we have a custom block driver downstream, which currently calls bdrv_get_info() (for its file child) in the bdrv_refresh_limits() callback. However, with graph locking, this doesn't work anymore. AFAICT, the reason is the following: The block driver has a backing file option. During

Re: [PATCH 00/19] Workaround Windows failing to find 64bit SMBIOS entry point with SeaBIOS

2024-03-01 Thread Fiona Ebner
Am 29.02.24 um 14:18 schrieb Fiona Ebner: > Am 27.02.24 um 16:47 schrieb Igor Mammedov: >> Windows (10) bootloader when running on top of SeaBIOS, fails to find >> >> SMBIOSv3 entry point. Tracing it shows that it looks for v2 anchor markers >> &

Re: [RFC 0/4] mirror: implement incremental and bitmap modes

2024-03-01 Thread Fiona Ebner
Am 01.03.24 um 15:14 schrieb Vladimir Sementsov-Ogievskiy: > > As we already understood, (block-)job-api needs some spring-cleaning. > Unfortunately I don't have much time on it, but still I decided to start > from finally depreacting block-job-* API and moving to job-*.. Probably >

Re: [RFC 0/4] mirror: implement incremental and bitmap modes

2024-03-01 Thread Fiona Ebner
Am 01.03.24 um 16:02 schrieb Vladimir Sementsov-Ogievskiy: > On 01.03.24 17:52, Fiona Ebner wrote: >> Am 01.03.24 um 15:14 schrieb Vladimir Sementsov-Ogievskiy: >>> >>> As we already understood, (block-)job-api needs some spring-cleaning. >>> Unfortunately I don

Re: [RFC 0/4] mirror: implement incremental and bitmap modes

2024-03-03 Thread Fiona Ebner
Am 01.03.24 um 16:46 schrieb Vladimir Sementsov-Ogievskiy: > On 01.03.24 18:14, Fiona Ebner wrote: >> Am 01.03.24 um 16:02 schrieb Vladimir Sementsov-Ogievskiy: >>>>> About documentation: actually, I never liked that we use for backup >>>>> job >>

Re: [RFC 0/4] mirror: implement incremental and bitmap modes

2024-02-29 Thread Fiona Ebner
Am 29.02.24 um 12:48 schrieb Vladimir Sementsov-Ogievskiy: > On 29.02.24 13:11, Fiona Ebner wrote: >> >> The iotest creates a new target image for each incremental sync which >> only records the diff relative to the previous mirror and those diff >> images are later reb

Re: [PATCH 00/19] Workaround Windows failing to find 64bit SMBIOS entry point with SeaBIOS

2024-02-29 Thread Fiona Ebner
Am 27.02.24 um 16:47 schrieb Igor Mammedov: > Windows (10) bootloader when running on top of SeaBIOS, fails to find > > SMBIOSv3 entry point. Tracing it shows that it looks for v2 anchor markers > > only and not v3. Tricking it into believing that entry point is found

Re: [RFC 0/4] mirror: implement incremental and bitmap modes

2024-02-29 Thread Fiona Ebner
Am 29.02.24 um 13:00 schrieb Vladimir Sementsov-Ogievskiy: > > But anyway, this all could be simply achieved with > bitmap-copying/merging API, if we allow to pass user-given bitmap to the > mirror as working bitmap. > >> >> I see, I'll drop the 'bitmap-mode' in the next version if nobody >>

Re: [RFC 0/4] mirror: implement incremental and bitmap modes

2024-02-29 Thread Fiona Ebner
Am 28.02.24 um 17:06 schrieb Vladimir Sementsov-Ogievskiy: > On 28.02.24 19:00, Vladimir Sementsov-Ogievskiy wrote: >> On 16.02.24 13:55, Fiona Ebner wrote: >>> Now, the IO test added in patch 4/4 actually contains yet another use >>> case, namely doing incremental m

Re: [RFC 0/4] mirror: implement incremental and bitmap modes

2024-02-29 Thread Fiona Ebner
Am 28.02.24 um 17:24 schrieb Vladimir Sementsov-Ogievskiy: > On 16.02.24 13:55, Fiona Ebner wrote: >> Previous discussion from when this was sent upstream [0] (it's been a >> while). I rebased the patches and re-ordered and squashed like >> suggested back then [1]. >>

[PATCH v4 1/5] qapi/block-core: avoid the re-use of MirrorSyncMode for backup

2024-05-21 Thread Fiona Ebner
introspection: query-qmp-schema no longer reports drive-mirror and blockdev-mirror accepting @sync values they actually reject. Suggested-by: Vladimir Sementsov-Ogievskiy Signed-off-by: Fiona Ebner Acked-by: Markus Armbruster Reviewed-by: Vladimir Sementsov-Ogievskiy --- block/backup.c

[PATCH v4 3/5] mirror: allow specifying working bitmap

2024-05-21 Thread Fiona Ebner
parameter use caller-provided bitmap as working bitmap turn bitmap parameter experimental] Signed-off-by: Fiona Ebner Acked-by: Markus Armbruster --- block/mirror.c | 80 +- blockdev.c | 44 +++--- inc

[PATCH v4 5/5] blockdev: mirror: check for target's cluster size when using bitmap

2024-05-21 Thread Fiona Ebner
imply skip the check then. Signed-off-by: Fiona Ebner --- blockdev.c | 57 ++ tests/qemu-iotests/tests/mirror-bitmap | 6 +++ tests/qemu-iotests/tests/mirror-bitmap.out | 7 +++ 3 files changed, 70 insertions(+) diff --git a/blockdev.c b/blockd

[PATCH v4 0/5] mirror: allow specifying working bitmap

2024-05-21 Thread Fiona Ebner
/ [3]: https://lore.kernel.org/qemu-devel/20240510131647.1256467-1-f.eb...@proxmox.com/ Fabian Grünbichler (1): iotests: add test for bitmap mirror Fiona Ebner (3): qapi/block-core: avoid the re-use of MirrorSyncMode for backup block/mirror: replace is_none_mode with sync_mode in MirrorBlo

[PATCH v4 2/5] block/mirror: replace is_none_mode with sync_mode in MirrorBlockJob struct

2024-05-21 Thread Fiona Ebner
with a clean error. Signed-off-by: Fiona Ebner --- block/mirror.c | 22 +++--- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/block/mirror.c b/block/mirror.c index c0597039a5..ca23d6ef65 100644 --- a/block/mirror.c +++ b/block/mirror.c @@ -51,7 +51,7 @@ typedef struct

[PATCH v4 4/5] iotests: add test for bitmap mirror

2024-05-21 Thread Fiona Ebner
files, copy-mode=write-blocking, larger cluster size] Signed-off-by: Fiona Ebner --- tests/qemu-iotests/tests/mirror-bitmap | 597 tests/qemu-iotests/tests/mirror-bitmap.out | 3191 2 files changed, 3788 insertions(+) create mode 100755 tests/qemu-iotests/tests

[PATCH] hw/core/machine: move compatibility flags for VirtIO-net USO to machine 8.1

2024-05-17 Thread Fiona Ebner
in QEMU 8.2, so the compatibility flags should be part of machine version 8.1. Moving the flags unfortunately breaks forward migration with machine version 8.1 from a binary without this patch to a binary with this patch. Fixes: 53da8b5a99 ("virtio-net: Add support for USO features") S

Re: [PULL 6/9] virtio-gpu: fix v2 migration

2024-05-29 Thread Fiona Ebner
;) > Signed-off-by: Marc-André Lureau > Signed-off-by: Peter Xu > Reviewed-by: Fiona Ebner > Tested-by: Fiona Ebner > [fixed long lines] > Signed-off-by: Fabiano Rosas > --- > hw/core/machine.c | 1 + > hw/display/virtio-gpu.c| 30

Re: block snapshot issue with RBD

2024-05-29 Thread Fiona Ebner
Hi, Am 28.05.24 um 20:19 schrieb Jin Cao: > Hi Ilya > > On 5/28/24 11:13 AM, Ilya Dryomov wrote: >> On Mon, May 27, 2024 at 9:06 PM Jin Cao wrote: >>> >>> Supplementary info: VM is paused after "migrate" command. After being >>> resumed with "cont", snapshot_delete_blkdev_internal works again,

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

2024-05-29 Thread Fiona Ebner
CC-ing stable since 1f25c172f83704e350c0829438d832384084a74d is in 9.0.0 Am 06.05.24 um 21:06 schrieb Stefan Hajnoczi: > Commit 1f25c172f837 ("monitor: use aio_co_reschedule_self()") was a code > cleanup that uses aio_co_reschedule_self() instead of open coding > coroutine rescheduling. > > Bug

Re: [PATCH] virtio-pci: Fix the use of an uninitialized irqfd.

2024-05-29 Thread Fiona Ebner
Hi, Am 22.05.24 um 07:10 schrieb Cindy Lu: > The crash was reported in MAC OS and NixOS, here is the link for this bug > https://gitlab.com/qemu-project/qemu/-/issues/2334 > https://gitlab.com/qemu-project/qemu/-/issues/2321 > > The root cause is that the function

Re: [PATCH] hw/core/machine: move compatibility flags for VirtIO-net USO to machine 8.1

2024-05-21 Thread Fiona Ebner
Am 21.05.24 um 00:22 schrieb Fabiano Rosas: > Fiona Ebner writes: > >> Migration from an 8.2 or 9.0 binary to an 8.1 binary with machine >> version 8.1 can fail with: >> >>> kvm: Features 0x1c0010130afffa7 unsupported. Allowed features: 0x10179bfffe7 >>

[PATCH v2 2/2] backup: add minimum cluster size to performance options

2024-05-28 Thread Fiona Ebner
and thus effectively ignore then. To make @discard-source work in such a scenario, allow specifying the minimum cluster size used for block-copy operations and thus in particular also the granularity for discard requests to the source. Suggested-by: Vladimir Sementsov-Ogievskiy Signed-off-by: Fiona

[PATCH v2 0/2] backup: allow specifying minimum cluster size

2024-05-28 Thread Fiona Ebner
the granularity for discard requests to the source. Fiona Ebner (2): copy-before-write: allow specifying minimum cluster size backup: add minimum cluster size to performance options block/backup.c | 2 +- block/block-copy.c | 22 ++ block/copy-before

[PATCH v2 1/2] copy-before-write: allow specifying minimum cluster size

2024-05-28 Thread Fiona Ebner
in block_copy_calculate_cluster_size() is done in the target int64_t type. Suggested-by: Vladimir Sementsov-Ogievskiy Signed-off-by: Fiona Ebner --- Changes in v2: * Use 'size' type in QAPI. * Remove option in cbw_parse_options(), i.e. before parsing generic blockdev options. block/block-copy.c | 22

Re: [PATCH] block/copy-before-write: use uint64_t for timeout in nanoseconds

2024-06-03 Thread Fiona Ebner
Am 28.05.24 um 18:06 schrieb Kevin Wolf: > Am 29.04.2024 um 16:19 hat Fiona Ebner geschrieben: >> rather than the uint32_t for which the maximum is slightly more than 4 >> seconds and larger values would overflow. The QAPI interface allows >> specifying the number of seconds,

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

2024-06-03 Thread Fiona Ebner
Hi Kevin, Am 26.03.24 um 13:44 schrieb Kevin Wolf: > Am 22.03.2024 um 10:50 hat Fiona Ebner geschrieben: >> The old_bs variable in bdrv_next() is currently determined by looking >> at the old block backend. However, if the block graph changes before >> the next bdrv_

Re: [PATCH] target/i386: fix SSE and SSE2 featue check

2024-06-04 Thread Fiona Ebner
Am 02.06.24 um 12:48 schrieb Zhao Liu: > On Sun, Jun 02, 2024 at 06:09:04PM +0800, lixinyu...@ict.ac.cn wrote: >> Date: Sun, 2 Jun 2024 18:09:04 +0800 >> From: lixinyu...@ict.ac.cn >> Subject: [PATCH] target/i386: fix SSE and SSE2 featue check >> X-Mailer: git-send-email 2.34.1 >> >> From: Xinyu

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

2024-06-04 Thread Fiona Ebner
Am 03.06.24 um 18:21 schrieb Kevin Wolf: > Am 03.06.2024 um 16:17 hat Fiona Ebner geschrieben: >> Am 26.03.24 um 13:44 schrieb Kevin Wolf: >>> >>> The fix for bdrv_flush_all() is probably to make it bdrv_co_flush_all() >>> with a coroutine wrapper so that

[RFC PATCH] block-coroutine-wrapper: support generating wrappers for functions without arguments

2024-06-04 Thread Fiona Ebner
Signed-off-by: Fiona Ebner --- An alternative would be to detect whether the argument list is 'void' in FuncDecl's __init__, assign the empty list to self.args there and special case based on that in the rest of the code. Not super happy about the introduction of the 'void_value' parameter

<    1   2   3   4   >