Thread (7 messages) 7 messages, 4 authors, 2008-08-07

Re: Btrfs v0.16 released

From: Chris Mason <hidden>
Date: 2008-08-07 12:51:46
Also in: linux-fsdevel, lkml

On Thu, 2008-08-07 at 11:08 +0200, Peter Zijlstra wrote:
On Tue, 2008-08-05 at 15:01 -0400, Chris Mason wrote:
quoted
* Fine grained btree locking.  The large fs_mutex is finally gone.
There is still some work to do on the locking during extent allocation,
but the code is much more scalable than it was.
Cool - will try to find a cycle to stare at the code ;-)
I was able to get it mostly lockdep complaint by using mutex_lock_nested
based on the level of the btree I was locking.  My allocation mutex is a
little of a problem for lockdep though.
quoted
* Helper threads for checksumming and other background tasks.  Most CPU
intensive operations have been pushed off to helper threads to take
advantage of SMP machines.  Streaming read and write throughput now
scale to disk speed even with checksumming on.
Can this lead to the same Priority Inversion issues as seen with
kjournald?
Yes, although in general only the helper threads end up actually doing
the IO for writes.  Unfortunately, they are almost but not quite an
elevator.  It is tempting to try sorting the bios on the helper queues
etc.  But I haven't done that because it gets into starvation and other
fun.

I haven't done any real single cpu testing, it may make sense in those
workloads to checksum and submit directly in the calling context.  But
real single cpu boxes are harder to come by these days.

-chris

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help