]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
dm log-writes: Add missing set_freezable() for freezable kthread
authorHaotian Zhang <vulab@iscas.ac.cn>
Mon, 1 Dec 2025 07:41:03 +0000 (15:41 +0800)
committerMikulas Patocka <mpatocka@redhat.com>
Wed, 10 Dec 2025 18:28:22 +0000 (19:28 +0100)
The log_writes_kthread() calls try_to_freeze() but lacks set_freezable(),
rendering the freeze attempt ineffective since kernel threads are
non-freezable by default. This prevents proper thread suspension during
system suspend/hibernate.

Add set_freezable() to explicitly mark the thread as freezable.

Fixes: 0e9cebe72459 ("dm: add log writes target")
Signed-off-by: Haotian Zhang <vulab@iscas.ac.cn>
Reviewed-by: Benjamin Marzinski <bmarzins@redhat.com>
Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
drivers/md/dm-log-writes.c

index 7bb7174f8f4f871ddd71ebc83206698949e8e941..f0c84e7a5daa6335b2483bb674ec0a7ca574496a 100644 (file)
@@ -432,6 +432,7 @@ static int log_writes_kthread(void *arg)
        struct log_writes_c *lc = arg;
        sector_t sector = 0;
 
+       set_freezable();
        while (!kthread_should_stop()) {
                bool super = false;
                bool logging_enabled;