All of lore.kernel.org
 help / color / mirror / Atom feed
From: Christoph Hellwig <hch@lst.de>
To: Nick Piggin <npiggin@suse.de>
Cc: Christoph Hellwig <hch@lst.de>, Al Viro <viro@ZenIV.linux.org.uk>,
	linux-fsdevel@vger.kernel.org, Miklos Szeredi <miklos@szeredi.hu>
Subject: Re: Filesystem setattr/truncate notes and problems
Date: Thu, 3 Jun 2010 09:28:12 +0200	[thread overview]
Message-ID: <20100603072812.GA3346@lst.de> (raw)
In-Reply-To: <20100602200855.GH6152@laptop>

On Thu, Jun 03, 2010 at 06:08:55AM +1000, Nick Piggin wrote:
> xfs in the 0 length file shortcut, isn't this missing suid kill case?
> (ftruncate mandatory mtime update seems like it wasn't working right
> there either before this patch).

The wording from Posix for truncate is:

"Upon successful completion, if the file size is changed, this function
 shall mark for update the st_ctime and st_mtime fields of the file, and
 the S_ISUID and S_ISGID bits of the file mode may be cleared."

and for truncate:

"Upon successful completion, if fildes refers to a regular file, the
 ftruncate() function shall mark for update the st_ctime and st_mtime
 fields of the file and the S_ISUID and S_ISGID bits of the file mode
 may be cleared."

Which translates to me that the suid/sgid clearing behaviour is
exactly the same as the c/mtime update and it can be skipped for
truncate only if there is no size change.  Except that the wording
is rather nasty as the suid/sgid bits are only accepted into Posix
as an ugly headed stepchild and may not actually be present on
some systems.

Which means XFS behaviour for truncate while not strictly against
Posix is at least unexpected.  I'll fix it up.

  reply	other threads:[~2010-06-03  7:28 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-06-01 13:39 [patch] fix truncate inode time modification breakage Nick Piggin
2010-06-01 13:48 ` Christoph Hellwig
2010-06-01 13:56   ` Nick Piggin
2010-06-02 19:55     ` [patch v2] " Nick Piggin
2010-06-02 20:08       ` Filesystem setattr/truncate notes and problems Nick Piggin
2010-06-03  7:28         ` Christoph Hellwig [this message]
2010-06-03  7:32           ` Christoph Hellwig
2010-06-03  9:50             ` Nick Piggin
2010-06-03  9:18           ` Nick Piggin
2010-06-03  9:26         ` Nick Piggin
2010-06-03  8:18       ` [patch v2] fix truncate inode time modification breakage Miklos Szeredi
2010-06-03  8:40         ` Boaz Harrosh
2010-06-03  9:05           ` Miklos Szeredi
2010-06-03 12:13             ` Boaz Harrosh
2010-06-03  9:14         ` Nick Piggin
2010-06-03  9:28           ` Miklos Szeredi
2010-06-03 10:07             ` Nick Piggin
2010-06-03 10:58               ` Miklos Szeredi
2010-06-03 11:09                 ` Christoph Hellwig
2010-06-03 12:01                   ` [patch v3] " Nick Piggin
2010-06-03 11:49                 ` [patch v2] " Nick Piggin
2010-06-03 12:03                   ` Miklos Szeredi
2010-06-01 14:10 ` [patch] " Boaz Harrosh
2010-06-01 14:32   ` Nick Piggin

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=20100603072812.GA3346@lst.de \
    --to=hch@lst.de \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=miklos@szeredi.hu \
    --cc=npiggin@suse.de \
    --cc=viro@ZenIV.linux.org.uk \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.