[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAOi1vP8nbP93SyjhN4uJDaKEFKmsBcOKH6iGjpt3Qbj8n7CapQ@mail.gmail.com>
Date: Mon, 26 Jun 2023 23:01:37 +0200
From: Ilya Dryomov <idryomov@...il.com>
To: David Howells <dhowells@...hat.com>
Cc: netdev@...r.kernel.org, Xiubo Li <xiubli@...hat.com>,
Jeff Layton <jlayton@...nel.org>, "David S. Miller" <davem@...emloft.net>,
Eric Dumazet <edumazet@...gle.com>, Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>,
Jens Axboe <axboe@...nel.dk>, Matthew Wilcox <willy@...radead.org>, ceph-devel@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH net-next] libceph: Partially revert changes to support MSG_SPLICE_PAGES
On Mon, Jun 26, 2023 at 10:44 PM David Howells <dhowells@...hat.com> wrote:
>
> Ilya Dryomov <idryomov@...il.com> wrote:
>
> > if (sendpage_ok(bv.bv_page))
> > msg.msg_flags |= MSG_SPLICE_PAGES;
> > else
> > msg.msg_flags &= ~MSG_SPLICE_PAGES;
>
> Hmmm... I'm not sure there's any guarantee that msg, including msg_flags,
> won't get altered by ->sendmsg().
If this is indeed an issue, do_sendmsg() should be fixed too. I would
like to avoid having do_try_sendpage() do one thing and do_sendmsg() do
something subtly different.
But then, even with the current patch, only msg_flags is reinitialized
on the next loop iteration, not the entire message. Should the entire
message be reinitialized?
Thanks,
Ilya
Powered by blists - more mailing lists