Re: + zram-rework-reset-and-destroy-path-fix.patch added to -mm tree

From: Sergey Senozhatsky
Date: Wed Feb 04 2015 - 19:20:24 EST


Hello,
sorry for late response

On (02/04/15 14:29), Andrew Morton wrote:
> Seems unnecessarily complicated. What about
>
> --- a/drivers/block/zram/zram_drv.c~zram-rework-reset-and-destroy-path-fix-2-fix
> +++ a/drivers/block/zram/zram_drv.c
> @@ -1141,7 +1141,8 @@ static void destroy_devices(unsigned int
>
> static int __init zram_init(void)
> {
> - int ret = -ENOMEM, dev_id = 0;
> + int ret;
> + int dev_id;
>
> if (num_devices > max_num_devices) {
> pr_warn("Invalid value for num_devices: %u\n",
> @@ -1157,20 +1158,23 @@ 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)
> - goto out_error;
> + if (!zram_devices) {
> + ret = -ENOMEM;

we need to rollback `zram_major = register_blkdev(0, "zram");'
which is done in destroy_devices().

-ss
--
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/