From: Andrey Zhadchenko <andrey.zhadchenko@virtuozzo.com>
To: "Denis V. Lunev" <den@openvz.org>
Cc: devel@openvz.org
Subject: Re: [Devel] [PATCH hci-8.1 0/2] dm-ploop: fix flip_upper_deltas panicking the host in its pre-flip check
Date: Thu, 5 Nov 2026 13:36:13 +0100 [thread overview]
Message-ID: <d376dffe-4a1d-4add-b2b5-ae69410afb45@virtuozzo.com> (raw)
In-Reply-To: <20261104214635.2063009-1-den@openvz.org>
Reviewed-by: Andrey Zhadchenko <andrey.zhadchenko@virtuozzo.com>
On 11/4/26 22:46, Denis V. Lunev wrote:
> ploop_check_delta_before_flip() runs on every flip_upper_deltas, as
> PLOOP_DEBUG is always defined in dm-ploop-cmd.c, and both of its ways
> out of the walk are broken (VSTOR-153445):
>
> - patch 1: when it finds a cluster both deltas map, it returns -EEXIST
> with two md_locks held and interrupts disabled. The next pio on that
> BAT page spins on the lock forever, and the host panics on a hard
> lockup;
>
> - patch 2: the walk never stops at the end of the BAT of the lower
> delta, so once the device has grown past it the flip oopses on a NULL
> md page.
>
> Neither is reached through the ploop library. Its reverse merge, the
> only sender of the flip, grows the lower delta to the size of the top
> and clears the clusters both deltas map before it flips, and a device it
> mounted has the lower delta read-only, which the flip refuses with
> EACCES before the check. Both take a flip of a table built with the
> lower delta read-write, so VSTOR-153445 has no RK for 8.0. This is the
> fix the v2 cover letter of "dm-ploop: fix the pio submission stop around
> cmds" said would be sent separately.
>
> Tested on dev-cl04, stock 6.12.0-211.52.1.22.11.vz10, dm-ploop built
> out of tree with the series on top of the applied dm-ploop v2:
> - a chain whose top delta overwrote clusters of the base and a direct
> flip_upper_deltas: the stock module returns to dmsetup in atomic
> context ("BUG: scheduling while atomic"), and a read of the device
> then panics the host with "Hard LOCKUP". With the series the message
> fails with EEXIST and the device keeps working;
> - set_noresume, suspend, a grow to 2T and flip_upper_deltas: the stock
> module oopses at ploop_check_delta_before_flip+0x86, with the series
> the flip completes and the images keep their data;
> - the ploop pytest suite, ploop format, passes.
>
> Denis V. Lunev (2):
> dm-ploop: fix flip_upper_deltas returning with two md_locks held
> dm-ploop: fix flip_upper_deltas walking past the BAT of the lower
> delta
>
> drivers/md/dm-ploop-cmd.c | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
>
> base-commit: 1f21db982845109040d1feb279e9ee34f8e6f065
_______________________________________________
Devel mailing list
Devel@openvz.org
https://lists.openvz.org/mailman/listinfo/devel
next prev parent reply other threads:[~2026-11-05 12:37 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-11-04 21:46 Denis V. Lunev
2026-11-04 21:46 ` [Devel] [PATCH hci-8.1 1/2] dm-ploop: fix flip_upper_deltas returning with two md_locks held Denis V. Lunev
2026-11-04 21:50 ` no-reply
2026-11-05 12:58 ` Konstantin Khorenko
2026-11-04 21:46 ` [Devel] [PATCH hci-8.1 2/2] dm-ploop: fix flip_upper_deltas walking past the BAT of the lower delta Denis V. Lunev
2026-11-04 21:50 ` no-reply
2026-11-05 12:58 ` Konstantin Khorenko
2026-11-05 12:36 ` Andrey Zhadchenko [this message]
2026-11-05 12:58 ` [Devel] [PATCH hci-8.1 0/2] dm-ploop: fix flip_upper_deltas panicking the host in its pre-flip check Konstantin Khorenko
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=d376dffe-4a1d-4add-b2b5-ae69410afb45@virtuozzo.com \
--to=andrey.zhadchenko@virtuozzo.com \
--cc=den@openvz.org \
--cc=devel@openvz.org \
/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