1. 23 Apr, 2009 1 commit
  2. 23 Oct, 2008 2 commits
  3. 22 Oct, 2008 2 commits
  4. 30 Jul, 2008 1 commit
    • Julia Lawall's avatar
      fs/nfsd/export.c: Adjust error handling code involving auth_domain_put · 53e6d8d1
      Julia Lawall authored
      Once clp is assigned, it never becomes NULL, so we can make a label for it
      in the error handling code.  Because the call to path_lookup follows the
      call to auth_domain_find, its error handling code should jump to this new
      label.
      
      The semantic match that finds this problem is as follows:
      (http://www.emn.fr/x-info/coccinelle/
      
      )
      
      // <smpl>
      @r@
      expression x,E;
      statement S;
      position p1,p2,p3;
      @@
      
      (
      if ((x = auth_domain_find@p1(...)) == NULL || ...) S
      |
      x = auth_domain_find@p1(...)
      ... when != x
      if (x == NULL || ...) S
      )
      <...
      if@p3 (...) { ... when != auth_domain_put(x)
                        when != if (x) { ... auth_domain_put(x); ...}
          return@p2 ...;
      }
      ...>
      (
      return x;
      |
      return 0;
      |
      x = E
      |
      E = x
      |
      auth_domain_put(x)
      )
      
      @exists@
      position r.p1,r.p2,r.p3;
      expression x;
      int ret != 0;
      statement S;
      @@
      
      * x = auth_domain_find@p1(...)
        <...
      * if@p3 (...)
        S
        ...>
      * return@p2 \(NULL\|ret\);
      // </smpl>
      Signed-off-by: default avatarJulia Lawall <julia@diku.dk>
      Signed-off-by: default avatarJ. Bruce Fields <bfields@citi.umich.edu>
      53e6d8d1
  5. 23 Apr, 2008 1 commit
  6. 15 Feb, 2008 6 commits
  7. 07 Feb, 2008 1 commit
  8. 01 Feb, 2008 3 commits
    • J. Bruce Fields's avatar
      knfsd: don't bother mapping putrootfh enoent to eperm · f7b8066f
      J. Bruce Fields authored
      
      Neither EPERM and ENOENT map to valid errors for PUTROOTFH according to
      rfc 3530, and, if anything, ENOENT is likely to be slightly more
      informative; so don't bother mapping ENOENT to EPERM.  (Probably this
      was originally done because one likely cause was that there is an fsid=0
      export but that it isn't permitted to this particular client.  Now that
      we allow WRONGSEC returns, this is somewhat less likely.)
      
      In the long term we should work to make this situation less likely,
      perhaps by turning off nfsv4 service entirely in the absence of the
      pseudofs root, or constructing a pseudofilesystem root ourselves in the
      kernel as necessary.
      
      Thanks to Benny Halevy <bhalevy@panasas.com> for pointing out this
      problem.
      Signed-off-by: default avatarJ. Bruce Fields <bfields@citi.umich.edu>
      Cc: Benny Halevy <bhalevy@panasas.com>
      f7b8066f
    • J. Bruce Fields's avatar
      knfsd: allow cache_register to return error on failure · dbf847ec
      J. Bruce Fields authored
      
      Newer server features such as nfsv4 and gss depend on proc to work, so a
      failure to initialize the proc files they need should be treated as
      fatal.
      
      Thanks to Andrew Morton for style fix and compile fix in case where
      CONFIG_NFSD_V4 is undefined.
      
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Acked-by: default avatarNeilBrown <neilb@suse.de>
      Signed-off-by: default avatarJ. Bruce Fields <bfields@citi.umich.edu>
      dbf847ec
    • J. Bruce Fields's avatar
      knfsd: cache unregistration needn't return error · df95a9d4
      J. Bruce Fields authored
      
      There's really nothing much the caller can do if cache unregistration
      fails.  And indeed, all any caller does in this case is print an error
      and continue.  So just return void and move the printk's inside
      cache_unregister.
      Acked-by: default avatarNeilBrown <neilb@suse.de>
      Signed-off-by: default avatarJ. Bruce Fields <bfields@citi.umich.edu>
      df95a9d4
  9. 22 Oct, 2007 1 commit
    • Christoph Hellwig's avatar
      exportfs: remove old methods · cfaea787
      Christoph Hellwig authored
      
      Now that all filesystems are converted remove support for the old methods.
      Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
      Cc: Neil Brown <neilb@suse.de>
      Cc: "J. Bruce Fields" <bfields@fieldses.org>
      Cc: <linux-ext4@vger.kernel.org>
      Cc: Dave Kleikamp <shaggy@austin.ibm.com>
      Cc: Anton Altaparmakov <aia21@cantab.net>
      Cc: David Chinner <dgc@sgi.com>
      Cc: Timothy Shimmin <tes@sgi.com>
      Cc: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
      Cc: Hugh Dickins <hugh@veritas.com>
      Cc: Chris Mason <mason@suse.com>
      Cc: Jeff Mahoney <jeffm@suse.com>
      Cc: "Vladimir V. Saveliev" <vs@namesys.com>
      Cc: Steven Whitehouse <swhiteho@redhat.com>
      Cc: Mark Fasheh <mark.fasheh@oracle.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      cfaea787
  10. 16 Oct, 2007 1 commit
  11. 31 Jul, 2007 1 commit
  12. 22 Jul, 2007 1 commit
  13. 19 Jul, 2007 1 commit
  14. 17 Jul, 2007 10 commits
  15. 09 May, 2007 1 commit
  16. 14 Feb, 2007 2 commits
    • Tim Schmielau's avatar
      [PATCH] remove many unneeded #includes of sched.h · cd354f1a
      Tim Schmielau authored
      After Al Viro (finally) succeeded in removing the sched.h #include in module.h
      recently, it makes sense again to remove other superfluous sched.h includes.
      There are quite a lot of files which include it but don't actually need
      anything defined in there.  Presumably these includes were once needed for
      macros that used to live in sched.h, but moved to other header files in the
      course of cleaning it up.
      
      To ease the pain, this time I did not fiddle with any header files and only
      removed #includes from .c-files, which tend to cause less trouble.
      
      Compile tested against 2.6.20-rc2 and 2.6.20-rc2-mm2 (with offsets) on alpha,
      arm, i386, ia64, mips, powerpc, and x86_64 with allnoconfig, defconfig,
      allmodconfig, and allyesconfig as well as a few randconfigs on x86_64 and all
      configs in arch/arm/configs on arm.  I also checked that no new warnings were
      introduced by the patch (actually, some warnings are removed that were emitted
      by unnecessarily included header fi...
      cd354f1a
    • NeilBrown's avatar
      [PATCH] knfsd: add some new fsid types · af6a4e28
      NeilBrown authored
      
      Add support for using a filesystem UUID to identify and export point in the
      filehandle.
      
      For NFSv2, this UUID is xor-ed down to 4 or 8 bytes so that it doesn't take up
      too much room.  For NFSv3+, we use the full 16 bytes, and possibly also a
      64bit inode number for exports beneath the root of a filesystem.
      
      When generating an fsid to return in 'stat' information, use the UUID (hashed
      down to size) if it is available and a small 'fsid' was not specifically
      provided.
      Signed-off-by: default avatarNeil Brown <neilb@suse.de>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      af6a4e28
  17. 30 Jan, 2007 1 commit
  18. 13 Dec, 2006 4 commits