zram: add might_sleep to zcomp API
authorSergey Senozhatsky <senozhatsky@chromium.org>
Mon, 3 Mar 2025 02:03:28 +0000 (11:03 +0900)
committerAndrew Morton <akpm@linux-foundation.org>
Mon, 17 Mar 2025 05:06:37 +0000 (22:06 -0700)
Explicitly state that zcomp compress/decompress must be called from
non-atomic context.

Link: https://lkml.kernel.org/r/20250303022425.285971-20-senozhatsky@chromium.org
Signed-off-by: Sergey Senozhatsky <senozhatsky@chromium.org>
Cc: Hillf Danton <hdanton@sina.com>
Cc: Kairui Song <ryncsn@gmail.com>
Cc: Minchan Kim <minchan@kernel.org>
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Cc: Yosry Ahmed <yosry.ahmed@linux.dev>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
drivers/block/zram/zcomp.c

index a1d627054bb15f3304ccdd323d2d169662a5f6a4..d26a58c67e95f1e3d4716040f53c5d85160c6477 100644 (file)
@@ -146,6 +146,7 @@ int zcomp_compress(struct zcomp *comp, struct zcomp_strm *zstrm,
        };
        int ret;
 
+       might_sleep();
        ret = comp->ops->compress(comp->params, &zstrm->ctx, &req);
        if (!ret)
                *dst_len = req.dst_len;
@@ -162,6 +163,7 @@ int zcomp_decompress(struct zcomp *comp, struct zcomp_strm *zstrm,
                .dst_len = PAGE_SIZE,
        };
 
+       might_sleep();
        return comp->ops->decompress(comp->params, &zstrm->ctx, &req);
 }