OSDN Git Service

kernfs: checking for IS_ERR() instead of NULL
authorDan Carpenter <dan.carpenter@oracle.com>
Wed, 30 Aug 2017 14:04:56 +0000 (17:04 +0300)
committerJens Axboe <axboe@kernel.dk>
Fri, 1 Sep 2017 14:17:55 +0000 (08:17 -0600)
The kernfs_get_inode() returns NULL on error, it never returns error
pointers.

Fixes: aa8188253474 ("kernfs: add exportfs operations")
Acked-by: Tejun Heo <tj@kernel.org>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
fs/kernfs/mount.c

index 7c452f4..95a7c88 100644 (file)
@@ -99,8 +99,8 @@ static struct inode *kernfs_fh_get_inode(struct super_block *sb,
                return ERR_PTR(-ESTALE);
        inode = kernfs_get_inode(sb, kn);
        kernfs_put(kn);
-       if (IS_ERR(inode))
-               return ERR_CAST(inode);
+       if (!inode)
+               return ERR_PTR(-ESTALE);
 
        if (generation && inode->i_generation != generation) {
                /* we didn't find the right inode.. */