From mboxrd@z Thu Jan 1 00:00:00 1970 From: Cyrill Gorcunov Subject: [patch 4/9] fs, exportfs: Fix nil dereference if no s_export_op present Date: Thu, 23 Aug 2012 14:43:27 +0400 Message-ID: <20120823104725.830795272@openvz.org> References: <20120823104323.040550004@openvz.org> Cc: Al Viro , Alexey Dobriyan , Andrew Morton , Pavel Emelyanov , James Bottomley , Matthew Helsley , aneesh.kumar@linux.vnet.ibm.com, bfields@fieldses.org, Cyrill Gorcunov , Al Viro To: linux-kernel@vger.kernel.org, linux-fsdevel@vger.kernel.org Return-path: Content-Disposition: inline; filename=fs-exportfs-add-null-check Sender: linux-kernel-owner@vger.kernel.org List-Id: linux-fsdevel.vger.kernel.org If there is no s_export_op present in a target superblock we might have nil dereference. Fix it with eplicit test if s_export_op is provided. Signed-off-by: Cyrill Gorcunov CC: Pavel Emelyanov CC: Al Viro CC: Alexey Dobriyan CC: Andrew Morton CC: James Bottomley CC: "Aneesh Kumar K.V" CC: Alexey Dobriyan CC: Matthew Helsley CC: "J. Bruce Fields" CC: "Aneesh Kumar K.V" --- fs/exportfs/expfs.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) Index: linux-2.6.git/fs/exportfs/expfs.c =================================================================== --- linux-2.6.git.orig/fs/exportfs/expfs.c +++ linux-2.6.git/fs/exportfs/expfs.c @@ -357,7 +357,7 @@ int exportfs_encode_fh(struct dentry *de */ parent = p->d_inode; } - if (nop->encode_fh) + if (nop && nop->encode_fh) error = nop->encode_fh(inode, fid->raw, max_len, parent); else error = export_encode_fh(inode, fid, max_len, parent);