[Devel] [PATCH hci-8.1 1/2] dm-ploop: stop enospc_timer in ploop_destroy()

no-reply at sashiko.virtuozzo.com no-reply at sashiko.virtuozzo.com
Mon Nov 9 22:17:16 MSK 2026


> From: Denis V. Lunev <den at openvz.org>
> 
> The destructor never stops enospc_timer. ploop_presuspend() deletes it
> with timer_delete_sync_try(), which does not wait for a callback that
> runs on another CPU, and ploop_try_delay_enospc() tests wants_suspend
> without deferred_lock, so a write that fails with ENOSPC around the
> presuspend can arm the timer again. The callback dereferences the
> struct ploop that ploop_dtr() frees.
> 
> Shut the timer down at the start of ploop_destroy(), which waits for a
> running callback and keeps the timer from being armed again. The timer
> is set up before kt_worker is created, so it is valid wherever
> ploop_destroy() finds kt_worker set.
> 
> https://virtuozzo.atlassian.net/browse/VSTOR-154182
> 
> Fixes: 6ddad5a4d226 ("dm-ploop: Add ploop target driver")
> 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/20261109190657.1851487-1-den@openvz.org?part=1




More information about the Devel mailing list