]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
zram: remove max_comp_streams device attr
authorSergey Senozhatsky <senozhatsky@chromium.org>
Fri, 21 Feb 2025 22:25:35 +0000 (07:25 +0900)
committerAndrew Morton <akpm@linux-foundation.org>
Fri, 28 Feb 2025 01:00:22 +0000 (17:00 -0800)
max_comp_streams device attribute has been defunct since May 2016 when
zram switched to per-CPU compression streams, remove it.

Link: https://lkml.kernel.org/r/20250221222958.2225035-5-senozhatsky@chromium.org
Signed-off-by: Sergey Senozhatsky <senozhatsky@chromium.org>
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>
Documentation/ABI/testing/sysfs-block-zram
Documentation/admin-guide/blockdev/zram.rst
drivers/block/zram/zram_drv.c

index 1ef69e0271f91dbdedd93795c54f8c5f0e3dc012..36c57de0a10ae5bb85866b5f1601e69249d97fe1 100644 (file)
@@ -22,14 +22,6 @@ Description:
                device. The reset operation frees all the memory associated
                with this device.
 
-What:          /sys/block/zram<id>/max_comp_streams
-Date:          February 2014
-Contact:       Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
-Description:
-               The max_comp_streams file is read-write and specifies the
-               number of backend's zcomp_strm compression streams (number of
-               concurrent compress operations).
-
 What:          /sys/block/zram<id>/comp_algorithm
 Date:          February 2014
 Contact:       Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
index 1576fb93f06c4a21dba0230b18a3a51736909798..9bdb30901a93014f4110b50e6c090a996952db39 100644 (file)
@@ -54,7 +54,7 @@ The list of possible return codes:
 If you use 'echo', the returned value is set by the 'echo' utility,
 and, in general case, something like::
 
-       echo 3 > /sys/block/zram0/max_comp_streams
+       echo foo > /sys/block/zram0/comp_algorithm
        if [ $? -ne 0 ]; then
                handle_error
        fi
@@ -73,21 +73,7 @@ This creates 4 devices: /dev/zram{0,1,2,3}
 num_devices parameter is optional and tells zram how many devices should be
 pre-created. Default: 1.
 
-2) Set max number of compression streams
-========================================
-
-Regardless of the value passed to this attribute, ZRAM will always
-allocate multiple compression streams - one per online CPU - thus
-allowing several concurrent compression operations. The number of
-allocated compression streams goes down when some of the CPUs
-become offline. There is no single-compression-stream mode anymore,
-unless you are running a UP system or have only 1 CPU online.
-
-To find out how many streams are currently available::
-
-       cat /sys/block/zram0/max_comp_streams
-
-3) Select compression algorithm
+2) Select compression algorithm
 ===============================
 
 Using comp_algorithm device attribute one can see available and
@@ -107,7 +93,7 @@ Examples::
 For the time being, the `comp_algorithm` content shows only compression
 algorithms that are supported by zram.
 
-4) Set compression algorithm parameters: Optional
+3) Set compression algorithm parameters: Optional
 =================================================
 
 Compression algorithms may support specific parameters which can be
@@ -138,7 +124,7 @@ better the compression ratio, it even can take negatives values for some
 algorithms), for other algorithms `level` is acceleration level (the higher
 the value the lower the compression ratio).
 
-5) Set Disksize
+4) Set Disksize
 ===============
 
 Set disk size by writing the value to sysfs node 'disksize'.
@@ -158,7 +144,7 @@ There is little point creating a zram of greater than twice the size of memory
 since we expect a 2:1 compression ratio. Note that zram uses about 0.1% of the
 size of the disk when not in use so a huge zram is wasteful.
 
-6) Set memory limit: Optional
+5) Set memory limit: Optional
 =============================
 
 Set memory limit by writing the value to sysfs node 'mem_limit'.
@@ -177,7 +163,7 @@ Examples::
        # To disable memory limit
        echo 0 > /sys/block/zram0/mem_limit
 
