All of lore.kernel.org
 help / color / mirror / Atom feed
* setattr ATTR_SIZE vs the rest
@ 2017-01-22 16:54 Christoph Hellwig
  2017-01-22 16:54 ` [PATCH] nfsd: special case truncates some more Christoph Hellwig
  2017-01-23 16:58 ` setattr ATTR_SIZE vs the rest J. Bruce Fields
  0 siblings, 2 replies; 25+ messages in thread
From: Christoph Hellwig @ 2017-01-22 16:54 UTC (permalink / raw)
  To: bfields; +Cc: linux-nfs, linux-fsdevel

Hi Bruce,

I've got a report that there NFS clients that send SETATTR requests that
mix size changes with uid/gid changes (see the recent pynfs patch for an
artifical reproducer).  At least XFS and GFS2 are very unhappy with this,
and other file systems also don't seem to handle the case correctly.

This patch splits the truncate processing in NFS out into a separate
->setattr call and uses the vfs_truncate helper for it, which also happens
to shrink the NFSD code size by reusing more VFS boiler plate code.

I suspect in the mid-term we really should add a ->truncate method (different
from the previous callback of the same name) to separate the two concepts
clearly at the VFS level.


^ permalink raw reply	[flat|nested] 25+ messages in thread
* split setattr operations take 2
@ 2017-02-20  6:21 Christoph Hellwig
  2017-02-20  6:21 ` [PATCH] nfsd: special case truncates some more Christoph Hellwig
  0 siblings, 1 reply; 25+ messages in thread
From: Christoph Hellwig @ 2017-02-20  6:21 UTC (permalink / raw)
  To: bfields, jlayton; +Cc: linux-nfs

This just splits the setattr operations and doesn't try to use more
of the VFS infrastructure.


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

end of thread, other threads:[~2017-02-21 15:14 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-01-22 16:54 setattr ATTR_SIZE vs the rest Christoph Hellwig
2017-01-22 16:54 ` [PATCH] nfsd: special case truncates some more Christoph Hellwig
2017-01-23 12:21   ` Jeff Layton
2017-01-23 12:33     ` Christoph Hellwig
2017-01-23 15:36       ` Christoph Hellwig
2017-01-23 15:36         ` Christoph Hellwig
2017-01-23 15:52         ` Jeff Layton
2017-01-23 16:05           ` Christoph Hellwig
2017-01-23 16:14             ` Jeff Layton
2017-01-23 16:20             ` Trond Myklebust
2017-01-23 16:20               ` Trond Myklebust
2017-01-23 16:26               ` hch
2017-01-23 17:25                 ` Trond Myklebust
2017-01-23 17:25                   ` Trond Myklebust
2017-01-23 17:38                   ` hch
2017-01-23 17:42                     ` Trond Myklebust
2017-01-23 17:42                       ` Trond Myklebust
2017-01-24 16:25                 ` J. Bruce Fields
2017-01-24 22:02           ` J. Bruce Fields
2017-01-23 16:58 ` setattr ATTR_SIZE vs the rest J. Bruce Fields
2017-01-24  7:52   ` Christoph Hellwig
2017-02-20  6:21 split setattr operations take 2 Christoph Hellwig
2017-02-20  6:21 ` [PATCH] nfsd: special case truncates some more Christoph Hellwig
2017-02-20 22:23   ` J. Bruce Fields
2017-02-21 15:07   ` Chuck Lever
2017-02-21 15:14     ` J. Bruce Fields

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.