Whamcloud - gitweb
Create a per-fs lock for obdfilter block allocation. This is held only
during actual block allocation and not during RPCs or writes. This allows
us to allocate contiguous chunks of disk (if available) up to the size of
each RPC, instead of interleaving block allocations.
It slows down writes in the contention case, because we might be holding
the lock while waiting for a bitmap or something to be loaded from disk,
and in the current 2.4 IO code reads-behind-lots-of-writes can be punishing.
We might benefit here and elsewhere from AKPM's read priority patch.
The big benefit is that at read time, or after some amount of create-delete
we don't have a maximally fragmented block allocation to deal with, which
causes pathological seeking on the disks.
b=2260
r=peter,phil