linux-man.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: [PATCH] vmsplice.2: SPLICE_F_GIFT became no-op
       [not found] <20190801222417.14413-1-leonardo@linux.ibm.com>
@ 2019-09-13 12:55 ` Michael Kerrisk (man-pages)
  2019-11-14 18:56   ` Leonardo Bras
  2019-12-17 21:12   ` Leonardo Bras
  0 siblings, 2 replies; 5+ messages in thread
From: Michael Kerrisk (man-pages) @ 2019-09-13 12:55 UTC (permalink / raw)
  To: Leonardo Bras, Jens Axboe; +Cc: mtk.manpages, linux-man

Hello Jens,

Would you be willing to take a look at this man-pages bug report
relating to vmsplice()?

Thanks,

Michael

On 8/2/19 12:24 AM, Leonardo Bras wrote:
> As explained in splice.2, SPLICE_F_MOVE became a no-op, and since it
> is needed to use page gifting, it made SPLICE_F_GIFT a no-op too.
> 
> I took a look in current code, and found no use of this flag:
> When enabled, it sets PIPE_BUF_FLAG_GIFT,which is only checked in
> user_page_pipe_buf_steal, which is only used on
> user_page_pipe_buf_ops, as a .steal component.
> 
> But, in the whole kernel code, there is no calling of a steal()
> function, making me believe this flag is not used anymore.
> 
> Signed-off-by: Leonardo Bras <leonardo@linux.ibm.com>
> ---
>  man2/vmsplice.2 | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/man2/vmsplice.2 b/man2/vmsplice.2
> index 17834607b..94fb86142 100644
> --- a/man2/vmsplice.2
> +++ b/man2/vmsplice.2
> @@ -123,6 +123,11 @@ if this flag is not specified, then a subsequent
>  .B SPLICE_F_MOVE
>  must copy the pages.
>  Data must also be properly page aligned, both in memory and length.
> +Starting in Linux 2.6.21, it is a no-op, because the
> +.B SPLICE_F_MOVE
> +also became a no-op on
> +.BR splice (2)
> +.
>  .\" FIXME
>  .\" It looks like the page-alignment requirement went away with
>  .\" commit bd1a68b59c8e3bce45fb76632c64e1e063c3962d
> 


-- 
Michael Kerrisk
Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/
Linux/UNIX System Programming Training: http://man7.org/training/

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] vmsplice.2: SPLICE_F_GIFT became no-op
  2019-09-13 12:55 ` [PATCH] vmsplice.2: SPLICE_F_GIFT became no-op Michael Kerrisk (man-pages)
@ 2019-11-14 18:56   ` Leonardo Bras
  2019-12-17 21:12   ` Leonardo Bras
  1 sibling, 0 replies; 5+ messages in thread
From: Leonardo Bras @ 2019-11-14 18:56 UTC (permalink / raw)
  To: Michael Kerrisk (man-pages), Jens Axboe; +Cc: linux-man

