]> www.infradead.org Git - users/hch/misc.git/commitdiff
smb: client: Reduce the scopes for a few variables in two functions
authorMarkus Elfring <elfring@users.sourceforge.net>
Sun, 5 Oct 2025 17:01:48 +0000 (19:01 +0200)
committerSteve French <stfrench@microsoft.com>
Mon, 6 Oct 2025 21:43:39 +0000 (16:43 -0500)
* cifs_lookup():
  Move the definition for the local variable “cfid” into an else branch
  so that the corresponding setting will only be performed if a NULL inode
  was detected during lookup by this function.

* cifs_d_revalidate():
  Move the definition for the local variables “inode” and “rc” into
  an if branch so that the corresponding setting will only be performed
  after a d_really_is_positive() call.

  Move the definition for the local variable “cfid” into an else branch
  so that the corresponding setting will only be performed if further data
  processing will be needed for an open_cached_dir_by_dentry() call.

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
Acked-by: Henrique Carvalho <henrique.carvalho@suse.com>
Signed-off-by: Steve French <stfrench@microsoft.com>
fs/smb/client/dir.c

index fc67a6441c9678c997de05d0dcc7aa4155d8bc38..7472fddadd4fe2b511fd7ae2258565931bbf3fe6 100644 (file)
@@ -678,7 +678,6 @@ cifs_lookup(struct inode *parent_dir_inode, struct dentry *direntry,
        const char *full_path;
        void *page;
        int retry_count = 0;
-       struct cached_fid *cfid = NULL;
 
        xid = get_xid();
 
@@ -717,6 +716,8 @@ cifs_lookup(struct inode *parent_dir_inode, struct dentry *direntry,
        if (d_really_is_positive(direntry)) {
                cifs_dbg(FYI, "non-NULL inode in lookup\n");
        } else {
+               struct cached_fid *cfid = NULL;
+
                cifs_dbg(FYI, "NULL inode in lookup\n");
 
                /*
@@ -785,15 +786,13 @@ static int
 cifs_d_revalidate(struct inode *dir, const struct qstr *name,
                  struct dentry *direntry, unsigned int flags)
 {
-       struct inode *inode = NULL;
-       struct cached_fid *cfid;
-       int rc;
-
        if (flags & LOOKUP_RCU)
                return -ECHILD;
 
        if (d_really_is_positive(direntry)) {
-               inode = d_inode(direntry);
+               int rc;
+               struct inode *inode = d_inode(direntry);
+
                if ((flags & LOOKUP_REVAL) && !CIFS_CACHE_READ(CIFS_I(inode)))
                        CIFS_I(inode)->time = 0; /* force reval */
 
@@ -836,6 +835,7 @@ cifs_d_revalidate(struct inode *dir, const struct qstr *name,
        } else {
                struct cifs_sb_info *cifs_sb = CIFS_SB(dir->i_sb);
                struct cifs_tcon *tcon = cifs_sb_master_tcon(cifs_sb);
+               struct cached_fid *cfid;
 
                if (!open_cached_dir_by_dentry(tcon, direntry->d_parent, &cfid)) {
                        /*