Message ID | 20210308230735.337-4-lsahlber@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [1/9] cifs: move the check for nohandlecache into open_shroot | expand |
these renames look fine. On Mon, Mar 8, 2021 at 5:07 PM Ronnie Sahlberg <lsahlber@redhat.com> wrote: > > These functions will eventually be used to cache any directory, not just the root > so change the names. > > Signed-off-by: Ronnie Sahlberg <lsahlber@redhat.com> > --- > fs/cifs/cifssmb.c | 2 +- > fs/cifs/smb2inode.c | 4 ++-- > fs/cifs/smb2ops.c | 19 ++++++++++--------- > fs/cifs/smb2pdu.c | 2 +- > fs/cifs/smb2proto.h | 14 +++++++------- > 5 files changed, 21 insertions(+), 20 deletions(-) > > diff --git a/fs/cifs/cifssmb.c b/fs/cifs/cifssmb.c > index 0496934feecb..3419289b7663 100644 > --- a/fs/cifs/cifssmb.c > +++ b/fs/cifs/cifssmb.c > @@ -114,7 +114,7 @@ cifs_mark_open_files_invalid(struct cifs_tcon *tcon) > mutex_lock(&tcon->crfid.fid_mutex); > tcon->crfid.is_valid = false; > /* cached handle is not valid, so SMB2_CLOSE won't be sent below */ > - close_shroot_lease_locked(&tcon->crfid); > + close_cached_dir_lease_locked(&tcon->crfid); > memset(tcon->crfid.fid, 0, sizeof(struct cifs_fid)); > mutex_unlock(&tcon->crfid.fid_mutex); > > diff --git a/fs/cifs/smb2inode.c b/fs/cifs/smb2inode.c > index 67f80c9561fc..0d0bc0b878be 100644 > --- a/fs/cifs/smb2inode.c > +++ b/fs/cifs/smb2inode.c > @@ -523,7 +523,7 @@ smb2_query_path_info(const unsigned int xid, struct cifs_tcon *tcon, > return -ENOMEM; > > /* If it is a root and its handle is cached then use it */ > - rc = open_shroot(xid, tcon, full_path, cifs_sb, &cfid); > + rc = open_cached_dir(xid, tcon, full_path, cifs_sb, &cfid); > if (!rc) { > if (tcon->crfid.file_all_info_is_valid) { > move_smb2_info_to_cifs(data, > @@ -535,7 +535,7 @@ smb2_query_path_info(const unsigned int xid, struct cifs_tcon *tcon, > if (!rc) > move_smb2_info_to_cifs(data, smb2_data); > } > - close_shroot(cfid); > + close_cached_dir(cfid); > goto out; > } > > diff --git a/fs/cifs/smb2ops.c b/fs/cifs/smb2ops.c > index 96ff946674e6..d2858c25ff17 100644 > --- a/fs/cifs/smb2ops.c > +++ b/fs/cifs/smb2ops.c > @@ -693,14 +693,14 @@ smb2_close_cached_fid(struct kref *ref) > } > } > > -void close_shroot(struct cached_fid *cfid) > +void close_cached_dir(struct cached_fid *cfid) > { > mutex_lock(&cfid->fid_mutex); > kref_put(&cfid->refcount, smb2_close_cached_fid); > mutex_unlock(&cfid->fid_mutex); > } > > -void close_shroot_lease_locked(struct cached_fid *cfid) > +void close_cached_dir_lease_locked(struct cached_fid *cfid) > { > if (cfid->has_lease) { > cfid->has_lease = false; > @@ -708,10 +708,10 @@ void close_shroot_lease_locked(struct cached_fid *cfid) > } > } > > -void close_shroot_lease(struct cached_fid *cfid) > +void close_cached_dir_lease(struct cached_fid *cfid) > { > mutex_lock(&cfid->fid_mutex); > - close_shroot_lease_locked(cfid); > + close_cached_dir_lease_locked(cfid); > mutex_unlock(&cfid->fid_mutex); > } > > @@ -721,13 +721,14 @@ smb2_cached_lease_break(struct work_struct *work) > struct cached_fid *cfid = container_of(work, > struct cached_fid, lease_break); > > - close_shroot_lease(cfid); > + close_cached_dir_lease(cfid); > } > > /* > - * Open the directory at the root of a share > + * Open the and cache a directory handle. > + * Only supported for the root handle. > */ > -int open_shroot(unsigned int xid, struct cifs_tcon *tcon, > +int open_cached_dir(unsigned int xid, struct cifs_tcon *tcon, > const char *path, > struct cifs_sb_info *cifs_sb, > struct cached_fid **cfid) > @@ -930,7 +931,7 @@ smb3_qfs_tcon(const unsigned int xid, struct cifs_tcon *tcon, > oparms.fid = &fid; > oparms.reconnect = false; > > - rc = open_shroot(xid, tcon, "", cifs_sb, &cfid); > + rc = open_cached_dir(xid, tcon, "", cifs_sb, &cfid); > if (rc == 0) > memcpy(&fid, cfid->fid, sizeof(struct cifs_fid)); > else > @@ -952,7 +953,7 @@ smb3_qfs_tcon(const unsigned int xid, struct cifs_tcon *tcon, > if (cfid == NULL) > SMB2_close(xid, tcon, fid.persistent_fid, fid.volatile_fid); > else > - close_shroot(cfid); > + close_cached_dir(cfid); > } > > static void > diff --git a/fs/cifs/smb2pdu.c b/fs/cifs/smb2pdu.c > index 4bbb6126b14d..0a03f8d88173 100644 > --- a/fs/cifs/smb2pdu.c > +++ b/fs/cifs/smb2pdu.c > @@ -1857,7 +1857,7 @@ SMB2_tdis(const unsigned int xid, struct cifs_tcon *tcon) > if ((tcon->need_reconnect) || (tcon->ses->need_reconnect)) > return 0; > > - close_shroot_lease(&tcon->crfid); > + close_cached_dir_lease(&tcon->crfid); > > rc = smb2_plain_req_init(SMB2_TREE_DISCONNECT, tcon, ses->server, > (void **) &req, > diff --git a/fs/cifs/smb2proto.h b/fs/cifs/smb2proto.h > index 7e4fc69c8b01..ddbdf9923625 100644 > --- a/fs/cifs/smb2proto.h > +++ b/fs/cifs/smb2proto.h > @@ -69,13 +69,13 @@ extern struct cifs_ses *smb2_find_smb_ses(struct TCP_Server_Info *server, > extern int smb3_handle_read_data(struct TCP_Server_Info *server, > struct mid_q_entry *mid); > > -extern int open_shroot(unsigned int xid, struct cifs_tcon *tcon, > - const char *path, > - struct cifs_sb_info *cifs_sb, > - struct cached_fid **cfid); > -extern void close_shroot(struct cached_fid *cfid); > -extern void close_shroot_lease(struct cached_fid *cfid); > -extern void close_shroot_lease_locked(struct cached_fid *cfid); > +extern int open_cached_dir(unsigned int xid, struct cifs_tcon *tcon, > + const char *path, > + struct cifs_sb_info *cifs_sb, > + struct cached_fid **cfid); > +extern void close_cached_dir(struct cached_fid *cfid); > +extern void close_cached_dir_lease(struct cached_fid *cfid); > +extern void close_cached_dir_lease_locked(struct cached_fid *cfid); > extern void move_smb2_info_to_cifs(FILE_ALL_INFO *dst, > struct smb2_file_all_info *src); > extern int smb2_query_reparse_tag(const unsigned int xid, struct cifs_tcon *tcon, > -- > 2.13.6 >
diff --git a/fs/cifs/cifssmb.c b/fs/cifs/cifssmb.c index 0496934feecb..3419289b7663 100644 --- a/fs/cifs/cifssmb.c +++ b/fs/cifs/cifssmb.c @@ -114,7 +114,7 @@ cifs_mark_open_files_invalid(struct cifs_tcon *tcon) mutex_lock(&tcon->crfid.fid_mutex); tcon->crfid.is_valid = false; /* cached handle is not valid, so SMB2_CLOSE won't be sent below */ - close_shroot_lease_locked(&tcon->crfid); + close_cached_dir_lease_locked(&tcon->crfid); memset(tcon->crfid.fid, 0, sizeof(struct cifs_fid)); mutex_unlock(&tcon->crfid.fid_mutex); diff --git a/fs/cifs/smb2inode.c b/fs/cifs/smb2inode.c index 67f80c9561fc..0d0bc0b878be 100644 --- a/fs/cifs/smb2inode.c +++ b/fs/cifs/smb2inode.c @@ -523,7 +523,7 @@ smb2_query_path_info(const unsigned int xid, struct cifs_tcon *tcon, return -ENOMEM; /* If it is a root and its handle is cached then use it */ - rc = open_shroot(xid, tcon, full_path, cifs_sb, &cfid); + rc = open_cached_dir(xid, tcon, full_path, cifs_sb, &cfid); if (!rc) { if (tcon->crfid.file_all_info_is_valid) { move_smb2_info_to_cifs(data, @@ -535,7 +535,7 @@ smb2_query_path_info(const unsigned int xid, struct cifs_tcon *tcon, if (!rc) move_smb2_info_to_cifs(data, smb2_data); } - close_shroot(cfid); + close_cached_dir(cfid); goto out; } diff --git a/fs/cifs/smb2ops.c b/fs/cifs/smb2ops.c index 96ff946674e6..d2858c25ff17 100644 --- a/fs/cifs/smb2ops.c +++ b/fs/cifs/smb2ops.c @@ -693,14 +693,14 @@ smb2_close_cached_fid(struct kref *ref) } } -void close_shroot(struct cached_fid *cfid) +void close_cached_dir(struct cached_fid *cfid) { mutex_lock(&cfid->fid_mutex); kref_put(&cfid->refcount, smb2_close_cached_fid); mutex_unlock(&cfid->fid_mutex); } -void close_shroot_lease_locked(struct cached_fid *cfid) +void close_cached_dir_lease_locked(struct cached_fid *cfid) { if (cfid->has_lease) { cfid->has_lease = false; @@ -708,10 +708,10 @@ void close_shroot_lease_locked(struct cached_fid *cfid) } } -void close_shroot_lease(struct cached_fid *cfid) +void close_cached_dir_lease(struct cached_fid *cfid) { mutex_lock(&cfid->fid_mutex); - close_shroot_lease_locked(cfid); + close_cached_dir_lease_locked(cfid); mutex_unlock(&cfid->fid_mutex); } @@ -721,13 +721,14 @@ smb2_cached_lease_break(struct work_struct *work) struct cached_fid *cfid = container_of(work, struct cached_fid, lease_break); - close_shroot_lease(cfid); + close_cached_dir_lease(cfid); } /* - * Open the directory at the root of a share + * Open the and cache a directory handle. + * Only supported for the root handle. */ -int open_shroot(unsigned int xid, struct cifs_tcon *tcon, +int open_cached_dir(unsigned int xid, struct cifs_tcon *tcon, const char *path, struct cifs_sb_info *cifs_sb, struct cached_fid **cfid) @@ -930,7 +931,7 @@ smb3_qfs_tcon(const unsigned int xid, struct cifs_tcon *tcon, oparms.fid = &fid; oparms.reconnect = false; - rc = open_shroot(xid, tcon, "", cifs_sb, &cfid); + rc = open_cached_dir(xid, tcon, "", cifs_sb, &cfid); if (rc == 0) memcpy(&fid, cfid->fid, sizeof(struct cifs_fid)); else @@ -952,7 +953,7 @@ smb3_qfs_tcon(const unsigned int xid, struct cifs_tcon *tcon, if (cfid == NULL) SMB2_close(xid, tcon, fid.persistent_fid, fid.volatile_fid); else - close_shroot(cfid); + close_cached_dir(cfid); } static void diff --git a/fs/cifs/smb2pdu.c b/fs/cifs/smb2pdu.c index 4bbb6126b14d..0a03f8d88173 100644 --- a/fs/cifs/smb2pdu.c +++ b/fs/cifs/smb2pdu.c @@ -1857,7 +1857,7 @@ SMB2_tdis(const unsigned int xid, struct cifs_tcon *tcon) if ((tcon->need_reconnect) || (tcon->ses->need_reconnect)) return 0; - close_shroot_lease(&tcon->crfid); + close_cached_dir_lease(&tcon->crfid); rc = smb2_plain_req_init(SMB2_TREE_DISCONNECT, tcon, ses->server, (void **) &req, diff --git a/fs/cifs/smb2proto.h b/fs/cifs/smb2proto.h index 7e4fc69c8b01..ddbdf9923625 100644 --- a/fs/cifs/smb2proto.h +++ b/fs/cifs/smb2proto.h @@ -69,13 +69,13 @@ extern struct cifs_ses *smb2_find_smb_ses(struct TCP_Server_Info *server, extern int smb3_handle_read_data(struct TCP_Server_Info *server, struct mid_q_entry *mid); -extern int open_shroot(unsigned int xid, struct cifs_tcon *tcon, - const char *path, - struct cifs_sb_info *cifs_sb, - struct cached_fid **cfid); -extern void close_shroot(struct cached_fid *cfid); -extern void close_shroot_lease(struct cached_fid *cfid); -extern void close_shroot_lease_locked(struct cached_fid *cfid); +extern int open_cached_dir(unsigned int xid, struct cifs_tcon *tcon, + const char *path, + struct cifs_sb_info *cifs_sb, + struct cached_fid **cfid); +extern void close_cached_dir(struct cached_fid *cfid); +extern void close_cached_dir_lease(struct cached_fid *cfid); +extern void close_cached_dir_lease_locked(struct cached_fid *cfid); extern void move_smb2_info_to_cifs(FILE_ALL_INFO *dst, struct smb2_file_all_info *src); extern int smb2_query_reparse_tag(const unsigned int xid, struct cifs_tcon *tcon,
These functions will eventually be used to cache any directory, not just the root so change the names. Signed-off-by: Ronnie Sahlberg <lsahlber@redhat.com> --- fs/cifs/cifssmb.c | 2 +- fs/cifs/smb2inode.c | 4 ++-- fs/cifs/smb2ops.c | 19 ++++++++++--------- fs/cifs/smb2pdu.c | 2 +- fs/cifs/smb2proto.h | 14 +++++++------- 5 files changed, 21 insertions(+), 20 deletions(-)