[Devel] [PATCH hci-8.1 2/3] dm-ploop: fix pios stuck in md->wait_llist after a failed BAT update
no-reply at sashiko.virtuozzo.com
no-reply at sashiko.virtuozzo.com
Mon Nov 9 22:18:32 MSK 2026
> From: Denis V. Lunev <den at openvz.org>
>
> ploop_locate_new_cluster_and_attach_pio() and
> ploop_process_one_discard_pio() set MD_UPDATING on the BAT page while
> they prepare its update. A pio that needs the page meanwhile is parked
> in md->wait_llist by ploop_delay_if_md_busy(), and only
> ploop_advance_local_after_bat_wb(), at the end of a writeback of the
> page, gives the parked pios back.
>
> When the update fails, the error path breaks it, clears MD_DIRTY and
> MD_UPDATING and leaves the parked pios where they are. No writeback of
> the page is queued, so they are never resubmitted: the writers hang in
> D state, and after a buffered write every later sync on the host hangs
> behind them until a reboot. An allocation fails this way when
> ploop_prepare_bat_update() runs out of memory, when no free cluster is
> [ ... ]
>
> Fixes: ddf38fa44df4 ("dm-ploop: fix and rework md updates")
> Reported-by: Denis Genov <denis.genov at virtuozzo.com>
> Feature: dm-ploop: ploop target driver
> Signed-off-by: Denis V. Lunev <den at openvz.org>
Sashiko has reviewed this patch and found no issues. It looks great!
--
Sashiko AI review · https://sashiko.vzint.dev/#/patchset/20261109190604.1850504-1-den@openvz.org?part=2
More information about the Devel
mailing list