[-- Attachment #1: Type: text/plain, Size: 1676 bytes --]

On Fri, 2019-09-13 at 14:55 +0200, Michael Kerrisk (man-pages) wrote:
> Hello Jens,
> 
> Would you be willing to take a look at this man-pages bug report
> relating to vmsplice()?
> 
> Thanks,
> 
> Michael

Hello Michael, Jens,
Any update about this patch?

Kind Regards,

> 
> On 8/2/19 12:24 AM, Leonardo Bras wrote:
> > As explained in splice.2, SPLICE_F_MOVE became a no-op, and since
> > it
> > is needed to use page gifting, it made SPLICE_F_GIFT a no-op too.
> > 
> > I took a look in current code, and found no use of this flag:
> > When enabled, it sets PIPE_BUF_FLAG_GIFT,which is only checked in
> > user_page_pipe_buf_steal, which is only used on
> > user_page_pipe_buf_ops, as a .steal component.
> > 
> > But, in the whole kernel code, there is no calling of a steal()
> > function, making me believe this flag is not used anymore.
> > 
> > Signed-off-by: Leonardo Bras <leonardo@linux.ibm.com>
> > ---
> >  man2/vmsplice.2 | 5 +++++
> >  1 file changed, 5 insertions(+)
> > 
> > diff --git a/man2/vmsplice.2 b/man2/vmsplice.2
> > index 17834607b..94fb86142 100644
> > --- a/man2/vmsplice.2
> > +++ b/man2/vmsplice.2
> > @@ -123,6 +123,11 @@ if this flag is not specified, then a
> > subsequent
> >  .B SPLICE_F_MOVE
> >  must copy the pages.
> >  Data must also be properly page aligned, both in memory and
> > length.
> > +Starting in Linux 2.6.21, it is a no-op, because the
> > +.B SPLICE_F_MOVE
> > +also became a no-op on
> > +.BR splice (2)
> > +.
> >  .\" FIXME
> >  .\" It looks like the page-alignment requirement went away with
> >  .\" commit bd1a68b59c8e3bce45fb76632c64e1e063c3962d
> > 
> 
> 

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] vmsplice.2: SPLICE_F_GIFT became no-op
  2019-09-13 12:55 ` [PATCH] vmsplice.2: SPLICE_F_GIFT became no-op Michael Kerrisk (man-pages)
  2019-11-14 18:56   ` Leonardo Bras
@ 2019-12-17 21:12   ` Leonardo Bras
  2019-12-18  1:13     ` Jens Axboe
  1 sibling, 1 reply; 5+ messages in thread
From: Leonardo Bras @ 2019-12-17 21:12 UTC (permalink / raw)
  To: Michael Kerrisk (man-pages), Jens Axboe; +Cc: linux-man

