X-Git-Url: http://git.samba.org/samba.git/?a=blobdiff_plain;f=fs%2Fceph%2Finode.c;h=389f9dbd9949557add69369e6fc4ba68e2c84e69;hb=e9563355ac1175dd3440dc2ea5c28b27ed51a283;hp=8f9b9fe8ef9f4a84056c16289650d482a8c0c8ff;hpb=d50f58bbd979e86378dfdec982452041f0e604ef;p=sfrench%2Fcifs-2.6.git diff --git a/fs/ceph/inode.c b/fs/ceph/inode.c index 8f9b9fe8ef9f..389f9dbd9949 100644 --- a/fs/ceph/inode.c +++ b/fs/ceph/inode.c @@ -1199,8 +1199,10 @@ retry_lookup: goto out; } err = ceph_init_dentry(dn); - if (err < 0) + if (err < 0) { + dput(dn); goto out; + } } else if (dn->d_inode && (ceph_ino(dn->d_inode) != vino.ino || ceph_snap(dn->d_inode) != vino.snap)) { @@ -1499,7 +1501,7 @@ retry: if (wrbuffer_refs == 0) ceph_check_caps(ci, CHECK_CAPS_AUTHONLY, NULL); if (wake) - wake_up(&ci->i_cap_wq); + wake_up_all(&ci->i_cap_wq); }