From: Josef Bacik <jbacik@fb.com>
To: Linus Torvalds <torvalds@linux-foundation.org>,
Chris Mason <clm@fb.com>, LKML <linux-kernel@vger.kernel.org>,
linux-fsdevel <linux-fsdevel@vger.kernel.org>,
Dave Chinner <david@fromorbit.com>, Neil Brown <neilb@suse.de>,
Jan Kara <jack@suse.cz>, Christoph Hellwig <hch@lst.de>
Subject: Re: [PATCH] fs-writeback: drop wb->list_lock during blk_finish_plug()
Date: Fri, 11 Sep 2015 16:40:11 -0400 [thread overview]
Message-ID: <55F33C2B.1010508@fb.com> (raw)
In-Reply-To: <CA+55aFz2f8969nQAR6=TUTQOYA7T9vmcYJKGCyejYWYZ9a5S_w@mail.gmail.com>
On 09/11/2015 04:37 PM, Linus Torvalds wrote:
> On Fri, Sep 11, 2015 at 1:02 PM, Linus Torvalds
> <torvalds@linux-foundation.org> wrote:
>>
>> How about we instead:
>>
>> (a) revert that commit d353d7587 as broken (because it clearly is)
>>
>> (b) add a big honking comment about the fact that we hold 'list_lock'
>> in writeback_sb_inodes()
>>
>> (c) move the plugging up to wb_writeback() and writeback_inodes_wb()
>> _outside_ the spinlock.
>
> Ok, I've done (a) and (b) in my tree. And attached is the totally
> untested patch for (c). It looks ObviouslyCorrect(tm), but since this
> is a performance issue, I'm not going to commit it without some more
> ACK's from people.
>
> I obviously think this is a *much* better approach than dropping and
> retaking the lock, but there might be something silly I'm missing.
>
> For example, maybe we want to unplug and replug around the
> "inode_sleep_on_writeback()" in wb_writeback()? So while the revert
> was a no-brainer, this one I really want people to think about.
So we talked about this when we were trying to figure out a solution.
The problem with this approach is now we have a plug that covers
multiple super blocks (__writeback_inodes_wb loops through the sb's
starts writeback), which is likely to give us crappier performance than
no plug at all. Thanks,
Josef
next prev parent reply other threads:[~2015-09-11 20:40 UTC|newest]
Thread overview: 56+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-09-11 19:37 [PATCH] fs-writeback: drop wb->list_lock during blk_finish_plug() Chris Mason
2015-09-11 20:02 ` Linus Torvalds
2015-09-11 20:37 ` Linus Torvalds
2015-09-11 20:40 ` Josef Bacik [this message]
2015-09-11 21:04 ` Linus Torvalds
2015-09-11 22:06 ` Linus Torvalds
2015-09-11 23:16 ` Chris Mason
2015-09-11 23:36 ` Linus Torvalds
2015-09-12 0:52 ` Linus Torvalds
2015-09-12 2:15 ` Chris Mason
2015-09-12 2:27 ` Linus Torvalds
2015-09-12 23:00 ` Chris Mason
2015-09-12 23:29 ` Linus Torvalds
2015-09-12 23:46 ` Chris Mason
2015-09-13 13:12 ` Chris Mason
2015-09-13 22:56 ` Dave Chinner
2015-09-13 23:12 ` Dave Chinner
2015-09-14 20:06 ` Linus Torvalds
2015-09-16 15:16 ` Chris Mason
2015-09-16 19:58 ` Jan Kara
2015-09-16 20:00 ` Chris Mason
2015-09-16 22:07 ` Dave Chinner
2015-09-17 0:37 ` Dave Chinner
2015-09-17 1:12 ` Linus Torvalds
2015-09-17 2:14 ` Dave Chinner
2015-09-17 19:39 ` Linus Torvalds
2015-09-17 22:42 ` Chris Mason
2015-09-17 23:08 ` Linus Torvalds
2015-09-17 23:56 ` Chris Mason
2015-09-18 0:37 ` Dave Chinner
2015-09-18 1:50 ` Linus Torvalds
2015-09-18 5:40 ` Dave Chinner
2015-09-18 6:04 ` Linus Torvalds
2015-09-18 6:06 ` Linus Torvalds
2015-09-18 14:21 ` Jens Axboe
2015-09-18 13:16 ` Chris Mason
2015-09-18 14:23 ` Jens Axboe
2015-09-18 15:32 ` Linus Torvalds
2015-09-18 15:59 ` Peter Zijlstra
2015-09-18 16:02 ` Peter Zijlstra
2015-09-18 16:12 ` Linus Torvalds
2015-09-28 14:47 ` Peter Zijlstra
2015-09-28 16:08 ` Linus Torvalds
2015-09-29 7:55 ` Ingo Molnar
2015-09-18 22:17 ` Dave Chinner
2015-09-21 9:24 ` Jan Kara
2015-09-21 20:21 ` Andrew Morton
2015-09-17 23:03 ` Dave Chinner
2015-09-17 23:13 ` Linus Torvalds
2015-09-17 3:48 ` Chris Mason
2015-09-17 4:30 ` Dave Chinner
2015-09-17 12:13 ` Chris Mason
2015-09-11 23:06 ` Chris Mason
2015-09-11 23:13 ` Linus Torvalds
-- strict thread matches above, loose matches on Subject: below --
2015-09-09 15:23 Chris Mason
2015-09-11 18:49 ` Jens Axboe
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=55F33C2B.1010508@fb.com \
--to=jbacik@fb.com \
--cc=clm@fb.com \
--cc=david@fromorbit.com \
--cc=hch@lst.de \
--cc=jack@suse.cz \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=neilb@suse.de \
--cc=torvalds@linux-foundation.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;
as well as URLs for NNTP newsgroup(s).