1. 01 12月, 2010 5 次提交
    • E
      SELinux: do not set automatic i_ino in selinuxfs · c9e86a9b
      Eric Paris 提交于
      selinuxfs carefully uses i_ino to figure out what the inode refers to.  The
      VFS used to generically set this value and we would reset it to something
      useable.  After 85fe4025 each filesystem sets this value to a default
      if needed.  Since selinuxfs doesn't use the default value and it can only
      lead to problems (I'd rather have 2 inodes with i_ino == 0 than one
      pointing to the wrong data) lets just stop setting a default.
      Signed-off-by: NEric Paris <eparis@redhat.com>
      Acked-by: NJames Morris <jmorris@namei.org>
      c9e86a9b
    • E
      selinux: rework security_netlbl_secattr_to_sid · 7ae9f23c
      Eric Paris 提交于
      security_netlbl_secattr_to_sid is difficult to follow, especially the
      return codes.  Try to make the function obvious.
      Signed-off-by: NEric Paris <eparis@redhat.com>
      7ae9f23c
    • E
      SELinux: standardize return code handling in selinuxfs.c · 4b02b524
      Eric Paris 提交于
      selinuxfs.c has lots of different standards on how to handle return paths on
      error.  For the most part transition to
      
      	rc=errno
      	if (failure)
      		goto out;
      [...]
      out:
      	cleanup()
      	return rc;
      
      Instead of doing cleanup mid function, or having multiple returns or other
      options.  This doesn't do that for every function, but most of the complex
      functions which have cleanup routines on error.
      Signed-off-by: NEric Paris <eparis@redhat.com>
      4b02b524
    • E
      SELinux: standardize return code handling in selinuxfs.c · b77a493b
      Eric Paris 提交于
      selinuxfs.c has lots of different standards on how to handle return paths on
      error.  For the most part transition to
      
      	rc=errno
      	if (failure)
      		goto out;
      [...]
      out:
      	cleanup()
      	return rc;
      
      Instead of doing cleanup mid function, or having multiple returns or other
      options.  This doesn't do that for every function, but most of the complex
      functions which have cleanup routines on error.
      Signed-off-by: NEric Paris <eparis@redhat.com>
      b77a493b
    • E
      SELinux: standardize return code handling in policydb.c · 9398c7f7
      Eric Paris 提交于
      policydb.c has lots of different standards on how to handle return paths on
      error.  For the most part transition to
      
      	rc=errno
      	if (failure)
      		goto out;
      [...]
      out:
      	cleanup()
      	return rc;
      
      Instead of doing cleanup mid function, or having multiple returns or other
      options.  This doesn't do that for every function, but most of the complex
      functions which have cleanup routines on error.
      Signed-off-by: NEric Paris <eparis@redhat.com>
      9398c7f7
  2. 16 11月, 2010 1 次提交
  3. 29 10月, 2010 1 次提交
  4. 26 10月, 2010 1 次提交
    • C
      fs: do not assign default i_ino in new_inode · 85fe4025
      Christoph Hellwig 提交于
      Instead of always assigning an increasing inode number in new_inode
      move the call to assign it into those callers that actually need it.
      For now callers that need it is estimated conservatively, that is
      the call is added to all filesystems that do not assign an i_ino
      by themselves.  For a few more filesystems we can avoid assigning
      any inode number given that they aren't user visible, and for others
      it could be done lazily when an inode number is actually needed,
      but that's left for later patches.
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      Signed-off-by: NDave Chinner <dchinner@redhat.com>
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      85fe4025
  5. 21 10月, 2010 14 次提交
  6. 18 8月, 2010 2 次提交
    • N
      tty: fix fu_list abuse · d996b62a
      Nick Piggin 提交于
      tty: fix fu_list abuse
      
      tty code abuses fu_list, which causes a bug in remount,ro handling.
      
      If a tty device node is opened on a filesystem, then the last link to the inode
      removed, the filesystem will be allowed to be remounted readonly. This is
      because fs_may_remount_ro does not find the 0 link tty inode on the file sb
      list (because the tty code incorrectly removed it to use for its own purpose).
      This can result in a filesystem with errors after it is marked "clean".
      
      Taking idea from Christoph's initial patch, allocate a tty private struct
      at file->private_data and put our required list fields in there, linking
      file and tty. This makes tty nodes behave the same way as other device nodes
      and avoid meddling with the vfs, and avoids this bug.
      
      The error handling is not trivial in the tty code, so for this bugfix, I take
      the simple approach of using __GFP_NOFAIL and don't worry about memory errors.
      This is not a problem because our allocator doesn't fail small allocs as a rule
      anyway. So proper error handling is left as an exercise for tty hackers.
      
      [ Arguably filesystem's device inode would ideally be divorced from the
      driver's pseudo inode when it is opened, but in practice it's not clear whether
      that will ever be worth implementing. ]
      
      Cc: linux-kernel@vger.kernel.org
      Cc: Christoph Hellwig <hch@infradead.org>
      Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
      Cc: Greg Kroah-Hartman <gregkh@suse.de>
      Signed-off-by: NNick Piggin <npiggin@kernel.dk>
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      d996b62a
    • N
      fs: cleanup files_lock locking · ee2ffa0d
      Nick Piggin 提交于
      fs: cleanup files_lock locking
      
      Lock tty_files with a new spinlock, tty_files_lock; provide helpers to
      manipulate the per-sb files list; unexport the files_lock spinlock.
      
      Cc: linux-kernel@vger.kernel.org
      Cc: Christoph Hellwig <hch@infradead.org>
      Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
      Acked-by: NAndi Kleen <ak@linux.intel.com>
      Acked-by: NGreg Kroah-Hartman <gregkh@suse.de>
      Signed-off-by: NNick Piggin <npiggin@kernel.dk>
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      ee2ffa0d
  7. 07 8月, 2010 1 次提交
  8. 02 8月, 2010 15 次提交