public inbox for linux-btrfs@vger.kernel.org
 help / color / mirror / Atom feed
From: Chris Mason <chris.mason@oracle.com>
To: Peter Zijlstra <peterz@infradead.org>
Cc: linux-btrfs <linux-btrfs@vger.kernel.org>,
	linux-kernel <linux-kernel@vger.kernel.org>,
	linux-fsdevel <linux-fsdevel@vger.kernel.org>
Subject: Re: Btrfs v0.16 released
Date: Thu, 07 Aug 2008 06:34:02 -0400	[thread overview]
Message-ID: <1218105242.15342.184.camel@think.oraclecorp.com> (raw)
In-Reply-To: <1218100139.8625.7.camel@twins>

On Thu, 2008-08-07 at 11:08 +0200, Peter Zijlstra wrote:
> On Tue, 2008-08-05 at 15:01 -0400, Chris Mason wrote:
> 
> > * 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.

> > * 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



  reply	other threads:[~2008-08-07 10:34 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-08-05 19:01 Btrfs v0.16 released Chris Mason
2008-08-07  9:08 ` Peter Zijlstra
2008-08-07 10:34   ` Chris Mason [this message]
2008-08-07 14:58     ` Chris Friesen
2008-08-07 15:07     ` tvrtko.ursulin
2008-08-07  9:14 ` Peter Zijlstra
2008-08-07 10:39   ` Chris Mason
     [not found]     ` <3da3b5b40808070703x4cf49471q6acc00351ba019d7@mail.gmail.com>
2008-08-07 14:06       ` Chris Mason
2008-08-07 18:02     ` Andi Kleen
2008-08-08 18:48       ` Chris Mason
2008-08-08 21:56         ` Andi Kleen
2008-08-09  1:19           ` Theodore Tso
2008-08-09  1:23             ` Andi Kleen
2008-08-09  1:43               ` Theodore Tso
2008-08-14 21:00         ` Chris Mason
2008-08-14 21:17           ` Andi Kleen
2008-08-15  1:25             ` Chris Mason
2008-08-15  1:39               ` Andi Kleen
2008-08-15 13:00                 ` Chris Mason
2008-08-16 19:26                   ` Szabolcs Szakacsits
2008-08-18 13:52                     ` Chris Mason
2008-08-18 17:37                       ` Szabolcs Szakacsits
2008-08-14 23:44           ` Theodore Tso
2008-08-15  1:10             ` Chris Mason
2008-08-15 12:46               ` Chris Mason
2008-08-15 13:45                 ` Theodore Tso
2008-08-15 17:52                   ` Chris Mason
2008-08-15 19:59                     ` Theodore Tso
2008-08-15 20:37                       ` Chris Mason
2008-08-16 18:10                         ` Chris Mason
2008-08-16 19:27                           ` Theodore Tso
  -- strict thread matches above, loose matches on Subject: below --
2008-08-07 19:33 btrfs-devel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1218105242.15342.184.camel@think.oraclecorp.com \
    --to=chris.mason@oracle.com \
    --cc=linux-btrfs@vger.kernel.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=peterz@infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox