rhead = req->r_request->front.iov_base;
rhead->args.mknod.mode = cpu_to_le32(mode);
rhead->args.mknod.rdev = cpu_to_le32(rdev);
- ceph_mdsc_lease_release(mdsc, dir, NULL, CEPH_LOCK_ICONTENT);
+ ceph_mdsc_lease_release(mdsc, dir, NULL, CEPH_LOCK_IFILE);
err = ceph_mdsc_do_request(mdsc, req);
if (!err && req->r_reply_info.trace_numd == 0) {
/*
return PTR_ERR(req);
}
req->r_locked_dir = dir;
- ceph_mdsc_lease_release(mdsc, dir, NULL, CEPH_LOCK_ICONTENT);
+ ceph_mdsc_lease_release(mdsc, dir, NULL, CEPH_LOCK_IFILE);
err = ceph_mdsc_do_request(mdsc, req);
ceph_mdsc_put_request(req);
if (err)
rhead = req->r_request->front.iov_base;
rhead->args.mkdir.mode = cpu_to_le32(mode);
- ceph_mdsc_lease_release(mdsc, dir, NULL, CEPH_LOCK_ICONTENT);
+ ceph_mdsc_lease_release(mdsc, dir, NULL, CEPH_LOCK_IFILE);
err = ceph_mdsc_do_request(mdsc, req);
ceph_mdsc_put_request(req);
if (err < 0)
req->r_last_dentry = dget(dentry); /* use this dentry in fill_trace */
req->r_locked_dir = old_dentry->d_inode;
- ceph_mdsc_lease_release(mdsc, dir, NULL, CEPH_LOCK_ICONTENT);
+ ceph_mdsc_lease_release(mdsc, dir, NULL, CEPH_LOCK_IFILE);
err = ceph_mdsc_do_request(mdsc, req);
if (err) {
d_drop(dentry);
req->r_locked_dir = dir; /* by VFS */
ceph_mdsc_lease_release(mdsc, dir, dentry,
- CEPH_LOCK_DN|CEPH_LOCK_ICONTENT);
+ CEPH_LOCK_DN|CEPH_LOCK_IFILE);
ceph_mdsc_lease_release(mdsc, inode, NULL, CEPH_LOCK_ILINK);
err = ceph_mdsc_do_request(mdsc, req);
ceph_mdsc_put_request(req);
req->r_last_dentry = dget(new_dentry);
req->r_locked_dir = new_dir;
ceph_mdsc_lease_release(mdsc, old_dir, old_dentry,
- CEPH_LOCK_DN|CEPH_LOCK_ICONTENT);
+ CEPH_LOCK_DN|CEPH_LOCK_IFILE);
if (new_dentry->d_inode)
ceph_mdsc_lease_release(mdsc, new_dentry->d_inode, NULL,
CEPH_LOCK_ILINK);
if (ceph_ino(dir) != 1 && /* ICONTENT is meaningless on root inode */
ceph_inode(dir)->i_version == dentry->d_time &&
- ceph_inode_lease_valid(dir, CEPH_LOCK_ICONTENT)) {
+ ceph_inode_lease_valid(dir, CEPH_LOCK_IFILE)) {
dout(20, "dentry_revalidate %p %lu ICONTENT on dir %p %llu\n",
dentry, dentry->d_time, dir, ceph_inode(dir)->i_version);
return 1;
dentry = d_find_alias(inode);
if (!dentry)
return -ESTALE; /* yuck */
- ceph_mdsc_lease_release(mdsc, inode, NULL, CEPH_LOCK_ICONTENT);
+ ceph_mdsc_lease_release(mdsc, inode, NULL, CEPH_LOCK_IFILE);
req = prepare_open_request(inode->i_sb, dentry, flags, 0);
if (IS_ERR(req)) {
err = PTR_ERR(req);
if (IS_ERR(req))
return ERR_PTR(PTR_ERR(req));
if (flags & O_CREAT)
- ceph_mdsc_lease_release(mdsc, dir, NULL, CEPH_LOCK_ICONTENT);
+ ceph_mdsc_lease_release(mdsc, dir, NULL, CEPH_LOCK_IFILE);
req->r_last_dentry = dget(dentry); /* use this dentry in fill_trace */
req->r_locked_dir = dir; /* caller holds dir->i_mutex */
err = ceph_mdsc_do_request(mdsc, req);
havemask = ci->i_lease_mask;
/* EXCL cap counts for an ICONTENT lease... check caps? */
- if ((mask & CEPH_LOCK_ICONTENT) &&
+ if ((mask & CEPH_LOCK_IFILE) &&
__ceph_caps_issued(ci, NULL) & CEPH_CAP_EXCL) {
dout(20, "lease_valid inode %p EXCL cap -> ICONTENT\n", inode);
- havemask |= CEPH_LOCK_ICONTENT;
+ havemask |= CEPH_LOCK_IFILE;
}
- /* any ICONTENT bits imply all ICONTENT bits */
- if (havemask & CEPH_LOCK_ICONTENT)
- havemask |= CEPH_LOCK_ICONTENT;
if (ci->i_lease_session) {
struct ceph_mds_session *s = ci->i_lease_session;
/* update inode lease */
mask = update_inode_lease(in, rinfo->trace_ilease[d],
session, req->r_request_started);
- have_icontent = mask & CEPH_LOCK_ICONTENT;
+ have_icontent = mask & CEPH_LOCK_IFILE;
/* do we have a dn lease? */
have_lease = have_icontent ||
}
/* if i have valid values, this may be a no-op */
- if (ceph_inode_lease_valid(inode, CEPH_LOCK_ICONTENT) &&
+ if (ceph_inode_lease_valid(inode, CEPH_LOCK_IFILE) &&
!(((ia_valid & ATTR_ATIME) &&
!timespec_equal(&inode->i_atime, &attr->ia_atime)) ||
((ia_valid & ATTR_MTIME) &&
if (ia_valid & ATTR_MTIME)
reqh->args.utime.mask |= cpu_to_le32(CEPH_UTIME_MTIME);
- ceph_mdsc_lease_release(mdsc, inode, NULL, CEPH_LOCK_ICONTENT);
+ ceph_mdsc_lease_release(mdsc, inode, NULL, CEPH_LOCK_IFILE);
err = ceph_mdsc_do_request(mdsc, req);
ceph_mdsc_put_request(req);
dout(10, "utime result %d\n", err);
spin_unlock(&inode->i_lock);
return 0;
}
- if (ceph_inode_lease_valid(inode, CEPH_LOCK_ICONTENT) &&
+ if (ceph_inode_lease_valid(inode, CEPH_LOCK_IFILE) &&
attr->ia_size == inode->i_size) {
dout(10, "lease indicates truncate is a no-op\n");
return 0;
return PTR_ERR(req);
reqh = req->r_request->front.iov_base;
reqh->args.truncate.length = cpu_to_le64(attr->ia_size);
- ceph_mdsc_lease_release(mdsc, inode, NULL, CEPH_LOCK_ICONTENT);
+ ceph_mdsc_lease_release(mdsc, inode, NULL, CEPH_LOCK_IFILE);
err = ceph_mdsc_do_request(mdsc, req);
ceph_mdsc_put_request(req);
dout(10, "truncate result %d\n", err);
kfree(path);
reqh = req->r_request->front.iov_base;
reqh->args.setlayout.layout = layout;
- ceph_mdsc_lease_release(mdsc, inode, NULL, CEPH_LOCK_ICONTENT);
+ ceph_mdsc_lease_release(mdsc, inode, NULL, CEPH_LOCK_IFILE);
err = ceph_mdsc_do_request(mdsc, req);
ceph_mdsc_put_request(req);
return err;