>From f31fdca900d687994a880dfd675d0a46da1eaec9 Mon Sep 17 00:00:00 2001 From: Pavel Skripkin Date: Fri, 6 Aug 2021 10:40:31 +0300 Subject: [PATCH] ext4: fix kthread_should_stop() while TASK_RUNNING /* ... */ Signed-off-by: Pavel Skripkin --- fs/ext4/mmp.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/fs/ext4/mmp.c b/fs/ext4/mmp.c index bc364c119af6..fd1985b79a8d 100644 --- a/fs/ext4/mmp.c +++ b/fs/ext4/mmp.c @@ -183,9 +183,15 @@ static int kmmpd(void *data) } diff = jiffies - last_update_time; - if (diff < mmp_update_interval * HZ) - schedule_timeout_interruptible(mmp_update_interval * - HZ - diff); + if (diff < mmp_update_interval * HZ) { + set_current_state(TASK_INTERRUPTIBLE); + if (kthread_should_stop()) { + __set_current_state(TASK_RUNNING); + break; + } + + schedule_timeout(mmp_update_interval * HZ - diff); + } /* * We need to make sure that more than mmp_check_interval -- 2.32.0