Loading drivers/staging/zram/zram_drv.c +9 −6 Original line number Diff line number Diff line Loading @@ -595,7 +595,7 @@ static const struct block_device_operations zram_devops = { static int create_device(struct zram *zram, int device_id) { int ret = 0; int ret = -ENOMEM; init_rwsem(&zram->lock); init_rwsem(&zram->init_lock); Loading @@ -605,7 +605,6 @@ static int create_device(struct zram *zram, int device_id) if (!zram->queue) { pr_err("Error allocating disk queue for device %d\n", device_id); ret = -ENOMEM; goto out; } Loading @@ -615,11 +614,9 @@ static int create_device(struct zram *zram, int device_id) /* gendisk structure */ zram->disk = alloc_disk(1); if (!zram->disk) { blk_cleanup_queue(zram->queue); pr_warn("Error allocating disk structure for device %d\n", device_id); ret = -ENOMEM; goto out; goto out_free_queue; } zram->disk->major = zram_major; Loading Loading @@ -648,11 +645,17 @@ static int create_device(struct zram *zram, int device_id) &zram_disk_attr_group); if (ret < 0) { pr_warn("Error creating sysfs group"); goto out; goto out_free_disk; } zram->init_done = 0; return 0; out_free_disk: del_gendisk(zram->disk); put_disk(zram->disk); out_free_queue: blk_cleanup_queue(zram->queue); out: return ret; } Loading Loading
drivers/staging/zram/zram_drv.c +9 −6 Original line number Diff line number Diff line Loading @@ -595,7 +595,7 @@ static const struct block_device_operations zram_devops = { static int create_device(struct zram *zram, int device_id) { int ret = 0; int ret = -ENOMEM; init_rwsem(&zram->lock); init_rwsem(&zram->init_lock); Loading @@ -605,7 +605,6 @@ static int create_device(struct zram *zram, int device_id) if (!zram->queue) { pr_err("Error allocating disk queue for device %d\n", device_id); ret = -ENOMEM; goto out; } Loading @@ -615,11 +614,9 @@ static int create_device(struct zram *zram, int device_id) /* gendisk structure */ zram->disk = alloc_disk(1); if (!zram->disk) { blk_cleanup_queue(zram->queue); pr_warn("Error allocating disk structure for device %d\n", device_id); ret = -ENOMEM; goto out; goto out_free_queue; } zram->disk->major = zram_major; Loading Loading @@ -648,11 +645,17 @@ static int create_device(struct zram *zram, int device_id) &zram_disk_attr_group); if (ret < 0) { pr_warn("Error creating sysfs group"); goto out; goto out_free_disk; } zram->init_done = 0; return 0; out_free_disk: del_gendisk(zram->disk); put_disk(zram->disk); out_free_queue: blk_cleanup_queue(zram->queue); out: return ret; } Loading