return;
}
- handle_client_opent(mdr);
+ handle_client_opent(mdr, cmode);
return;
}
}
}
-void Server::handle_client_opent(MDRequest *mdr)
+void Server::handle_client_opent(MDRequest *mdr, int cmode)
{
CInode *in = mdr->ref;
assert(in);
+ dout(10) << "handle_client_opent " << *in << dendl;
+
mdr->ls = mdlog->get_current_segment();
EUpdate *le = new EUpdate(mdlog, "open_truncate");
// do the open
bool is_new = false;
- int cmode = ceph_flags_to_mode(mdr->client_request->head.args.open.flags);
SnapRealm *realm = in->find_snaprealm();
Capability *cap = mds->locker->issue_new_caps(in, cmode, mdr->session, is_new, realm);
if (is_new)
// open
void handle_client_open(MDRequest *mdr);
void handle_client_openc(MDRequest *mdr); // O_CREAT variant.
- void handle_client_opent(MDRequest *mdr); // O_TRUNC variant.
+ void handle_client_opent(MDRequest *mdr, int cmode); // O_TRUNC variant.
// namespace changes
void handle_client_mknod(MDRequest *mdr);