[-- Attachment #1: Type: text/plain, Size: 1688 bytes --]

On Fri, 2019-09-13 at 14:55 +0200, Michael Kerrisk (man-pages) wrote:
> Hello Jens,
> 
> Would you be willing to take a look at this man-pages bug report
> relating to vmsplice()?

Hello Jens,

Could you please provide feedback on this patch?

Thank you,
Leonardo Bras


> 
> Thanks,
> 
> Michael
> 
> On 8/2/19 12:24 AM, Leonardo Bras wrote:
> > As explained in splice.2, SPLICE_F_MOVE became a no-op, and since it
> > is needed to use page gifting, it made SPLICE_F_GIFT a no-op too.
> > 
> > I took a look in current code, and found no use of this flag:
> > When enabled, it sets PIPE_BUF_FLAG_GIFT,which is only checked in
> > user_page_pipe_buf_steal, which is only used on
> > user_page_pipe_buf_ops, as a .steal component.
> > 
> > But, in the whole kernel code, there is no calling of a steal()
> > function, making me believe this flag is not used anymore.
> > 
> > Signed-off-by: Leonardo Bras <leonardo@linux.ibm.com>
> > ---
> >  man2/vmsplice.2 | 5 +++++
> >  1 file changed, 5 insertions(+)
> > 
> > diff --git a/man2/vmsplice.2 b/man2/vmsplice.2
> > index 17834607b..94fb86142 100644
> > --- a/man2/vmsplice.2
> > +++ b/man2/vmsplice.2
> > @@ -123,6 +123,11 @@ if this flag is not specified, then a subsequent
> >  .B SPLICE_F_MOVE
> >  must copy the pages.
> >  Data must also be properly page aligned, both in memory and length.
> > +Starting in Linux 2.6.21, it is a no-op, because the
> > +.B SPLICE_F_MOVE
> > +also became a no-op on
> > +.BR splice (2)
> > +.
> >  .\" FIXME
> >  .\" It looks like the page-alignment requirement went away with
> >  .\" commit bd1a68b59c8e3bce45fb76632c64e1e063c3962d
> > 
> 
> 

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] vmsplice.2: SPLICE_F_GIFT became no-op
  2019-12-17 21:12   ` Leonardo Bras
@ 2019-12-18  1:13     ` Jens Axboe
  2019-12-18 16:22       ` Leonardo Bras
  0 siblings, 1 reply; 5+ messages in thread
From: Jens Axboe @ 2019-12-18  1:13 UTC (permalink / raw)
  To: Leonardo Bras, Michael Kerrisk (man-pages); +Cc: linux-man

Sorry, better late than never?

He's right, Nick Piggin removed that flag (and promised to reinstate it,
but a decade later I'm not holding my breath).


On 12/17/19 2:12 PM, Leonardo Bras wrote:
> On Fri, 2019-09-13 at 14:55 +0200, Michael Kerrisk (man-pages) wrote:
>> Hello Jens,
>>
>> Would you be willing to take a look at this man-pages bug report
>> relating to vmsplice()?
> 
> Hello Jens,
> 
> Could you please provide feedback on this patch?
> 
> Thank you,
> Leonardo Bras
> 
> 
>>
>> Thanks,
>>
>> Michael
>>
>> On 8/2/19 12:24 AM, Leonardo Bras wrote:
>>> As explained in splice.2, SPLICE_F_MOVE became a no-op, and since it
>>> is needed to use page gifting, it made SPLICE_F_GIFT a no-op too.
>>>
>>> I took a look in current code, and found no use of this flag:
>>> When enabled, it sets PIPE_BUF_FLAG_GIFT,which is only checked in
>>> user_page_pipe_buf_steal, which is only used on
>>> user_page_pipe_buf_ops, as a .steal component.
>>>
>>> But, in the whole kernel code, there is no calling of a steal()
>>> function, making me believe this flag is not used anymore.
>>>
>>> Signed-off-by: Leonardo Bras <leonardo@linux.ibm.com>
>>> ---
>>>  man2/vmsplice.2 | 5 +++++
>>>  1 file changed, 5 insertions(+)
>>>
>>> diff --git a/man2/vmsplice.2 b/man2/vmsplice.2
>>> index 17834607b..94fb86142 100644
>>> --- a/man2/vmsplice.2
>>> +++ b/man2/vmsplice.2
>>> @@ -123,6 +123,11 @@ if this flag is not specified, then a subsequent
>>>  .B SPLICE_F_MOVE
>>>  must copy the pages.
>>>  Data must also be properly page aligned, both in memory and length.
>>> +Starting in Linux 2.6.21, it is a no-op, because the
>>> +.B SPLICE_F_MOVE
>>> +also became a no-op on
>>> +.BR splice (2)
>>> +.
>>>  .\" FIXME
>>>  .\" It looks like the page-alignment requirement went away with
>>>  .\" commit bd1a68b59c8e3bce45fb76632c64e1e063c3962d
>>>
>>
>>


-- 
Jens Axboe


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] vmsplice.2: SPLICE_F_GIFT became no-op
  2019-12-18  1:13     ` Jens Axboe
@ 2019-12-18 16:22       ` Leonardo Bras
  0 siblings, 0 replies; 5+ messages in thread
From: Leonardo Bras @ 2019-12-18 16:22 UTC (permalink / raw)
  To: Jens Axboe, Michael Kerrisk (man-pages); +Cc: linux-man

[-- Attachment #1: Type: text/plain, Size: 293 bytes --]

On Tue, 2019-12-17 at 18:13 -0700, Jens Axboe wrote:
> Sorry, better late than never?

No problem :)

> He's right, Nick Piggin removed that flag (and promised to reinstate it,
> but a decade later I'm not holding my breath).

Thanks for the feedback!

Best regards,
Leonardo Bras

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 833 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2019-12-18 16:22 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <20190801222417.14413-1-leonardo@linux.ibm.com>
2019-09-13 12:55 ` [PATCH] vmsplice.2: SPLICE_F_GIFT became no-op Michael Kerrisk (man-pages)
2019-11-14 18:56   ` Leonardo Bras
2019-12-17 21:12   ` Leonardo Bras
2019-12-18  1:13     ` Jens Axboe
2019-12-18 16:22       ` Leonardo Bras

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).