Re: [PATCH 11/23] mm: bdi init hooks

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Aug 16, 2007 at 09:45:36AM +0200, Peter Zijlstra wrote:
> provide BDI constructor/destructor hooks
...
> Index: linux-2.6/drivers/block/rd.c
> ===================================================================
> --- linux-2.6.orig/drivers/block/rd.c
> +++ linux-2.6/drivers/block/rd.c
...
> @@ -419,7 +422,19 @@ static void __exit rd_cleanup(void)
>  static int __init rd_init(void)
>  {
>  	int i;
> -	int err = -ENOMEM;
> +	int err;
> +
> +	err = bdi_init(&rd_backing_dev_info);
> +	if (err)
> +		goto out2;
> +
> +	err = bdi_init(&rd_file_backing_dev_info);
> +	if (err) {
> +		bdi_destroy(&rd_backing_dev_info);
> +		goto out2;

How about this...

if (err)
	goto out3;

> +	}
> +
> +	err = -ENOMEM;
>  
>  	if (rd_blocksize > PAGE_SIZE || rd_blocksize < 512 ||
>  			(rd_blocksize & (rd_blocksize-1))) {
> @@ -473,6 +488,9 @@ out:
>  		put_disk(rd_disks[i]);
>  		blk_cleanup_queue(rd_queue[i]);
>  	}
> +	bdi_destroy(&rd_backing_dev_info);
> +	bdi_destroy(&rd_file_backing_dev_info);

	bdi_destroy(&rd_file_backing_dev_info);
out3:
	bdi_destroy(&rd_backing_dev_info);

Sure you might want to switch from numbered labels to something a bit more
descriptive.

> +out2:
>  	return err;
>  }
>  

Josef 'Jeff' Sipek.

-- 
The box said "Windows XP or better required". So I installed Linux.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux