linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Re: [PATCH] open: Document O_TMPFILE
       [not found] <3bec865ec3205e23c997ddc2c9bbacf0e53b0d18.1375896634.git.luto@amacapital.net>
@ 2013-08-08 12:00 ` Michael Kerrisk (man-pages)
       [not found]   ` <CAKgNAkjE5tmeRJMMXpEc1mGz0pyPrt5PL5pkUjViunhtcC2W3A-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
  0 siblings, 1 reply; 2+ messages in thread
From: Michael Kerrisk (man-pages) @ 2013-08-08 12:00 UTC (permalink / raw)
  To: Andy Lutomirski
  Cc: linux-man, Christoph Hellwig, Al Viro, Jeff Layton,
	linux-fsdevel@vger.kernel.org

[CC list expanded a littlle]

Andy (et al.)

See comments below.

On Wed, Aug 7, 2013 at 7:31 PM, Andy Lutomirski <luto@amacapital.net> wrote:
> O_TMPFILE is new in Linux 3.11
>
> Signed-off-by: Andy Lutomirski <luto@amacapital.net>
> ---
>
> This may have formatting issues -- I'm terrible at groff.
>
> If the corresponding linkat patch makes it in, it would probably be
> worth documenting as well:
>
> https://git.kernel.org/cgit/linux/kernel/git/viro/vfs.git/commit/?h=for-linus&id=bb2314b47996491bbc5add73633905c3120b6268
>
>  man2/open.2 | 32 ++++++++++++++++++++++++++++++--
>  1 file changed, 30 insertions(+), 2 deletions(-)
>
> diff --git a/man2/open.2 b/man2/open.2
> index ef0f664..8bf56a0 100644
> --- a/man2/open.2
> +++ b/man2/open.2
> @@ -126,6 +126,7 @@ are
>  .BR O_EXCL ,
>  .BR O_NOCTTY ,
>  .BR O_NOFOLLOW ,
> +.BR O_TMPFILE ,
>  .BR O_TRUNC ,
>  and
>  .BR O_TTY_INIT .
> @@ -226,11 +227,15 @@ described in
>  specifies the permissions to use in case a new file is created.
>  This argument must be supplied when
>  .B O_CREAT
> +or
> +.B O_TMPFILE
>  is specified in
>  .IR flags ;
> -if
> +if neither
>  .B O_CREAT
> -is not specified, then
> +nor
> +.B O_TMPFILE
> +is specified, then
>  .I mode
>  is ignored.
>  The effective permissions are modified by
> @@ -284,6 +289,29 @@ The following symbolic constants are provided for
>  00001 others have execute permission
>  .RE
>  .TP
> +.BR O_TMPFILE " (Since Linux 3.11)"
> +Create an unnamed temporary file.  The pathname parameter specifies a
> +directory; an unnamed inode will be created in that directory's
> +filesystem.  Anything written to the resulting file will be lost when
> +the last fd is closed, unless the file is given a name.
> +.RS
> +.PP
> +.B O_TMPFILE
> +must be specified with one of
> +.B O_RDWR
> +or
> +.B O_WRONLY
> +and, optionally,
> +.B O_EXCL.
> +If O_EXCL is not specified, then
> +.BR linkat (2)
> +can be used to link the temporary file into the filesystem, making it
> +permanent.
> +.PP
> +The mode parameter determines the inode's mode, as with
> +.B O_CREAT.
> +.RE
> +.TP
>  .BR O_DIRECT " (Since Linux 2.4.10)"
>  Try to minimize cache effects of the I/O to and from this file.
>  In general this will degrade performance, but it is useful in

See my reply to the thread started by Christoph Hellwig
(https://lwn.net/Articles/562297/). I've taken your man-pages patch,
and applied it in a branch. I tweaked the language and formatting a
bit, and also added documentation of the EINVAL and EISDIR (ick!)
error cases.

As noted in the other thread, the API is questionable in the opinion
of a few people. Maybe it will change, and this man-pages patch will
need some further tweaking. If that doesn't happen, I'll merge it as
is, at the time of the 3.11 stable release.

Cheers,

Michael

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

* Re: [PATCH] open: Document O_TMPFILE
       [not found]   ` <CAKgNAkjE5tmeRJMMXpEc1mGz0pyPrt5PL5pkUjViunhtcC2W3A-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
@ 2013-12-26  9:40     ` Christoph Hellwig
  0 siblings, 0 replies; 2+ messages in thread
From: Christoph Hellwig @ 2013-12-26  9:40 UTC (permalink / raw)
  To: Michael Kerrisk (man-pages)
  Cc: Andy Lutomirski, linux-man, Christoph Hellwig, Al Viro,
	Jeff Layton,
	linux-fsdevel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org

On Thu, Aug 08, 2013 at 02:00:18PM +0200, Michael Kerrisk (man-pages) wrote:
> See my reply to the thread started by Christoph Hellwig
> (https://lwn.net/Articles/562297/). I've taken your man-pages patch,
> and applied it in a branch. I tweaked the language and formatting a
> bit, and also added documentation of the EINVAL and EISDIR (ick!)
> error cases.
> 
> As noted in the other thread, the API is questionable in the opinion
> of a few people. Maybe it will change, and this man-pages patch will
> need some further tweaking. If that doesn't happen, I'll merge it as
> is, at the time of the 3.11 stable release.

Looks like my API comments were simplify ignored, so maybe it's time to
document things properly and pull the O_TMPFILE bits in?  

> 
> Cheers,
> 
> Michael
> --
> To unsubscribe from this list: send the line "unsubscribe linux-man" in
> the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
---end quoted text---
--
To unsubscribe from this list: send the line "unsubscribe linux-man" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

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

end of thread, other threads:[~2013-12-26  9:40 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <3bec865ec3205e23c997ddc2c9bbacf0e53b0d18.1375896634.git.luto@amacapital.net>
2013-08-08 12:00 ` [PATCH] open: Document O_TMPFILE Michael Kerrisk (man-pages)
     [not found]   ` <CAKgNAkjE5tmeRJMMXpEc1mGz0pyPrt5PL5pkUjViunhtcC2W3A-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-12-26  9:40     ` Christoph Hellwig

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).