25 Dec, 2009

1 commit


20 Nov, 2009

2 commits

  • Users on the linux-ext4 list recently complained about differences
    across filesystems w.r.t. how to mount without a journal replay.

    In the discussion it was noted that xfs's "norecovery" option is
    perhaps more descriptively accurate than "noload," so let's make
    that an alias for ext4.

    Also show this status in /proc/mounts

    Signed-off-by: Eric Sandeen
    Signed-off-by: "Theodore Ts'o"

    Eric Sandeen
     
  • It is anticipated that when sb_issue_discard starts doing
    real work on trim-capable devices, we may see issues. Make
    this mount-time optional, and default it to off until we know
    that things are working out OK.

    Signed-off-by: Eric Sandeen
    Signed-off-by: "Theodore Ts'o"

    Eric Sandeen
     

03 Nov, 2009

1 commit

  • This reverts commit d0646f7b636d067d715fab52a2ba9c6f0f46b0d7, as
    requested by Eric Sandeen.

    It can basically cause an ext4 filesystem to miss recovery (and thus get
    mounted with errors) if the journal checksum does not match.

    Quoth Eric:

    "My hand-wavy hunch about what is happening is that we're finding a
    bad checksum on the last partially-written transaction, which is
    not surprising, but if we have a wrapped log and we're doing the
    initial scan for head/tail, and we abort scanning on that bad
    checksum, then we are essentially running an unrecovered filesystem.

    But that's hand-wavy and I need to go look at the code.

    We lived without journal checksums on by default until now, and at
    this point they're doing more harm than good, so we should revert
    the default-changing commit until we can fix it and do some good
    power-fail testing with the fixes in place."

    See

    http://bugzilla.kernel.org/show_bug.cgi?id=14354

    for all the gory details.

    Requested-by: Eric Sandeen
    Cc: Theodore Tso
    Cc: Alexey Fisher
    Cc: Maxim Levitsky
    Cc: Aneesh Kumar K.V
    Cc: Mathias Burén
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     

30 Sep, 2009

1 commit


19 Sep, 2009

1 commit


06 Sep, 2009

1 commit


13 Jun, 2009

2 commits


28 Mar, 2009

1 commit

  • Add support for using the mount options "barrier" and "nobarrier", and
    "auto_da_alloc" and "noauto_da_alloc", which is more consistent than
    "barrier=" or "auto_da_alloc=". Most other ext3/ext4 mount
    options use the foo/nofoo naming convention. We allow the old forms
    of these mount options for backwards compatibility.

    Signed-off-by: "Theodore Ts'o"

    Theodore Ts'o
     

23 Feb, 2009

1 commit


07 Jan, 2009

3 commits

  • This mount option is largely superfluous, and in fact the way it was
    implemented was buggy; if a filesystem which did not have the extents
    feature flag was mounted -o extents, the filesystem would attempt to
    create and use extents-based file even though the extents feature flag
    was not eabled. The simplest thing to do is to nuke the mount option
    entirely. It's not all that useful to force the non-creation of new
    extent-based files if the filesystem can support it.

    Signed-off-by: "Theodore Ts'o"

    Theodore Ts'o
     
  • This code has been obsolete in quite some time, since the supported
    method for adding a journal inode is to use tune2fs (or to creating
    new filesystem with a journal via mke2fs or mkfs.ext4).

    Signed-off-by: "Theodore Ts'o"

    Theodore Ts'o
     
  • Fix paragraph with recommendations on how to tune ext4 for benchmarks.

    Signed-off-by: "Theodore Ts'o"

    Theodore Ts'o
     

06 Jan, 2009

1 commit


04 Jan, 2009

1 commit

  • Add new mount options, min_batch_time and max_batch_time, which
    controls how long the jbd2 layer should wait for additional filesystem
    operations to get batched with a synchronous write transaction.

    Signed-off-by: "Theodore Ts'o"

    Theodore Ts'o
     

17 Oct, 2008

1 commit


11 Oct, 2008

