cifs: Remove redundant setting of NETFS_SREQ_HIT_EOF
authorDavid Howells <dhowells@redhat.com>
Mon, 16 Sep 2024 14:02:06 +0000 (15:02 +0100)
committerLinus Torvalds <torvalds@linux-foundation.org>
Mon, 16 Sep 2024 14:13:48 +0000 (16:13 +0200)
Fix an upstream merge resolution issue[1].  The NETFS_SREQ_HIT_EOF flag,
and code to set it, got added via two different paths.  The original path
saw it added in the netfslib read improvements[2], but it was also added,
and slightly differently, in a fix that was committed before v6.11:

        1da29f2c39b67b846b74205c81bf0ccd96d34727
        netfs, cifs: Fix handling of short DIO read

However, the code added to smb2_readv_callback() to set the flag in didn't
get removed when the netfs read improvements series was rebased to take
account of the cifs fixes.  The proposed merge resolution[2] deleted it
rather than rebase the patches.

Fix this by removing the redundant lines.  Code to set the bit that derives
from the fix patch is still there, a few lines above in the source.

Fixes: 35219bc5c71f ("Merge tag 'vfs-6.12.netfs' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs")
Signed-off-by: David Howells <dhowells@redhat.com>
cc: Steve French <stfrench@microsoft.com>
cc: Paulo Alcantara <pc@manguebit.com>
cc: Christian Brauner <brauner@kernel.org>
cc: Jeff Layton <jlayton@kernel.org>
cc: linux-cifs@vger.kernel.org
cc: netfs@lists.linux.dev
cc: linux-fsdevel@vger.kernel.org
Link: https://lore.kernel.org/r/CAHk-=wjr8fxk20-wx=63mZruW1LTvBvAKya1GQ1EhyzXb-okMA@mail.gmail.com/
Link: https://lore.kernel.org/linux-fsdevel/20240913-vfs-netfs-39ef6f974061@brauner/
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
fs/smb/client/smb2pdu.c

index 95377bb919506f1105083d4b27f0cb65f4a5a8a5..bb8ecbbe78af75a91677d4a79b55c811bce71813 100644 (file)
@@ -4614,8 +4614,6 @@ smb2_readv_callback(struct mid_q_entry *mid)
                              0, cifs_trace_rw_credits_read_response_clear);
        rdata->credits.value = 0;
        rdata->subreq.transferred += rdata->got_bytes;
-       if (rdata->subreq.start + rdata->subreq.transferred >= rdata->subreq.rreq->i_size)
-               __set_bit(NETFS_SREQ_HIT_EOF, &rdata->subreq.flags);
        trace_netfs_sreq(&rdata->subreq, netfs_sreq_trace_io_progress);
        INIT_WORK(&rdata->subreq.work, smb2_readv_worker);
        queue_work(cifsiod_wq, &rdata->subreq.work);