1. 30 9月, 2006 1 次提交
  2. 26 9月, 2006 1 次提交
  3. 01 7月, 2006 1 次提交
  4. 27 6月, 2006 1 次提交
  5. 23 6月, 2006 1 次提交
    • D
      [PATCH] VFS: Permit filesystem to override root dentry on mount · 454e2398
      David Howells 提交于
      Extend the get_sb() filesystem operation to take an extra argument that
      permits the VFS to pass in the target vfsmount that defines the mountpoint.
      
      The filesystem is then required to manually set the superblock and root dentry
      pointers.  For most filesystems, this should be done with simple_set_mnt()
      which will set the superblock pointer and then set the root dentry to the
      superblock's s_root (as per the old default behaviour).
      
      The get_sb() op now returns an integer as there's now no need to return the
      superblock pointer.
      
      This patch permits a superblock to be implicitly shared amongst several mount
      points, such as can be done with NFS to avoid potential inode aliasing.  In
      such a case, simple_set_mnt() would not be called, and instead the mnt_root
      and mnt_sb would be set directly.
      
      The patch also makes the following changes:
      
       (*) the get_sb_*() convenience functions in the core kernel now take a vfsmount
           pointer argument and return an integer, so most filesystems have to change
           very little.
      
       (*) If one of the convenience function is not used, then get_sb() should
           normally call simple_set_mnt() to instantiate the vfsmount. This will
           always return 0, and so can be tail-called from get_sb().
      
       (*) generic_shutdown_super() now calls shrink_dcache_sb() to clean up the
           dcache upon superblock destruction rather than shrink_dcache_anon().
      
           This is required because the superblock may now have multiple trees that
           aren't actually bound to s_root, but that still need to be cleaned up. The
           currently called functions assume that the whole tree is rooted at s_root,
           and that anonymous dentries are not the roots of trees which results in
           dentries being left unculled.
      
           However, with the way NFS superblock sharing are currently set to be
           implemented, these assumptions are violated: the root of the filesystem is
           simply a dummy dentry and inode (the real inode for '/' may well be
           inaccessible), and all the vfsmounts are rooted on anonymous[*] dentries
           with child trees.
      
           [*] Anonymous until discovered from another tree.
      
       (*) The documentation has been adjusted, including the additional bit of
           changing ext2_* into foo_* in the documentation.
      
      [akpm@osdl.org: convert ipath_fs, do other stuff]
      Signed-off-by: NDavid Howells <dhowells@redhat.com>
      Acked-by: NAl Viro <viro@zeniv.linux.org.uk>
      Cc: Nathan Scott <nathans@sgi.com>
      Cc: Roland Dreier <rolandd@cisco.com>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      454e2398
  6. 09 6月, 2006 2 次提交
  7. 16 5月, 2006 1 次提交
    • A
      [PATCH] revert "vfs: propagate mnt_flags into do_loopback/vfsmount" · eee391a6
      Andrew Morton 提交于
      Revert commit f6422f17, due to
      
      Valdis.Kletnieks@vt.edu wrote:
      >
      > There seems to have been a bug introduced in this changeset:
      >
      > Am running 2.6.17-rc3-mm1.  When this changeset is applied, 'mount --bind'
      > misbehaves:
      >
      > > # mkdir /foo
      > > # mount -t tmpfs -o rw,nosuid,nodev,noexec,noatime,nodiratime none /foo
      > > # mkdir /foo/bar
      > > # mount --bind /foo/bar /foo
      > > # tail -2 /proc/mounts
      > > none /foo tmpfs rw,nosuid,nodev,noexec,noatime,nodiratime 0 0
      > > none /foo tmpfs rw 0 0
      >
      > Reverting this changeset causes both mounts to have the same options.
      >
      > (Thanks to Stephen Smalley for tracking down the changeset...)
      >
      
      Cc: Herbert Poetzl <herbert@13thfloor.at>
      Cc: Christoph Hellwig <hch@infradead.org>
      Cc: <Valdis.Kletnieks@vt.edu>
      Cc: Stephen Smalley <sds@tycho.nsa.gov>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      eee391a6
  8. 11 4月, 2006 1 次提交
  9. 28 3月, 2006 1 次提交
  10. 27 3月, 2006 1 次提交
  11. 21 3月, 2006 1 次提交
    • C
      VFS: New /proc file /proc/self/mountstats · b4629fe2
      Chuck Lever 提交于
      Create a new file under /proc/self, called mountstats, where mounted file
      systems can export information (configuration options, performance counters,
      and so on).  Use a mechanism similar to /proc/mounts and s_ops->show_options.
      
      This mechanism does not violate namespace security, and is safe to use while
      other processes are unmounting file systems.
      
      Thanks to Mike Waychison for his review and comments.
      
      Test-plan:
      Test concurrent mount/unmount operations while cat'ing /proc/self/mountstats.
      Signed-off-by: NChuck Lever <cel@netapp.com>
      Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
      b4629fe2
  12. 16 3月, 2006 1 次提交
  13. 08 2月, 2006 2 次提交
  14. 17 1月, 2006 1 次提交
  15. 12 1月, 2006 1 次提交
  16. 11 1月, 2006 1 次提交
    • C
      [PATCH] per-mountpoint noatime/nodiratime · fc33a7bb
      Christoph Hellwig 提交于
      Turn noatime and nodiratime into per-mount instead of per-sb flags.
      
      After all the preparations this is a rather trivial patch.  The mount code
      needs to treat the two options as per-mount instead of per-superblock, and
      touch_atime needs to be changed to check the new MNT_ flags in addition to
      the MS_ flags that are kept for filesystems that are always
      noatime/nodiratime but not user settable anymore.  Besides that core code
      only nfs needed an update because it's leaving atime updates to the server
      and thus sets the S_NOATIME flag on every inode, but needs to know whether
      it's a real noatime mount for an getattr optimization.
      
      While we're at it I've killed the IS_NOATIME/IS_NODIRATIME macros that were
      only used by touch_atime.
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      fc33a7bb
  17. 10 1月, 2006 1 次提交
  18. 09 1月, 2006 2 次提交
  19. 09 11月, 2005 1 次提交
  20. 08 11月, 2005 16 次提交
  21. 11 9月, 2005 1 次提交
  22. 08 9月, 2005 1 次提交