Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756674Ab3J1Npo (ORCPT ); Mon, 28 Oct 2013 09:45:44 -0400 Received: from mail-ie0-f176.google.com ([209.85.223.176]:44540 "EHLO mail-ie0-f176.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756291Ab3J1Npn (ORCPT ); Mon, 28 Oct 2013 09:45:43 -0400 MIME-Version: 1.0 In-Reply-To: References: <20131019110539.GA25167@gmail.com> Date: Mon, 28 Oct 2013 21:45:42 +0800 Message-ID: Subject: Re: [PATCH v6 1/3] Staging: zram: Fix access of NULL pointer From: Weijie Yang To: Rashika Kheria Cc: opw-kernel@googlegroups.com, Greg Kroah-Hartman , Minchan Kim , Jiang Liu , Nitin Gupta , Jerome Marchand , Linux-Kernel Content-Type: text/plain; charset=ISO-8859-1 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1972 Lines: 57 On Mon, Oct 28, 2013 at 8:21 PM, Rashika Kheria wrote: > This patch fixes the bug in reset_store caused by accessing NULL pointer. > Hence, It introduces a check for bdev. It also removes unnecessary check > of bdev for fsync_bdev(). > > Signed-off-by: Rashika Kheria > --- > > This revision fixes the following issues of the previous revision- > Seperating patches into Bug fix and Smatch fix > > drivers/staging/zram/zram_drv.c | 6 ++++-- > 1 file changed, 4 insertions(+), 2 deletions(-) > > diff --git a/drivers/staging/zram/zram_drv.c b/drivers/staging/zram/zram_drv.c > index 2c4ed52..d640a8f 100644 > --- a/drivers/staging/zram/zram_drv.c > +++ b/drivers/staging/zram/zram_drv.c > @@ -648,6 +648,9 @@ static ssize_t reset_store(struct device *dev, > zram = dev_to_zram(dev); > bdev = bdget_disk(zram->disk, 0); > > + if (!bdev) > + return -EBUSY; > + I am not sure how does it happen. Would you please make it clear to me? Thanks > /* Do not reset an active device! */ > if (bdev->bd_holders) > return -EBUSY; > @@ -660,8 +663,7 @@ static ssize_t reset_store(struct device *dev, > return -EINVAL; > > /* Make sure all pending I/O is finished */ > - if (bdev) > - fsync_bdev(bdev); > + fsync_bdev(bdev); > > zram_reset_device(zram, true); > return len; > -- > 1.7.9.5 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/ -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/