From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752969AbbDGB4p (ORCPT ); Mon, 6 Apr 2015 21:56:45 -0400 Received: from mail-pd0-f176.google.com ([209.85.192.176]:33792 "EHLO mail-pd0-f176.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752774AbbDGB4n (ORCPT ); Mon, 6 Apr 2015 21:56:43 -0400 Date: Tue, 7 Apr 2015 10:56:56 +0900 From: Sergey Senozhatsky To: akpm@linux-foundation.org Cc: Julia.Lawall@lip6.fr, minchan@kernel.org, ngupta@vflare.org, mm-commits@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: + zram-fix-error-return-code.patch added to -mm tree Message-ID: <20150407015656.GA1859@swordfish> References: <5522e1c7.85EYdVI5AOC58VOT%akpm@linux-foundation.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <5522e1c7.85EYdVI5AOC58VOT%akpm@linux-foundation.org> User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On (04/06/15 12:43), akpm@linux-foundation.org wrote: > From: Julia Lawall > Subject: zram: fix error return code > > Return a negative error code on failure. > [..] > A simplified version of the semantic match that finds this problem is as > follows: (http://coccinelle.lip6.fr/) > > Signed-off-by: Julia Lawall > Cc: Minchan Kim > Cc: Nitin Gupta > Signed-off-by: Andrew Morton > --- good catch. Acked-by: Sergey Senozhatsky > drivers/block/zram/zram_drv.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff -puN drivers/block/zram/zram_drv.c~zram-fix-error-return-code drivers/block/zram/zram_drv.c > --- a/drivers/block/zram/zram_drv.c~zram-fix-error-return-code > +++ a/drivers/block/zram/zram_drv.c > @@ -1188,6 +1188,7 @@ static int zram_add(int device_id) > if (!queue) { > pr_err("Error allocating disk queue for device %d\n", > device_id); > + ret = -ENOMEM; > goto out_free_idr; > } > > @@ -1198,6 +1199,7 @@ static int zram_add(int device_id) > if (!zram->disk) { > pr_warn("Error allocating disk structure for device %d\n", > device_id); > + ret = -ENOMEM; > goto out_free_queue; > } I think we can drop the default `ret' value and just return explicit `-ENOMEM' in !zram case. --- drivers/block/zram/zram_drv.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/block/zram/zram_drv.c b/drivers/block/zram/zram_drv.c index fe67ebb..f444c15 100644 --- a/drivers/block/zram/zram_drv.c +++ b/drivers/block/zram/zram_drv.c @@ -1164,11 +1164,11 @@ static int zram_add(int device_id) { struct zram *zram; struct request_queue *queue; - int ret = -ENOMEM; + int ret; zram = kzalloc(sizeof(struct zram), GFP_KERNEL); if (!zram) - return ret; + return -ENOMEM; if (device_id < 0) { /* generate new device_id */ -- 2.4.0.rc1