Lines Matching refs:cfid
625 struct cached_fid *cfid = container_of(ref, struct cached_fid,
628 if (cfid->is_valid) {
630 SMB2_close(0, cfid->tcon, cfid->fid->persistent_fid,
631 cfid->fid->volatile_fid);
632 cfid->is_valid = false;
633 cfid->file_all_info_is_valid = false;
634 cfid->has_lease = false;
638 void close_shroot(struct cached_fid *cfid)
640 mutex_lock(&cfid->fid_mutex);
641 kref_put(&cfid->refcount, smb2_close_cached_fid);
642 mutex_unlock(&cfid->fid_mutex);
645 void close_shroot_lease_locked(struct cached_fid *cfid)
647 if (cfid->has_lease) {
648 cfid->has_lease = false;
649 kref_put(&cfid->refcount, smb2_close_cached_fid);
653 void close_shroot_lease(struct cached_fid *cfid)
655 mutex_lock(&cfid->fid_mutex);
656 close_shroot_lease_locked(cfid);
657 mutex_unlock(&cfid->fid_mutex);
663 struct cached_fid *cfid = container_of(work,
666 close_shroot_lease(cfid);
674 struct cached_fid **cfid)
694 *cfid = &tcon->crfid;
846 *cfid = &tcon->crfid;
860 struct cached_fid *cfid = NULL;
874 rc = open_shroot(xid, tcon, cifs_sb, &cfid);
876 memcpy(&fid, cfid->fid, sizeof(struct cifs_fid));
894 close_shroot(cfid);