[PATCH] zram: set default dev_id value to zero in zram_init()

From: Sergey Senozhatsky
Date: Tue Feb 03 2015 - 19:59:06 EST


Set dev_id to zero and fix zram_devices allocation error handling
path, can pass uninit dev_id to destroy_devices().

cosmetic:
change destroy_devices() message from pr_debug() to pr_info(), as
proposed by Minchan Kim.

Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@xxxxxxxxx>
---
drivers/block/zram/zram_drv.c | 8 +++-----
1 file changed, 3 insertions(+), 5 deletions(-)

diff --git a/drivers/block/zram/zram_drv.c b/drivers/block/zram/zram_drv.c
index 79c5da9..0bb4fa0 100644
--- a/drivers/block/zram/zram_drv.c
+++ b/drivers/block/zram/zram_drv.c
@@ -1138,12 +1138,12 @@ static void destroy_devices(unsigned int nr)

kfree(zram_devices);
unregister_blkdev(zram_major, "zram");
- pr_debug("Destroyed %u device(s)\n", nr);
+ pr_info("Destroyed %u device(s)\n", nr);
}

static int __init zram_init(void)
{
- int ret, dev_id;
+ int ret = -ENOMEM, dev_id = 0;

if (num_devices > max_num_devices) {
pr_warn("Invalid value for num_devices: %u\n",
@@ -1159,10 +1159,8 @@ static int __init zram_init(void)

/* Allocate the device array and initialize each one */
zram_devices = kzalloc(num_devices * sizeof(struct zram), GFP_KERNEL);
- if (!zram_devices) {
- ret = -ENOMEM;
+ if (!zram_devices)
goto out_error;
- }

for (dev_id = 0; dev_id < num_devices; dev_id++) {
ret = create_device(&zram_devices[dev_id], dev_id);
--
2.3.0.rc2

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/