Messages in this thread | | | Date | Wed, 30 Oct 2013 11:36:27 +0900 | From | Minchan Kim <> | Subject | Re: [PATCH v7 1/3] Staging: zram: Fix access of NULL pointer |
| |
On Wed, Oct 30, 2013 at 04:40:54AM +0530, Rashika Kheria wrote: > This patch fixes the bug in reset_store caused by accessing NULL pointer. > > The bdev gets its value from bdget_disk() which could fail when memory > pressure is severe and hence can return NULL because allocation of > inode in bdget could fail. > > Hence, this patch introduces a check for bdev to prevent reference to a > NULL pointer in the later part of the code. It also removes unnecessary > check of bdev for fsync_bdev(). > > Cc: stable@vger.kernel.org > Signed-off-by: Rashika Kheria <rashika.kheria@gmail.com> > --- > > This patch fixes the following issues of the previous revision- > Better Description > > 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; > +
Oops, Sorry. I don't think EBUSY is right. How about ENOMEM?
-- Kind regards, Minchan Kim
| |