ceph: ceph_get_inode() returns an ERR_PTR
authorDan Carpenter <error27@gmail.com>
Wed, 25 Aug 2010 07:11:35 +0000 (09:11 +0200)
committerSage Weil <sage@newdream.net>
Wed, 25 Aug 2010 19:01:54 +0000 (12:01 -0700)
ceph_get_inode() returns an ERR_PTR and it doesn't return a NULL.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Sage Weil <sage@newdream.net>
fs/ceph/inode.c

index 3e6b52cb5ee85e58d58fc98dacc3c9e11242759f..e7cca414da03bcbd7549889a5ecb00d05ee11901 100644 (file)
@@ -1230,11 +1230,11 @@ retry_lookup:
                        in = dn->d_inode;
                } else {
                        in = ceph_get_inode(parent->d_sb, vino);
-                       if (in == NULL) {
+                       if (IS_ERR(in)) {
                                dout("new_inode badness\n");
                                d_delete(dn);
                                dput(dn);
-                               err = -ENOMEM;
+                               err = PTR_ERR(in);
                                goto out;
                        }
                        dn = splice_dentry(dn, in, NULL);