]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
cifs: Fix undefined variables
authorDavid Howells <dhowells@redhat.com>
Mon, 18 May 2026 21:13:09 +0000 (22:13 +0100)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 19 May 2026 00:50:06 +0000 (17:50 -0700)
Fix a couple of undefined variables introduced by the patch to fix tearing
on ->remote_i_size and ->zero_point.  For some reason, make W=1 with gcc
doesn't give undefined variable warnings (but clang does).

Fixes: 2c8f4742bb76 ("netfs: Fix potential for tearing in ->remote_i_size and ->zero_point")
Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202605031459.eX5UbO3K-lkp@intel.com/
Closes: https://lore.kernel.org/oe-kbuild-all/202605021450.ca5QGqLH-lkp@intel.com/
cc: Steve French <sfrench@samba.org>
cc: Paulo Alcantara <pc@manguebit.org>
cc: Matthew Wilcox <willy@infradead.org>
cc: Christian Brauner <brauner@kernel.org>
cc: linux-cifs@vger.kernel.org
cc: netfs@lists.linux.dev
cc: linux-fsdevel@vger.kernel.org
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
fs/smb/client/cifsfs.c

index feac491c50702f0e55e8f11c4677b29713d10987..f557eb7875c76517baf935a92cc5a5da61b20a50 100644 (file)
@@ -1304,7 +1304,7 @@ static loff_t cifs_remap_file_range(struct file *src_file, loff_t off,
        struct cifsFileInfo *smb_file_src = src_file->private_data;
        struct cifsFileInfo *smb_file_target = dst_file->private_data;
        struct cifs_tcon *target_tcon, *src_tcon;
-       unsigned long long i_size, old_size, new_size, zero_point;
+       unsigned long long i_size, new_size;
        unsigned long long destend, fstart, fend;
        unsigned int xid;
        int rc;
@@ -1372,7 +1372,7 @@ static loff_t cifs_remap_file_range(struct file *src_file, loff_t off,
                goto unlock;
 
        spin_lock(&target_inode->i_lock);
-       if (fend > zero_point)
+       if (fend > target_cifsi->netfs._zero_point)
                netfs_write_zero_point(target_inode, fend + 1);
        i_size = target_inode->i_size;
        spin_unlock(&target_inode->i_lock);
@@ -1387,7 +1387,7 @@ static loff_t cifs_remap_file_range(struct file *src_file, loff_t off,
        if (target_tcon->ses->server->ops->duplicate_extents) {
                rc = target_tcon->ses->server->ops->duplicate_extents(xid,
                        smb_file_src, smb_file_target, off, len, destoff);
-               if (rc == 0 && new_size > old_size) {
+               if (rc == 0 && new_size > i_size) {
                        truncate_setsize(target_inode, new_size);
                        fscache_resize_cookie(cifs_inode_cookie(target_inode),
                                              new_size);