From: Fiona Ebner <f.ebner@proxmox.com>
To: pve-devel@lists.proxmox.com
Subject: Re: [pve-devel] [PATCH qemu 5/7] add patch to disable graph locking
Date: Fri, 6 Oct 2023 12:23:14 +0200 [thread overview]
Message-ID: <56d17c5d-f94f-b514-45c7-5fba40e393c2@proxmox.com> (raw)
In-Reply-To: <20230928125926.202540-6-f.ebner@proxmox.com>
Am 28.09.23 um 14:59 schrieb Fiona Ebner:
> + void bdrv_graph_wrlock(BlockDriverState *bs)
> + {
> + AioContext *ctx = NULL;
> +
> + GLOBAL_STATE_CODE();
> ++ /*
> ++ * TODO Some callers hold an AioContext lock when this is called, which
> ++ * causes deadlocks. Reenable once the AioContext locking is cleaned up (or
> ++ * AioContext locks are gone).
> ++ */
> ++#if 0
> + assert(!qatomic_read(&has_writer));
> ++#endif
> +
> + /*
> + * Release only non-mainloop AioContext. The mainloop often relies on the
> +@@ -126,6 +137,7 @@ void bdrv_graph_wrlock(BlockDriverState *bs)
> + }
> + }
> +
> ++#if 0
> + /* Make sure that constantly arriving new I/O doesn't cause starvation */
> + bdrv_drain_all_begin_nopoll();
> +
> +@@ -154,6 +166,7 @@ void bdrv_graph_wrlock(BlockDriverState *bs)
> + } while (reader_count() >= 1);
> +
> + bdrv_drain_all_end();
> ++#endif
> +
> + if (ctx) {
> + aio_context_acquire(bdrv_get_aio_context(bs));
I missed that there was another commit in between, so the #ifdeffery
doesn't get rid of the part releasing+acquiring the AioContext lock.
Should not be a real issue, but who knows.
I'll send a v2 to make it proper (and also want to pick another stable fix).
next prev parent reply other threads:[~2023-10-06 10:23 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-09-28 12:59 [pve-devel] [PATCH-SERIES qemu] update to QEMU 8.1.1 Fiona Ebner
2023-09-28 12:59 ` [pve-devel] [PATCH qemu 1/7] d/rules: use disable-download option instead of git-submodules=ignore Fiona Ebner
2023-09-28 12:59 ` [pve-devel] [PATCH qemu 2/7] buildsys: fixup submodule target Fiona Ebner
2023-09-28 12:59 ` [pve-devel] [PATCH qemu 3/7] buildsys: use QEMU's keycodemapdb again Fiona Ebner
2023-09-28 12:59 ` [pve-devel] [PATCH qemu 4/7] update submodule and patches to QEMU 8.1.1 Fiona Ebner
2023-09-28 12:59 ` [pve-devel] [PATCH qemu 5/7] add patch to disable graph locking Fiona Ebner
2023-10-06 10:23 ` Fiona Ebner [this message]
2023-09-28 12:59 ` [pve-devel] [PATCH qemu 6/7] add patch to avoid huge snapshot performance regression Fiona Ebner
2023-09-28 12:59 ` [pve-devel] [PATCH qemu 7/7] d/control: add versioned Breaks for qemu-server <= 8.0.6 Fiona Ebner
2023-09-29 9:50 ` [pve-devel] [PATCH qemu 8/8] cherry-pick stable fixes to avoid crash in IO error scenarios Fiona Ebner
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=56d17c5d-f94f-b514-45c7-5fba40e393c2@proxmox.com \
--to=f.ebner@proxmox.com \
--cc=pve-devel@lists.proxmox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.