All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v4 0/9] Overlayfs create object related fixes
@ 2018-05-18  8:29 Amir Goldstein
  2018-05-18  8:29 ` [PATCH v4 1/9] ovl: remove WARN_ON() real inode attributes mismatch Amir Goldstein
                   ` (8 more replies)
  0 siblings, 9 replies; 24+ messages in thread
From: Amir Goldstein @ 2018-05-18  8:29 UTC (permalink / raw)
  To: Miklos Szeredi; +Cc: Al Viro, Vivek Goyal, linux-unionfs

Miklos,

This is v4 of create object fixes, which addresses your comments on v3
and implement Vivek's suggestion to use ovl_get_inode() from create code.
Please note the change of semantics in ovl_instantiate() w.r.t the
reference on @inode argument - it now takes its own reference only if it
uses @inode to instantiate newdentry.

The series is based and tested on top of a merge of overlayfs-rorw
and Al's fixes branch.  It passed xfstests generic/quick and overlay/auto
including overlay/stress and all unionmount configurations.

Thanks,
Amir.

Changes since v3:
- Back to Al's version of ovl_create_real()
- Remvoe helper ovl_create_real_dir()
- Add Vivek's ovl_get_inode() cleanup patch
- Use new iget5_prealloc()
- Remove cc: stable because this is not a critical fix

Changes since v2:
- Don't use d_instantiate_new() helper
- Explain inode hash race (Vivek)
- Relax WARN_ON() to pass overlay/019 test
- Create hepler ovl_create_real_dir()
- pr_warn() when real mkdir succeeds and lookup fails

Changes since v1:
- Rebase on top of Al's fixes branch
- Use d_instantiate_new() helper
- Add re-factoring + Al's vfs_mkdir() safely patch

Amir Goldstein (7):
  ovl: remove WARN_ON() real inode attributes mismatch
  ovl: strip debug argument from ovl_do_ helpers
  ovl: struct cattr cleanups
  ovl: create helper ovl_create_temp()
  ovl: make ovl_create_real() cope with vfs_mkdir() safely
  vfs: export alloc_inode() and destroy_inode()
  ovl: use iget5_prealloc() to hash a newly created inode

Miklos Szeredi (1):
  vfs: factor out iget5_prealloc()

Vivek Goyal (1):
  ovl: Pass argument to ovl_get_inode() in a structure

 fs/inode.c               | 133 +++++++++++++++++-------------
 fs/overlayfs/copy_up.c   |  34 +++-----
 fs/overlayfs/dir.c       | 209 +++++++++++++++++++++++++++++------------------
 fs/overlayfs/export.c    |   8 +-
 fs/overlayfs/inode.c     |  28 +++++--
 fs/overlayfs/namei.c     |  10 ++-
 fs/overlayfs/overlayfs.h |  64 ++++++++-------
 fs/overlayfs/super.c     |   9 +-
 include/linux/fs.h       |  14 +++-
 9 files changed, 299 insertions(+), 210 deletions(-)

-- 
2.7.4

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

end of thread, other threads:[~2018-05-23  8:11 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-05-18  8:29 [PATCH v4 0/9] Overlayfs create object related fixes Amir Goldstein
2018-05-18  8:29 ` [PATCH v4 1/9] ovl: remove WARN_ON() real inode attributes mismatch Amir Goldstein
2018-05-18  8:29 ` [PATCH v4 2/9] ovl: strip debug argument from ovl_do_ helpers Amir Goldstein
2018-05-18  8:29 ` [PATCH v4 3/9] ovl: struct cattr cleanups Amir Goldstein
2018-05-18  8:29 ` [PATCH v4 4/9] ovl: create helper ovl_create_temp() Amir Goldstein
2018-05-18  8:29 ` [PATCH v4 5/9] ovl: make ovl_create_real() cope with vfs_mkdir() safely Amir Goldstein
2018-05-18  8:29 ` [PATCH v4 6/9] vfs: factor out iget5_prealloc() Amir Goldstein
2018-05-18  8:29 ` [PATCH v4 7/9] vfs: export alloc_inode() and destroy_inode() Amir Goldstein
2018-05-18 15:02   ` Al Viro
2018-05-18  8:29 ` [PATCH v4 8/9] ovl: Pass argument to ovl_get_inode() in a structure Amir Goldstein
2018-05-18  8:29 ` [PATCH v4 9/9] ovl: use iget5_prealloc() to hash a newly created inode Amir Goldstein
2018-05-18 10:14   ` Miklos Szeredi
2018-05-18 14:08     ` Amir Goldstein
2018-05-18 14:24       ` Miklos Szeredi
2018-05-18 15:03   ` Al Viro
2018-05-18 15:11     ` Miklos Szeredi
2018-05-18 15:14       ` Miklos Szeredi
2018-05-18 15:36       ` Amir Goldstein
2018-05-18 15:57         ` Miklos Szeredi
2018-05-18 16:53           ` Amir Goldstein
2018-05-18 15:40       ` Al Viro
2018-05-18 16:01         ` Miklos Szeredi
2018-05-22 15:21           ` Miklos Szeredi
2018-05-23  8:11             ` Amir Goldstein

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.