From mboxrd@z Thu Jan 1 00:00:00 1970 From: Steven Whitehouse Date: Mon, 02 Mar 2015 16:17:39 +0000 Subject: [Cluster-devel] [PATCH] GFS2: Fix potential NULL dereference in gfs2_alloc_inode In-Reply-To: <1425312908-21017-1-git-send-email-anprice@redhat.com> References: <1425312908-21017-1-git-send-email-anprice@redhat.com> Message-ID: <54F48D23.900@redhat.com> List-Id: To: cluster-devel.redhat.com MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Hi, On 02/03/15 16:15, Andrew Price wrote: > Return NULL when ip is NULL instead of dereferencing it. > > Signed-off-by: Andrew Price > --- > fs/gfs2/super.c | 13 +++++++------ > 1 file changed, 7 insertions(+), 6 deletions(-) > > diff --git a/fs/gfs2/super.c b/fs/gfs2/super.c > index 1666382..37c59ee 100644 > --- a/fs/gfs2/super.c > +++ b/fs/gfs2/super.c > @@ -1628,12 +1628,13 @@ static struct inode *gfs2_alloc_inode(struct super_block *sb) > struct gfs2_inode *ip; > > ip = kmem_cache_alloc(gfs2_inode_cachep, GFP_KERNEL); > - if (ip) { > - ip->i_flags = 0; > - ip->i_gl = NULL; > - ip->i_rgd = NULL; > - ip->i_res = NULL; > - } > + if (!ip) > + return NULL; > + > + ip->i_flags = 0; > + ip->i_gl = NULL; > + ip->i_rgd = NULL; > + ip->i_res = NULL; > return &ip->i_inode; > } > I'm not sure that I see the problem here... it should just return NULL if ip is NULL, since ip->i_inode is the first element of ip, Steve.