-7) Activate
+6) Activate
 ===========
 
 ::
@@ -188,7 +174,7 @@ Examples::
        mkfs.ext4 /dev/zram1
        mount /dev/zram1 /tmp
 
-8) Add/remove zram devices
+7) Add/remove zram devices
 ==========================
 
 zram provides a control interface, which enables dynamic (on-demand) device
@@ -208,7 +194,7 @@ execute::
 
        echo X > /sys/class/zram-control/hot_remove
 
-9) Stats
+8) Stats
 ========
 
 Per-device statistics are exported as various nodes under /sys/block/zram<id>/
@@ -228,8 +214,6 @@ mem_limit           WO      specifies the maximum amount of memory ZRAM can
 writeback_limit        WO      specifies the maximum amount of write IO zram
                                can write out to backing device as 4KB unit
 writeback_limit_enable  RW     show and set writeback_limit feature
-max_comp_streams       RW      the number of possible concurrent compress
-                               operations
 comp_algorithm         RW      show and change the compression algorithm
 algorithm_params       WO      setup compression algorithm parameters
 compact                WO      trigger memory compaction
@@ -310,7 +294,7 @@ a single line of text and contains the following stats separated by whitespace:
                Unit: 4K bytes
  ============== =============================================================
 
-10) Deactivate
+9) Deactivate
 ==============
 
 ::
@@ -318,7 +302,7 @@ a single line of text and contains the following stats separated by whitespace:
        swapoff /dev/zram0
        umount /dev/zram1
 
-11) Reset
+10) Reset
 =========
 
        Write any positive value to 'reset' sysfs node::
index c73d8024f48fc36afa06aa4d94b482d1c81df59e..c7bc0c9f3f2f449a1c7ce190b8b2922cb19e8a84 100644 (file)
@@ -1109,27 +1109,6 @@ static void zram_debugfs_register(struct zram *zram) {};
 static void zram_debugfs_unregister(struct zram *zram) {};
 #endif
 
-/*
- * We switched to per-cpu streams and this attr is not needed anymore.
- * However, we will keep it around for some time, because:
- * a) we may revert per-cpu streams in the future
- * b) it's visible to user space and we need to follow our 2 years
- *    retirement rule; but we already have a number of 'soon to be
- *    altered' attrs, so max_comp_streams need to wait for the next
- *    layoff cycle.
- */
-static ssize_t max_comp_streams_show(struct device *dev,
-               struct device_attribute *attr, char *buf)
-{
-       return scnprintf(buf, PAGE_SIZE, "%d\n", num_online_cpus());
-}
-
-static ssize_t max_comp_streams_store(struct device *dev,
-               struct device_attribute *attr, const char *buf, size_t len)
-{
-       return len;
-}
-
 static void comp_algorithm_set(struct zram *zram, u32 prio, const char *alg)
 {
        /* Do not free statically defined compression algorithms */
@@ -2546,7 +2525,6 @@ static DEVICE_ATTR_WO(reset);
 static DEVICE_ATTR_WO(mem_limit);
 static DEVICE_ATTR_WO(mem_used_max);
 static DEVICE_ATTR_WO(idle);
-static DEVICE_ATTR_RW(max_comp_streams);
 static DEVICE_ATTR_RW(comp_algorithm);
 #ifdef CONFIG_ZRAM_WRITEBACK
 static DEVICE_ATTR_RW(backing_dev);
@@ -2568,7 +2546,6 @@ static struct attribute *zram_disk_attrs[] = {
        &dev_attr_mem_limit.attr,
        &dev_attr_mem_used_max.attr,
        &dev_attr_idle.attr,
-       &dev_attr_max_comp_streams.attr,
        &dev_attr_comp_algorithm.attr,
 #ifdef CONFIG_ZRAM_WRITEBACK
        &dev_attr_backing_dev.attr,