On Fri 27-10-17 01:35:57, weiping zhang wrote:
> Convert bdi_debug_register to int and then do error handle for it.
> 
> Signed-off-by: weiping zhang <zhangweip...@didichuxing.com>

This patch looks good to me. You can add:

Reviewed-by: Jan Kara <j...@suse.cz>

                                                                Honza

> ---
>  mm/backing-dev.c | 17 +++++++++++++++--
>  1 file changed, 15 insertions(+), 2 deletions(-)
> 
> diff --git a/mm/backing-dev.c b/mm/backing-dev.c
> index 5072be19d9b2..e9d6a1ede12b 100644
> --- a/mm/backing-dev.c
> +++ b/mm/backing-dev.c
> @@ -116,11 +116,23 @@ static const struct file_operations 
> bdi_debug_stats_fops = {
>       .release        = single_release,
>  };
>  
> -static void bdi_debug_register(struct backing_dev_info *bdi, const char 
> *name)
> +static int bdi_debug_register(struct backing_dev_info *bdi, const char *name)
>  {
> +     if (!bdi_debug_root)
> +             return -ENOMEM;
> +
>       bdi->debug_dir = debugfs_create_dir(name, bdi_debug_root);
> +     if (!bdi->debug_dir)
> +             return -ENOMEM;
> +
>       bdi->debug_stats = debugfs_create_file("stats", 0444, bdi->debug_dir,
>                                              bdi, &bdi_debug_stats_fops);
> +     if (!bdi->debug_stats) {
> +             debugfs_remove(bdi->debug_dir);
> +             return -ENOMEM;
> +     }
> +
> +     return 0;
>  }
>  
>  static void bdi_debug_unregister(struct backing_dev_info *bdi)
> @@ -133,9 +145,10 @@ static inline int bdi_debug_init(void)
>  {
>       return 0;
>  }
> -static inline void bdi_debug_register(struct backing_dev_info *bdi,
> +static inline int bdi_debug_register(struct backing_dev_info *bdi,
>                                     const char *name)
>  {
> +     return 0;
>  }
>  static inline void bdi_debug_unregister(struct backing_dev_info *bdi)
>  {
> -- 
> 2.14.2
> 
-- 
Jan Kara <j...@suse.com>
SUSE Labs, CR

Reply via email to