• Andrew Morton's avatar
    [PATCH] reiserfs: fsync() speedup · f2a0b4d8
    Andrew Morton authored
    From: Chris Mason <mason@suse.com>
    
    Updates the reiserfs-logging improvements to use schedule_timeout instead of
    yield when letting the transaction grow a little before forcing a commit for
    fsync/O_SYNC/O_DIRECT.
    
    Also, when one process forces a transaction to end and plans on doing the
    commit (like fsync), it sets a flag on the transaction so the journal code
    knows not to bother kicking the journal work queue.
    
    queue_delayed_work is used so that if we get a bunch of tiny transactions
    ended quickly, we aren't constantly kicking the work queue.
    
    These significantly improve reiserfs performance during fsync heavy
    workloads.
    f2a0b4d8
journal.c 119 KB