[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20240906114809.08a545d9@canb.auug.org.au>
Date: Fri, 6 Sep 2024 11:48:09 +1000
From: Stephen Rothwell <sfr@...b.auug.org.au>
To: Christian Brauner <brauner@...nel.org>, Steve French
<smfrench@...il.com>
Cc: CIFS <linux-cifs@...r.kernel.org>, David Howells <dhowells@...hat.com>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>, Linux Next
Mailing List <linux-next@...r.kernel.org>, Steve French
<stfrench@...rosoft.com>
Subject: Re: linux-next: manual merge of the vfs-brauner tree with the cifs
tree
Hi all,
On Fri, 6 Sep 2024 09:38:21 +1000 Stephen Rothwell <sfr@...b.auug.org.au> wrote:
>
> On Fri, 6 Sep 2024 08:46:37 +1000 Stephen Rothwell <sfr@...b.auug.org.au> wrote:
> >
> > Today's linux-next merge of the vfs-brauner tree got a conflict in:
> >
> > fs/smb/client/cifssmb.c
> >
> > between commit:
> >
> > a68c74865f51 ("cifs: Fix SMB1 readv/writev callback in the same way as SMB2/3")
> >
> > from the cifs tree and commit:
> >
> > 0fda1f8c6bf8 ("netfs: Speed up buffered reading")
> >
> > from the vfs-brauner tree.
> >
> > I fixed it up (I used the former as it is (supposedly) a much newer patch)
> > and can carry the fix as necessary. This is now fixed as far as linux-next
> > is concerned, but any non trivial conflicts should be mentioned to your
> > upstream maintainer when your tree is submitted for merging. You may
> > also want to consider cooperating with the maintainer of the conflicting
> > tree to minimise any particularly complex conflicts.
>
> The fixup ended up being as below.
>
> --
> Cheers,
> Stephen Rothwell
>
> diff --cc fs/smb/client/cifssmb.c
> index cfae2e918209,04f2a5441a89..790b3f5ea64b
> --- a/fs/smb/client/cifssmb.c
> +++ b/fs/smb/client/cifssmb.c
> @@@ -1261,16 -1261,6 +1261,15 @@@ openRetry
> return rc;
> }
>
> +static void cifs_readv_worker(struct work_struct *work)
> +{
> + struct cifs_io_subrequest *rdata =
> + container_of(work, struct cifs_io_subrequest, subreq.work);
> +
> - netfs_subreq_terminated(&rdata->subreq,
> - (rdata->result == 0 || rdata->result == -EAGAIN) ?
> - rdata->got_bytes : rdata->result, true);
> ++ rdata->subreq.transferred += rdata->got_bytes;
> ++ netfs_read_subreq_terminated(&rdata->subreq, rdata->result, true);
> +}
> +
> static void
> cifs_readv_callback(struct mid_q_entry *mid)
> {
Also this (which I will roll into the above merge resolution tomorrow):
From: Stephen Rothwell <sfr@...b.auug.org.au>
Date: Fri, 6 Sep 2024 11:39:25 +1000
Subject: [PATCH] fix up for "netfs: Speed up buffered reading"
interacting with "cifs: Fix SMB1 readv/writev callback in the same way
as SMB2/3"
Signed-off-by: Stephen Rothwell <sfr@...b.auug.org.au>
---
fs/smb/client/cifssmb.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/fs/smb/client/cifssmb.c b/fs/smb/client/cifssmb.c
index 790b3f5ea64b..76fb2287c17b 100644
--- a/fs/smb/client/cifssmb.c
+++ b/fs/smb/client/cifssmb.c
@@ -1326,9 +1326,9 @@ cifs_readv_callback(struct mid_q_entry *mid)
__set_bit(NETFS_SREQ_HIT_EOF, &rdata->subreq.flags);
rdata->result = 0;
} else {
- if (rdata->got_bytes < rdata->actual_len &&
- rdata->subreq.start + rdata->subreq.transferred + rdata->got_bytes ==
- ictx->remote_i_size) {
+ size_t trans = rdata->subreq.transferred + rdata->got_bytes;
+ if (trans < rdata->subreq.len &&
+ rdata->subreq.start + trans == ictx->remote_i_size) {
__set_bit(NETFS_SREQ_HIT_EOF, &rdata->subreq.flags);
rdata->result = 0;
}
--
2.45.2
--
Cheers,
Stephen Rothwell
Content of type "application/pgp-signature" skipped
Powered by blists - more mailing lists