1. 24 3月, 2011 1 次提交
  2. 02 2月, 2011 1 次提交
    • E
      fs/vfs/security: pass last path component to LSM on inode creation · 2a7dba39
      Eric Paris 提交于
      SELinux would like to implement a new labeling behavior of newly created
      inodes.  We currently label new inodes based on the parent and the creating
      process.  This new behavior would also take into account the name of the
      new object when deciding the new label.  This is not the (supposed) full path,
      just the last component of the path.
      
      This is very useful because creating /etc/shadow is different than creating
      /etc/passwd but the kernel hooks are unable to differentiate these
      operations.  We currently require that userspace realize it is doing some
      difficult operation like that and than userspace jumps through SELinux hoops
      to get things set up correctly.  This patch does not implement new
      behavior, that is obviously contained in a seperate SELinux patch, but it
      does pass the needed name down to the correct LSM hook.  If no such name
      exists it is fine to pass NULL.
      Signed-off-by: NEric Paris <eparis@redhat.com>
      2a7dba39
  3. 26 10月, 2010 1 次提交
  4. 10 8月, 2010 2 次提交
  5. 28 5月, 2010 2 次提交
  6. 06 3月, 2010 1 次提交
  7. 16 12月, 2009 1 次提交
    • J
      ext2: report metadata errors during fsync · 48bde86d
      Jan Kara 提交于
      When an IO error happens while writing metadata buffers, we should better
      report it and call ext2_error since the filesystem is probably no longer
      consistent.  Sometimes such IO errors happen while flushing thread does
      background writeback, the buffer gets later evicted from memory, and thus
      the only trace of the error remains as AS_EIO bit set in blockdevice's
      mapping.  So we check this bit in ext2_fsync and report the error although
      we cannot be really sure which buffer we failed to write.
      Signed-off-by: NJan Kara <jack@suse.cz>
      Cc: Chris Mason <chris.mason@oracle.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      48bde86d
  8. 10 12月, 2009 1 次提交
    • A
      ext2: Unify log messages in ext2 · 2314b07c
      Alexey Fisher 提交于
      make messages produced by ext2 more unified. It should be
      easy to parse.
      
      dmesg before patch:
      [ 4893.684892] reservations ON
      [ 4893.684896] xip option not supported
      [ 4893.684961] EXT2-fs warning: mounting ext3 filesystem as ext2
      [ 4893.684964] EXT2-fs warning: maximal mount count reached, running
      e2fsck is recommended
      [ 4893.684990] EXT II FS: 0.5b, 95/08/09, bs=1024, fs=1024, gc=2,
      bpg=8192, ipg=1280, mo=80010]
      
      dmesg after patch:
      [ 4893.684892] EXT2-fs (loop0): reservations ON
      [ 4893.684896] EXT2-fs (loop0): xip option not supported
      [ 4893.684961] EXT2-fs (loop0): warning: mounting ext3 filesystem as
      ext2
      [ 4893.684964] EXT2-fs (loop0): warning: maximal mount count reached,
      running e2fsck is recommended
      [ 4893.684990] EXT2-fs (loop0): 0.5b, 95/08/09, bs=1024, fs=1024, gc=2,
      bpg=8192, ipg=1280, mo=80010]
      Signed-off-by: NAlexey Fisher <bug-track@fisher-privat.net>
      Reviewed-by: NAndreas Dilger <adilger@sun.com>
      Signed-off-by: NJan Kara <jack@suse.cz>
      2314b07c
  9. 24 6月, 2009 1 次提交
  10. 19 6月, 2009 1 次提交
    • J
      ext2: Do not update mtime of a moved directory · 39fe7557
      Jan Kara 提交于
      One of our users is complaining that his backup tool is upset on ext2
      (while it's happy on ext3, xfs, ...) because of the mtime change.
      
      The problem is:
      
          mkdir foo
          mkdir bar
          mkdir foo/a
      
      Now under ext2:
          mv foo/a foo/b
      
      changes mtime of 'foo/a' (foo/b after the move).  That does not really
      make sense and it does not happen under any other filesystem I've seen.
      
      More complicated is:
          mv foo/a bar/a
      
      This changes mtime of foo/a (bar/a after the move) and it makes some
      sense since we had to update parent directory pointer of foo/a.  But
      again, no other filesystem does this.  So after some thoughts I'd vote
      for consistency and change ext2 to behave the same as other filesystems.
      
      Do not update mtime of a moved directory.  Specs don't say anything
      about it (neither that it should, nor that it should not be updated) and
      other common filesystems (ext3, ext4, xfs, reiserfs, fat, ...) don't do
      it.  So let's become more consistent.
      
      Spotted by ronny.pretzsch@dfs.de, initial fix by Jörn Engel.
      
      Reported-by: <ronny.pretzsch@dfs.de>
      Cc: <hare@suse.de>
      Cc: Jörn Engel <joern@logfs.org>
      Signed-off-by: NJan Kara <jack@suse.cz>
      Cc: <linux-ext4@vger.kernel.org>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      39fe7557
  11. 13 6月, 2009 1 次提交
  12. 12 6月, 2009 1 次提交
  13. 23 10月, 2008 1 次提交
  14. 04 10月, 2008 1 次提交
    • J
      generic block based fiemap implementation · 68c9d702
      Josef Bacik 提交于
      Any block based fs (this patch includes ext3) just has to declare its own
      fiemap() function and then call this generic function with its own
      get_block_t. This works well for block based filesystems that will map
      multiple contiguous blocks at one time, but will work for filesystems that
      only map one block at a time, you will just end up with an "extent" for each
      block. One gotcha is this will not play nicely where there is hole+data
      after the EOF. This function will assume its hit the end of the data as soon
      as it hits a hole after the EOF, so if there is any data past that it will
      not pick that up. AFAIK no block based fs does this anyway, but its in the
      comments of the function anyway just in case.
      Signed-off-by: NJosef Bacik <jbacik@redhat.com>
      Signed-off-by: NMark Fasheh <mfasheh@suse.com>
      Signed-off-by: N"Theodore Ts'o" <tytso@mit.edu>
      Cc: linux-fsdevel@vger.kernel.org
      68c9d702
  15. 09 2月, 2008 1 次提交
  16. 08 2月, 2008 1 次提交
  17. 07 2月, 2008 1 次提交
  18. 30 11月, 2007 1 次提交
  19. 17 10月, 2007 2 次提交
  20. 09 5月, 2007 1 次提交
  21. 13 2月, 2007 1 次提交
  22. 01 10月, 2006 1 次提交
  23. 29 6月, 2006 1 次提交
  24. 29 3月, 2006 1 次提交
  25. 24 3月, 2006 1 次提交
  26. 10 1月, 2006 1 次提交
  27. 13 7月, 2005 1 次提交
  28. 24 6月, 2005 1 次提交
  29. 17 4月, 2005 2 次提交
    • B
      [PATCH] ext2 corruption - regression between 2.6.9 and 2.6.10 · e072c6f2
      Bernard Blackham 提交于
      Whilst trying to stress test a Promise SX8 card, we stumbled across
      some nasty filesystem corruption in ext2. Our tests involved
      creating an ext2 partition, mounting, running several concurrent
      fsx's over it, umounting, and fsck'ing, all scripted[1]. The fsck
      would always return with errors.
      
      This regression was traced back to a change between 2.6.9 and
      2.6.10, which moves the functionality of ext2_put_inode into
      ext2_clear_inode.  The attached patch reverses this change, and
      eliminated the source of corruption.
      
      Mingming Cao <cmm@us.ibm.com> said:
      
      I think his patch for ext2 is correct.  The corruption on ext3 is not the same
      issue he saw on ext2.  I believe that's the race between discard reservation
      and reservation in-use that we already fixed it in 2.6.12- rc1.
      
      For the problem related to ext2, at the time when we design reservation for
      ext3, we decide we only need to discard the reservation at the last file
      close, so we have ext3_discard_reservation on iput_final- >ext3_clear_inode.
      
      The ext2 handle discard preallocation differently at that time, it discard the
      preallocation at each iput(), not in input_final(), so we think it's
      unnecessary to thrash it so frequently, and the right thing to do, as we did
      for ext3 reservation, discard preallocation on last iput().  So we moved the
      ext2_discard_preallocation from ext2_put_inode(0 to ext2_clear_inode.
      
      Since ext2 preallocation is doing pre-allocation on disk, so it is possible
      that at the unmount time, someone is still hold the reference of the inode, so
      the preallocation for a file is not discard yet, so we still mark those blocks
      allocated on disk, while they are not actually in the inode's block map, so
      fsck will catch/fix that error later.
      
      This is not a issue for ext3, as ext3 reservation(pre-allocation) is done in
      memory.
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      e072c6f2
    • L
      Linux-2.6.12-rc2 · 1da177e4
      Linus Torvalds 提交于
      Initial git repository build. I'm not bothering with the full history,
      even though we have it. We can create a separate "historical" git
      archive of that later if we want to, and in the meantime it's about
      3.2GB when imported into git - space that would just make the early
      git days unnecessarily complicated, when we don't have a lot of good
      infrastructure for it.
      
      Let it rip!
      1da177e4