]> git.ipfire.org Git - thirdparty/kernel/stable.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)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 19 Jan 2026 12:09:39 +0000 (13:09 +0100)
[ Upstream commit ab08f9c8b363297cafaf45475b08f78bf19b88ef ]

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>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/md/dm-log-writes.c

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