[Devel] [PATCH hci-8.1 v5 08/11] dm-ploop: use wake_up() for inflight_md_wq and dispatcher_wq_prealloc

Alexander Ivanov alexander.ivanov at virtuozzo.com
Tue Oct 13 10:55:10 MSK 2026


wake_up_interruptible() wakes only TASK_INTERRUPTIBLE waiters. All the
current waiters on inflight_md_wq and dispatcher_wq_prealloc sleep
interruptibly, but one of the next patches adds uninterruptible ones on
postsuspend, which would never be woken. Use wake_up(), which wakes
both kinds.

https://virtuozzo.atlassian.net/browse/VSTOR-148171
Feature: dm-ploop: ploop target driver

Signed-off-by: Alexander Ivanov <alexander.ivanov at virtuozzo.com>
---
 drivers/md/dm-ploop-map.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/md/dm-ploop-map.c b/drivers/md/dm-ploop-map.c
index 691284a239df..c313f303fff9 100644
--- a/drivers/md/dm-ploop-map.c
+++ b/drivers/md/dm-ploop-map.c
@@ -926,7 +926,7 @@ static void ploop_put_piwb(struct ploop_index_wb *piwb)
 		 */
 
 		if (atomic_dec_and_test(&piwb->ploop->inflight_md))
-			wake_up_interruptible(&piwb->ploop->inflight_md_wq);
+			wake_up(&piwb->ploop->inflight_md_wq);
 		ploop_free_piwb(piwb);
 	}
 }
@@ -1106,7 +1106,7 @@ void ploop_break_bat_update(struct ploop *ploop, struct md_page *md,
 	spin_unlock_irqrestore(&ploop->bat_lock, flags);
 
 	if (atomic_dec_and_test(&ploop->inflight_md))
-		wake_up_interruptible(&ploop->inflight_md_wq);
+		wake_up(&ploop->inflight_md_wq);
 	ploop_free_piwb(piwb);
 }
 
@@ -2372,7 +2372,7 @@ int ploop_allocator(void *data)
 				PL_FMT("failed to allocate space: %d\n"),
 				       ploop_device_name(ploop), ret);
 		}
-		wake_up_interruptible(&ploop->dispatcher_wq_prealloc);
+		wake_up(&ploop->dispatcher_wq_prealloc);
 		current_restore_flags(old_flags, PLOOP_PFLAGS);
 	}
 
-- 
2.53.0



More information about the Devel mailing list