Currently, we set initial disksize as 0, which forces user to write some value to corresponding zram device's sysfs node, before the device can be used. Now, we avoid this step by providing some default size initially. To change the disksize, user must: - Reset disk. Ex: echo 1 > /sys/block/zram0/reset (NOTE: disksize is set to the default value after reset) - Set new disksize. Ex: echo $((256*1024*1024)) > /sys/block/zram0/disksize Signed-off-by: Nitin Gupta <ngupta@xxxxxxxxxx> --- drivers/staging/zram/zram_drv.c | 10 +++++++--- 1 files changed, 7 insertions(+), 3 deletions(-) diff --git a/drivers/staging/zram/zram_drv.c b/drivers/staging/zram/zram_drv.c index d7fb207..2489f07 100644 --- a/drivers/staging/zram/zram_drv.c +++ b/drivers/staging/zram/zram_drv.c @@ -599,7 +599,7 @@ void zram_reset_device(struct zram *zram) /* Reset stats */ memset(&zram->stats, 0, sizeof(zram->stats)); - zram->disksize = 0; + zram_set_disksize(zram, zram_default_disksize_bytes()); mutex_unlock(&zram->init_lock); } @@ -716,8 +716,12 @@ static int create_device(struct zram *zram, int device_id) zram->disk->private_data = zram; snprintf(zram->disk->disk_name, 16, "zram%d", device_id); - /* Actual capacity set using syfs (/sys/block/zram<id>/disksize */ - zram_set_disksize(zram, 0); + /* + * Set some default disksize. To set another disksize, user + * must reset the device and then write a new disksize to + * corresponding device's sysfs node. + */ + zram_set_disksize(zram, zram_default_disksize_bytes()); /* * To ensure that we always get PAGE_SIZE aligned -- 1.7.6 _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/devel