05 Aug, 2010

1 commit

  • commit 3d0518f4, "ext4: New rec_len encoding for very
    large blocksizes" made several changes to this path, but from
    a perf perspective, un-inlining ext4_rec_len_from_disk() seems
    most significant. This function is called from ext4_check_dir_entry(),
    which on a file-creation workload is called extremely often.

    I tested this with bonnie:

    # bonnie++ -u root -s 0 -f -x 200 -d /mnt/test -n 32

    (this does 200 iterations) and got this for the file creations:

    ext4 stock: Average = 21206.8 files/s
    ext4 inlined: Average = 22346.7 files/s (+5%)

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

    Eric Sandeen
     

04 Aug, 2010

2 commits


02 Aug, 2010

4 commits

  • By using an atomic_t for t_updates and t_outstanding credits, this
    should allow us to not need to take transaction t_handle_lock in
    jbd2_journal_stop().

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

    Theodore Ts'o
     
  • Allow mount options to be stored in the superblock. Also add default
    mount option bits for nobarrier, block_validity, discard, and nodelalloc.

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

    Theodore Ts'o
     
  • Perform full sync procedure so that any delayed allocation blocks are
    allocated so quota will be consistent.

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

    Dmitry Monakhov
     
  • Commit 6b0310fbf087ad6 caused a regression resulting in deadlocks
    when freezing a filesystem which had active IO; the vfs_check_frozen
    level (SB_FREEZE_WRITE) did not let the freeze-related IO syncing
    through. Duh.

    Changing the test to FREEZE_TRANS should let the normal freeze
    syncing get through the fs, but still block any transactions from
    starting once the fs is completely frozen.

    I tested this by running fsstress in the background while periodically
    snapshotting the fs and running fsck on the result. I ran into
    occasional deadlocks, but different ones. I think this is a
    fine fix for the problem at hand, and the other deadlocky things
    will need more investigation.

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

    Eric Sandeen
     

30 Jul, 2010

1 commit


27 Jul, 2010

21 commits


30 Jun, 2010

2 commits


29 Jun, 2010

2 commits


16 Jun, 2010

1 commit


15 Jun, 2010

2 commits


14 Jun, 2010

1 commit


12 Jun, 2010

3 commits

  • We don't need to set s_dirt in most of the ext4 code when journaling
    is enabled. In ext3/4 some of the summary statistics for # of free
    inodes, blocks, and directories are calculated from the per-block
    group statistics when the file system is mounted or unmounted. As a
    result the superblock doesn't have to be updated, either via the
    journal or by setting s_dirt. There are a few exceptions, most
    notably when resizing the file system, where the superblock needs to
    be modified --- and in that case it should be done as a journalled
    operation if possible, and s_dirt set only in no-journal mode.

    This patch will optimize out some unneeded disk writes when using ext4
    with a journal.

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

    Theodore Ts'o
     
  • Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:
    wimax/i2400m: fix missing endian correction read in fw loader
    net8139: fix a race at the end of NAPI
    pktgen: Fix accuracy of inter-packet delay.
    pkt_sched: gen_estimator: add a new lock
    net: deliver skbs on inactive slaves to exact matches
    ipv6: fix ICMP6_MIB_OUTERRORS
    r8169: fix mdio_read and update mdio_write according to hw specs
    gianfar: Revive the driver for eTSEC devices (disable timestamping)
    caif: fix a couple range checks
    phylib: Add support for the LXT973 phy.
    net: Print num_rx_queues imbalance warning only when there are allocated queues

    Linus Torvalds