Skip to contentSkip to conversation

Patch "zram: restrict add/remove attributes to root only" has been added to the 4.4-stable tree

PATCH [email protected] 1 participant 1 message Dec 12, 2016

Subsystems (3)
lore
Share & tools
lore

[email protected]

author maintainer Applied
#0 lore raw

This is a note to let you know that I've just added the patch titled

zram: restrict add/remove attributes to root only

to the 4.4-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
zram-restrict-add-remove-attributes-to-root-only.patch
and it can be found in the queue-4.4 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.

Quoted 1 line

From 5c7e9ccd91b90d87029261f8856294ee51934cab Mon Sep 17 00:00:00 2001

From: Sergey Senozhatsky <[email protected]>
Date: Wed, 7 Dec 2016 14:44:31 -0800
Subject: zram: restrict add/remove attributes to root only

From: Sergey Senozhatsky <[email protected]>

commit 5c7e9ccd91b90d87029261f8856294ee51934cab upstream.

zram hot_add sysfs attribute is a very 'special' attribute - reading from it creates a new uninitialized zram device. This file, by a mistake, can be read by a 'normal' user at the moment, while only root must be able to create a new zram device, therefore hot_add attribute must have S_IRUSR mode, not S_IRUGO.

[[email protected]: s/sence/sense/, reflow comment to use 80 cols]
Fixes 6566d1a32bf72 ("zram: add dynamic device add/remove functionality")
Cc Minchan Kim <[email protected]>
---
 drivers/block/zram/zram_drv.c |    8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)
drivers/block/zram/zram_drv.c +7 -1
@@ -1378,8 +1378,14 @@ static ssize_t hot_remove_store(struct c
 	return ret ? ret : count;
 }
 
+/*
+ * NOTE: hot_add attribute is not the usual read-only sysfs attribute. In a
+ * sense that reading from this file does alter the state of your system -- it
+ * creates a new un-initialized zram device and returns back this device's
+ * device_id (or an error code if it fails to create a new device).
+ */
 static struct class_attribute zram_control_class_attrs[] = {
-	__ATTR_RO(hot_add),
+	__ATTR(hot_add, 0400, hot_add_show, NULL),
 	__ATTR_WO(hot_remove),
 	__ATTR_NULL,
 };

Patches currently in stable-queue which might be from [email protected] are

queue-4.4/zram-restrict-add-remove-attributes-to-root-only.patch