2 commits

  • If the journal doesn't abort when it gets an IO error in file data
    blocks, the file data corruption will spread silently. Because
    most of applications and commands do buffered writes without fsync(),
    they don't notice the IO error. It's scary for mission critical
    systems. On the other hand, if the journal aborts whenever it gets
    an IO error in file data blocks, the system will easily become
    inoperable. So this patch introduces a filesystem option to
    determine whether it aborts the journal or just call printk() when
    it gets an IO error in file data.

    If you mount an ext4 fs with data_err=abort option, it aborts on file
    data write error. If you mount it with data_err=ignore, it doesn't
    abort, just call printk(). data_err=ignore is the default.

    Here is the corresponding patch of the ext3 version:
    http://kerneltrap.org/mailarchive/linux-kernel/2008/9/9/3239374

    Signed-off-by: Hidehiro Kawai
    Signed-off-by: Theodore Ts'o

    Hidehiro Kawai
     
  • The ext4 filesystem is getting stable enough that it's time to drop
    the "dev" prefix. Also remove the requirement for the TEST_FILESYS
    flag.

    Signed-off-by: "Theodore Ts'o"

    Theodore Ts'o
     

10 Oct, 2008

1 commit

  • With modern hard drives, reading 64k takes roughly the same time as
    reading a 4k block. So request readahead for adjacent inode table
    blocks to reduce the time it takes when iterating over directories
    (especially when doing this in htree sort order) in a cold cache case.
    With this patch, the time it takes to run "git status" on a kernel
    tree after flushing the caches via "echo 3 > /proc/sys/vm/drop_caches"
    is reduced by 21%.

    Signed-off-by: "Theodore Ts'o"

    Theodore Ts'o
     

28 Jul, 2008

1 commit


12 Jul, 2008

2 commits


27 May, 2008

1 commit

  • I can't think of any valid reason for ext4 to not use barriers when
    they are available; I believe this is necessary for filesystem
    integrity in the face of a volatile write cache on storage.

    An administrator who trusts that the cache is sufficiently battery-
    backed (and power supplies are sufficiently redundant, etc...)
    can always turn it back off again.

    SuSE has carried such a patch for ext3 for quite some time now.

    Also document the mount option while we're at it.

    Signed-off-by: Eric Sandeen
    Signed-off-by: Mingming Cao
    Signed-off-by: "Theodore Ts'o"

    Eric Sandeen
     

29 Jan, 2008

2 commits

  • Signed-off-by: Alex Tomas
    Signed-off-by: Andreas Dilger
    Signed-off-by: Aneesh Kumar K.V
    Signed-off-by: Eric Sandeen
    Signed-off-by: "Theodore Ts'o"

    Alex Tomas
     
  • The journal checksum feature adds two new flags i.e
    JBD2_FEATURE_INCOMPAT_ASYNC_COMMIT and JBD2_FEATURE_COMPAT_CHECKSUM.

    JBD2_FEATURE_CHECKSUM flag indicates that the commit block contains the
    checksum for the blocks described by the descriptor blocks.
    Due to checksums, writing of the commit record no longer needs to be
    synchronous. Now commit record can be sent to disk without waiting for
    descriptor blocks to be written to disk. This behavior is controlled
    using JBD2_FEATURE_ASYNC_COMMIT flag. Older kernels/e2fsck should not be
    able to recover the journal with _ASYNC_COMMIT hence it is made
    incompat.
    The commit header has been extended to hold the checksum along with the
    type of the checksum.

    For recovery in pass scan checksums are verified to ensure the sanity
    and completeness(in case of _ASYNC_COMMIT) of every transaction.

    Signed-off-by: Andreas Dilger
    Signed-off-by: Girish Shilamkar
    Signed-off-by: Dave Kleikamp
    Signed-off-by: Mingming Cao

    Girish Shilamkar
     

12 Oct, 2006

1 commit

  • This file, ext4.txt, was put together with information from Andrew Morton,
    Andreas Dilger, Suparna Bhattacharya, and Ted Ts'o.

    I copied the mount options, with the exception of "extents", from ext3.txt,
    so if anyone is aware of anything out-of-date, please let me know.

    Signed-off-by: Dave Kleikamp
    Cc: Theodore Ts'o
    Cc: Suparna Bhattacharya
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dave Kleikamp