lkml.org 
[lkml]   [2014]   [Oct]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v3] block: wrong return value
On Thu, Oct 23, 2014 at 10:16:48PM +0530, Sudip Mukherjee wrote:
> while compiling integer err was showing as a set but unused variable.
> elevator_init_fn can be either cfq_init_queue or deadline_init_queue
> or noop_init_queue.
> all three of these functions are returning -ENOMEM if they fail to
> allocate the queue.
> so we should actually be returning the error code rather than
> returning 0 always.
i have one doubt. shouldn't this patch be marked for stable also?

thanks
sudip
>
> Signed-off-by: Sudip Mukherjee <sudip@vectorindia.org>
> ---
>
> change in v2: added elevator_put
> change in v3: remove unneeded initialization of err
>
> block/elevator.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/block/elevator.c b/block/elevator.c
> index 24c28b6..afa3b03 100644
> --- a/block/elevator.c
> +++ b/block/elevator.c
> @@ -229,7 +229,9 @@ int elevator_init(struct request_queue *q, char *name)
> }
>
> err = e->ops.elevator_init_fn(q, e);
> - return 0;
> + if (err)
> + elevator_put(e);
> + return err;
> }
> EXPORT_SYMBOL(elevator_init);
>
> --
> 1.8.1.2
>


\
 
 \ /
  Last update: 2014-10-28 19:01    [W:0.185 / U:0.308 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site