mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Jens Axboe <jaxboe@fusionio.com>
To: "mtk.manpages@gmail.com" <mtk.manpages@gmail.com>
Cc: Miklos Szeredi <miklos@szeredi.hu>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: Re: [patch] pipe: add support for shrinking and growing pipes
Date: Sat, 19 Jun 2010 20:13:08 +0200	[thread overview]
Message-ID: <4C1D08B4.50806@fusionio.com> (raw)
In-Reply-To: <AANLkTim3VzQVp3d6FIytYcf_H1Y8kjGELr9hehIeobAU@mail.gmail.com>

On 19/06/10 07.45, Michael Kerrisk wrote:
> Hello Jens,
> 
> I've tested this F_SETPIPE_SZ code as it appears in 2.6.35-rc3, and
> things seem to work as advertised, if the text below is the correct
> advertisement. Could you please review the following man-pages text,
> and let me know if it's okay.
> 
> fcntl.2:
>        F_SETPIPE_SZ (long; since Linux 2.6.35)
>               Change  the  capacity of the pipe referred to by
>               fd to be at least arg  bytes.   An  unprivileged
>               process  can  adjust  the  pipe  capacity to any
>               value between the system page size and the limit
>               defined   in   /proc/sys/fs/pipe-size-max   (see
>               proc(5)).  Attempts to  set  the  pipe  capacity
>               below  the  page size are silently rounded up to
>               the page size.  Attempts by an unprivileged pro-
>               cess to set the pipe capacity above the limit in
>               /proc/sys/fs/pipe-size-max   yield   the   error
>               EPERM;  a  privileged process (CAP_SYS_RESOURCE)
>               can override the  limit.   When  allocating  the
>               buffer for the pipe, the kernel may use a capac-
>               ity larger than arg, if that is  convenient  for
>               the  implementation.  The F_GETPIPE_SZ operation
>               returns the actual size used.  Attempting to set
>               the  pipe  capacity  smaller  than the amount of
>               buffer space currently used to store  data  pro-
>               duces the error EBUSY.
> 
>        F_GETPIPE_SZ (void; since Linux 2.6.35)
>               Return  (as the function result) the capacity of
>               the pipe referred to by fd.
> 
> And in proc.5:
>        /proc/sys/fs/pipe-max-size (since Linux 2.6.35)
>               The value in this file defines  an  upper  limit
>               for  raising  the  capacity  of a pipe using the
>               fcntl(2)  F_SETPIPE_SZ  operation.   This  limit
>               applies  only  to  unprivileged  processes.  The
>               default value for this file is  1,048,576.   The
>               value  assigned  to  this  file  may  be rounded
>               upward, to reflect the value  actually  employed
>               for  a  convenient implementation.  To determine
>               the rounded-up value, display  the  contents  of
>               this  file  after  assigning a value to it.  The
>               minimum value that can be assigned to this  file
>               is the system page size.

Looks good to me.

-- 
Jens Axboe


  reply	other threads:[~2010-06-19 18:13 UTC|newest]

Thread overview: 57+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-05-19 16:45 Miklos Szeredi
2010-05-19 16:49 ` Linus Torvalds
2010-05-19 18:05   ` Jens Axboe
2010-05-19 19:05     ` Jens Axboe
2010-05-20  8:33       ` Miklos Szeredi
2010-05-20  8:37         ` Jens Axboe
2010-05-20 17:42           ` Linus Torvalds
2010-05-20 17:48             ` Jens Axboe
2010-05-21 17:13               ` Rick Sherm
2010-05-23  5:30   ` Michael Kerrisk
2010-05-23  2:38     ` Andrew Morton
2010-05-23  5:52       ` Michael Kerrisk
2010-05-23  7:09         ` Jens Axboe
2010-05-23  9:24           ` Michael Kerrisk
2010-05-23 17:47             ` Jens Axboe
2010-05-24  1:43               ` OGAWA Hirofumi
2010-05-24  4:43                 ` Michael Kerrisk
2010-05-24  7:05                   ` Jens Axboe
2010-05-24  7:27                     ` Michael Kerrisk
2010-05-24 17:35                       ` Jens Axboe
2010-05-24 17:52                         ` Michael Kerrisk
2010-05-24 17:56                           ` Jens Axboe
2010-05-25  4:01                             ` Michael Kerrisk
2010-06-01  7:48                               ` Jens Axboe
2010-06-01 15:22                                 ` Linus Torvalds
2010-06-01 16:36                                   ` Loke, Chetan
2010-05-27  6:49                             ` Michael Kerrisk
2010-06-01  7:45                               ` Jens Axboe
2010-06-02 19:25                                 ` Michael Kerrisk
2010-06-03  6:10                                   ` Jens Axboe
2010-06-03  6:46                                     ` Michael Kerrisk
2010-06-03  7:01                                       ` Jens Axboe
2010-06-03  7:05                                         ` Michael Kerrisk
2010-06-03  7:48                                           ` Michael Kerrisk
2010-06-03  7:58                                             ` Michael Kerrisk
2010-06-03  8:29                                               ` Michael Kerrisk
2010-06-03  8:53                                                 ` Michael Kerrisk
     [not found]                                               ` <4C07862D.4090709@fusionio.com>
     [not found]                                                 ` <AANLkTincO5thcP-yASUtIV41TtY3ZmG9YSU-J5nT2sFg@mail.gmail.com>
2010-06-03 11:11                                                   ` Jens Axboe
     [not found]                                             ` <4C078610.6020901@fusionio.com>
     [not found]                                               ` <AANLkTinhO5oRDPXyXaeAOZU3i55eBKsx4iFMOzwm98na@mail.gmail.com>
     [not found]                                                 ` <AANLkTin_8MU3AbJ_KeXr2uTxtRFJ5ABmBAyigU6m-C6u@mail.gmail.com>
2010-06-03 11:12                                                   ` Jens Axboe
2010-06-03 11:32                                                     ` Miklos Szeredi
2010-06-03 11:37                                                       ` Jens Axboe
2010-06-03 12:45                                                         ` Miklos Szeredi
2010-06-03 12:50                                                           ` Jens Axboe
2010-06-19  5:45                                                             ` Michael Kerrisk
2010-06-19 18:13                                                               ` Jens Axboe [this message]
2010-06-20  5:37                                                                 ` Michael Kerrisk
2010-06-03 16:06                                                         ` Miklos Szeredi
2010-05-24  7:04                 ` Jens Axboe
2010-05-24  7:28                   ` Michael Kerrisk
2010-05-24  7:49                     ` OGAWA Hirofumi
2010-05-24 14:51                     ` Brian Bloniarz
2010-05-24 15:43                       ` Michael Kerrisk
2010-05-24  7:46                   ` OGAWA Hirofumi
2010-05-24 17:15                     ` Jens Axboe
2010-05-24 18:12                       ` OGAWA Hirofumi
2010-05-24 18:16                         ` Michael Kerrisk
2010-05-20 12:52 ` Andi Kleen

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4C1D08B4.50806@fusionio.com \
    --to=jaxboe@fusionio.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=miklos@szeredi.hu \
    --cc=mtk.manpages@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

Powered by JetHome