forked from Minki/linux
staging: zram: handle mem suffixes in disk size zram_sysfs parameter
Use memparse() to allow mem suffixes in disksize sysfs number. Examples: echo 256K > /sys/block/zram0/disksize echo 512M > /sys/block/zram0/disksize echo 1G > /sys/block/zram0/disksize Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com> Reviewed-by: Nitin Gupta <ngupta@vflare.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
37b51fdddf
commit
26907840e6
@ -15,6 +15,7 @@
|
|||||||
#include <linux/device.h>
|
#include <linux/device.h>
|
||||||
#include <linux/genhd.h>
|
#include <linux/genhd.h>
|
||||||
#include <linux/mm.h>
|
#include <linux/mm.h>
|
||||||
|
#include <linux/kernel.h>
|
||||||
|
|
||||||
#include "zram_drv.h"
|
#include "zram_drv.h"
|
||||||
|
|
||||||
@ -54,13 +55,12 @@ static ssize_t disksize_show(struct device *dev,
|
|||||||
static ssize_t disksize_store(struct device *dev,
|
static ssize_t disksize_store(struct device *dev,
|
||||||
struct device_attribute *attr, const char *buf, size_t len)
|
struct device_attribute *attr, const char *buf, size_t len)
|
||||||
{
|
{
|
||||||
int ret;
|
|
||||||
u64 disksize;
|
u64 disksize;
|
||||||
struct zram *zram = dev_to_zram(dev);
|
struct zram *zram = dev_to_zram(dev);
|
||||||
|
|
||||||
ret = kstrtoull(buf, 10, &disksize);
|
disksize = memparse(buf, NULL);
|
||||||
if (ret)
|
if (!disksize)
|
||||||
return ret;
|
return -EINVAL;
|
||||||
|
|
||||||
down_write(&zram->init_lock);
|
down_write(&zram->init_lock);
|
||||||
if (zram->init_done) {
|
if (zram->init_done) {
|
||||||
|
Loading…
Reference in New Issue
Block a user