From: Fiona Ebner <f.ebner@proxmox.com>
To: Christian Ebner <c.ebner@proxmox.com>, pve-devel@lists.proxmox.com
Subject: Re: [PATCH pve-qemu qemu-server 0/3] bypass host page cache for restore on zvol
Date: Wed, 19 Aug 2026 12:02:59 +0200 [thread overview]
Message-ID: <068ea5ee-c91e-4032-b2d3-ad6354e2e85e@proxmox.com> (raw)
In-Reply-To: <20260818075050.86065-1-c.ebner@proxmox.com>
Am 18.08.26 um 9:51 AM schrieb Christian Ebner:
> This patch series skips writing to the host page cache for restores
> to zvols, with the intention to avoid potential I/O delay issues for
> other ZFS-backed VMs during page writeback on certain setups, as
> reported in enterprise support and reproduced internally.
>
> This patch series adds an optional no-cache parameter for pbs-restore
> command invocation, setting the BDRV_O_NOCACHE flag for the block
> device being restored to and sets `cache=none` for vma restores.
>
> Since this seems to affect only zvol's, conditionally set the flag only
> during restores to storages with type `zfspool`.
>
> pve-qemu:
>
> Christian Ebner (1):
> add optional no-cache flag to bypass host page cache on pbs-restore
>
> ...no-cache-flag-to-skip-host-page-cach.patch | 64 +++++++++++++++++++
> debian/patches/series | 1 +
> 2 files changed, 65 insertions(+)
> create mode 100644 debian/patches/pve/0047-pbs-restore-add-no-cache-flag-to-skip-host-page-cach.patch
>
> qemu-server:
>
> Christian Ebner (2):
> pbs-restore: set 'no-cache' on block devices backed by zfspool
> vma restore: skip page cache on block devices backed by zfspool
Didn't have time to look into it in detail, just noticed that there is
no version guarding. I.e. downgrading QEMU will lead to broken restore
since the old binary does not understand the new flag. We should avoid
this. If we don't want to wait until 11.1 for this, you will need to
check the revision of the binary, which requires extending the
kvm_user_version() helper to catch the package name as well ;)
The commit messages could mention that the issue is that the cache fills
up with no actual writes happening until then.
How does the change affect restore performance/load on other storages? I
kinda feel like it might make sense to do this more broadly, but of
course that requires actual data to support it. If the results are
positive, please add a reminder comment to extend this to other storages
in the future.
The general approach looks okay to me :)
next prev parent reply other threads:[~2026-08-19 10:03 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-18 7:50 [PATCH pve-qemu qemu-server 0/3] bypass host page cache for restore on zvol Christian Ebner
2026-08-18 7:50 ` [PATCH pve-qemu 1/3] add optional no-cache flag to bypass host page cache on pbs-restore Christian Ebner
2026-08-18 7:50 ` [PATCH qemu-server 2/3] pbs-restore: set 'no-cache' on block devices backed by zfspool Christian Ebner
2026-08-18 7:50 ` [PATCH qemu-server 3/3] vma restore: skip page cache " Christian Ebner
2026-08-19 10:02 ` Fiona Ebner [this message]
2026-08-19 10:43 ` [PATCH pve-qemu qemu-server 0/3] bypass host page cache for restore on zvol Christian Ebner
2026-08-19 14:47 ` Christian 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=068ea5ee-c91e-4032-b2d3-ad6354e2e85e@proxmox.com \
--to=f.ebner@proxmox.com \
--cc=c.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox