[Devel] [PATCH vz9] dm-ploop: use proper MAX value for clu

2025-06-17 Thread Konstantin Khorenko
Almost everywhere clu is u32, so use U32_MAX instead of UINT_MAX. The only exception is struct ploop_cmd::resize.clu which is "unsigned int". No logic change, just a cleanup. Fixes: 3e756367e184 ("dm-ploop: Add ploop target driver") Found while working on https://virtuozzo.atlassian.net/browse/V

[Devel] [PATCH vz9 1/2] dm-ploop: fix self-deadlock in ploop_prepare_reloc_index_wb()

2025-06-17 Thread Konstantin Khorenko
NMI watchdog: Watchdog detected hard LOCKUP on cpu 6 RIP: 0010:native_queued_spin_lock_slowpath+0x20d/0x2b0 Call Trace: dump_stack_lvl+0x57/0x81 validate_chain.cold+0x157/0x16a __lock_acquire+0xbb1/0x1900 lock_acquire+0x1da/0x640 _raw_spin_lock_irqsave+0x43/0x90 ploop_alloc

[Devel] [PATCH vz9 2/2] dm-ploop: drop redundant md_lock on md->status bits handling

2025-06-17 Thread Konstantin Khorenko
md->status bits are protected by ploop->bat_lock, md->md_lock is used to protect in-memory BAT copy, md->wait_llist in particular. Fixes: 1a12832fd864 ("dm-ploop: fix resize and grow to use the new way of updating md pages") Found while working on https://virtuozzo.atlassian.net/browse/VSTOR-1079