Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 04d000eb authored by Sage Weil's avatar Sage Weil
Browse files

ceph: fix open file counting on snapped inodes when mds returns no caps



It's possible the MDS will not issue caps on a snapped inode, in which case
an open request may not __ceph_get_fmode(), botching the open file
counting.  (This is actually a server bug, but the client shouldn't BUG out
in this case.)

Signed-off-by: default avatarSage Weil <sage@newdream.net>
parent 0ceed5db
Loading
Loading
Loading
Loading
+4 −0
Original line number Original line Diff line number Diff line
@@ -733,6 +733,10 @@ no_change:
				__ceph_get_fmode(ci, cap_fmode);
				__ceph_get_fmode(ci, cap_fmode);
			spin_unlock(&inode->i_lock);
			spin_unlock(&inode->i_lock);
		}
		}
	} else if (cap_fmode >= 0) {
		pr_warning("mds issued no caps on %llx.%llx\n",
			   ceph_vinop(inode));
		__ceph_get_fmode(ci, cap_fmode);
	}
	}


	/* update delegation info? */
	/* update delegation info? */