• Andrew Morton's avatar
    [PATCH] ext3: move lock_kernel() down into the JBD layer. · 3307fbd1
    Andrew Morton authored
    This is the start of the ext3 scalability rework.  It basically comes in two
    halves:
    
    - ext3 BKL/lock_super removal and scalable inode/block allocators
    
    - JBD locking rework.
    
    The ext3 scalability work was completed a couple of months ago.
    
    The JBD rework has been stable for a couple of weeks now.  My gut feeling is
    that there should be one, maybe two bugs left in it, but no problems have
    been discovered...
    
    
    Performance-wise, throughput is increased by up to 2x on dual CPU.  10x on
    16-way has been measured.  Given that current ext3 is able to chew two whole
    CPUs spinning on locks on a 4-way, that wasn't especially suprising.
    
    These patches were prepared by Alex Tomas <bzzz@tmi.comex.ru> and myself.
    
    
    First patch: ext3 lock_kernel() removal.
    
    The only reason why ext3 takes lock_kernel() is because it is requires by the
    JBD API.
    
    The patch removes the lock_kernels() from ext3 and pushes them down into JBD
    itself.
    3307fbd1
inode.c 84.4 KB