All of lore.kernel.org
 help / color / mirror / Atom feed
From: Linus Torvalds <torvalds@linux-foundation.org>
To: James Bottomley <James.Bottomley@hansenpartnership.com>
Cc: Amir Goldstein <amir73il@gmail.com>,
	Hugh Dickins <hughd@google.com>,
	Michael Larabel <Michael@michaellarabel.com>,
	"Ted Ts'o" <tytso@google.com>,
	Andreas Dilger <adilger.kernel@dilger.ca>,
	Ext4 Developers List <linux-ext4@vger.kernel.org>,
	Jan Kara <jack@suse.cz>,
	linux-fsdevel <linux-fsdevel@vger.kernel.org>
Subject: Re: Kernel Benchmarking
Date: Sat, 12 Sep 2020 14:15:56 -0700	[thread overview]
Message-ID: <CAHk-=wjTpK7=5Sd8i9D_FTtRSerMUP3ux4qEL+fZdDYmfLrBAg@mail.gmail.com> (raw)
In-Reply-To: <1599944388.6060.25.camel@HansenPartnership.com>

On Sat, Sep 12, 2020 at 1:59 PM James Bottomley
<James.Bottomley@hansenpartnership.com> wrote:
>
> On Sat, 2020-09-12 at 10:59 -0700, Linus Torvalds wrote:
> [...]
> > Any other suggestions than those (a)-(d) ones above?
>
> What about revert and try to fix the outliers?  Say by having a timer
> set when a process gets put to sleep waiting on the page lock.

No timer needed, I suspect.

I tried to code something like this up yesterday (hjmm. Thursday?) as
a "hybrid" scheme, where we'd start out with the old behavior and let
people unfairly get the lock while there were waiters, but when a
waiter woke up and noticed that it still couldn't get the lock, _then_
it would stat using the new scheme.

So still be unfair for a bit, but limit the unfairness so that a
waiter won't lose the lock more than once (but obviously while the
waiter initially slept, _many_ other lockers could have come through).

I ended up with a code mess and gave up on it (it seemed to just get
all the complications from the old _and_ the new model), but maybe I
should try again now that I know what went wrong last time. I think I
tried too hard to actually mix the old and the new code.

(If I tried again, I'd not try to mix the new and the old code, I'd
make the new one start out with a non-exclusive wait - which the code
already supports for that whole "wait for PG_writeback to end" as
opposed to "wait to take PG_lock" - and then turn it into an exclusive
wait if it fails.. That might work out better and not mix entirely
different approaches).

             Linus

  reply	other threads:[~2020-09-12 21:16 UTC|newest]

Thread overview: 65+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <CAHk-=wiZnE409WkTOG6fbF_eV1LgrHBvMtyKkpTqM9zT5hpf9A@mail.gmail.com>
     [not found] ` <4ced9401-de3d-b7c9-9976-2739e837fafc@MichaelLarabel.com>
     [not found]   ` <CAHk-=wj+Qj=wXByMrAx3T8jmw=soUetioRrbz6dQaECx+zjMtg@mail.gmail.com>
     [not found]     ` <CAHk-=wgOPjbJsj-LeLc-JMx9Sz9DjGF66Q+jQFJROt9X9utdBg@mail.gmail.com>
     [not found]       ` <CAHk-=wjjK7PTnDZNi039yBxSHtAqusFoRrZzgMNTiYkJYdNopw@mail.gmail.com>
     [not found]         ` <aa90f272-1186-f9e1-8fdb-eefd332fdae8@MichaelLarabel.com>
     [not found]           ` <CAHk-=wh_31_XBNHbdF7EUJceLpEpwRxVF+_1TONzyBUym6Pw4w@mail.gmail.com>
     [not found]             ` <e24ef34d-7b1d-dd99-082d-28ca285a79ff@MichaelLarabel.com>
     [not found]               ` <CAHk-=wgEE4GuNjcRaaAvaS97tW+239-+tjcPjTq2FGhEuM8HYg@mail.gmail.com>
     [not found]                 ` <6e1d8740-2594-c58b-ff02-a04df453d53c@MichaelLarabel.com>
     [not found]                   ` <CAHk-=wgJ3-cEkU-5zXFPvRCHKkCCuKxVauYWGphjePEhJJgtgQ@mail.gmail.com>
     [not found]                     ` <d2023f4c-ef14-b877-b5bb-e4f8af332abc@MichaelLarabel.com>
     [not found]                       ` <CAHk-=wiz=J=8mJ=zRG93nuJ9GtQAm5bSRAbWJbWZuN4Br38+EQ@mail.gmail.com>
2020-09-11  0:05                         ` Kernel Benchmarking Linus Torvalds
2020-09-11  0:49                           ` Michael Larabel
2020-09-11  2:20                             ` Linus Torvalds
     [not found]                               ` <0cbc959e-1b8d-8d7e-1dc6-672cf5b3899a@MichaelLarabel.com>
2020-09-11 16:19                                 ` Linus Torvalds
2020-09-11 22:07                                   ` Linus Torvalds
2020-09-11 22:37                                     ` Michael Larabel
2020-09-12  7:28                                       ` Amir Goldstein
2020-09-12 10:32                                         ` Michael Larabel
2020-09-12 14:37                                           ` Matthew Wilcox
2020-09-12 14:44                                             ` Michael Larabel
2020-09-15  3:32                                               ` Matthew Wilcox
2020-09-15 10:39                                                 ` Jan Kara
2020-09-15 13:52                                                   ` Matthew Wilcox
     [not found]                                             ` <658ae026-32d9-0a25-5a59-9c510d6898d5@MichaelLarabel.com>
2020-09-14 17:47                                               ` Linus Torvalds
2020-09-14 20:21                                                 ` Matthieu Baerts
2020-09-14 20:53                                                   ` Linus Torvalds
2020-09-15  0:42                                                     ` Linus Torvalds
2020-09-15 15:34                                                     ` Matthieu Baerts
2020-09-15 18:27                                                       ` Linus Torvalds
2020-09-15 18:47                                                         ` Linus Torvalds
2020-09-15 19:26                                                           ` Matthieu Baerts
2020-09-15 19:32                                                             ` Linus Torvalds
2020-09-15 19:56                                                               ` Matthieu Baerts
2020-09-15 23:35                                                                 ` Linus Torvalds
2020-09-16 10:34                                                                   ` Jan Kara
2020-09-16 18:47                                                                     ` Linus Torvalds
     [not found]                                                         ` <9a92bf16-02c5-ba38-33c7-f350588ac874@tessares.net>
2020-09-15 19:24                                                           ` Linus Torvalds
2020-09-15 19:38                                                             ` Matthieu Baerts
2020-09-15 18:31                                                       ` Linus Torvalds
2020-09-15 14:21                                                 ` Michael Larabel
2020-09-15 17:52                                                   ` Linus Torvalds
2020-09-17 17:51                                                 ` Linus Torvalds
2020-09-17 18:23                                                   ` Matthew Wilcox
2020-09-17 18:30                                                     ` Linus Torvalds
2020-09-17 18:50                                                       ` Matthew Wilcox
2020-09-17 19:00                                                         ` Linus Torvalds
2020-09-17 19:27                                                           ` Matthew Wilcox
2020-09-17 19:47                                                             ` Linus Torvalds
2020-09-18  0:39                                                               ` Sedat Dilek
2020-09-18  0:40                                                                 ` Sedat Dilek
2020-09-18 20:25                                                                   ` Sedat Dilek
2020-09-20 17:06                                                                     ` Linus Torvalds
2020-09-20 17:14                                                                       ` Sedat Dilek
2020-09-20 17:40                                                                         ` Linus Torvalds
2020-09-20 18:00                                                                           ` Sedat Dilek
2020-09-20 23:23                                                               ` Dave Chinner
2020-09-20 23:31                                                                 ` Linus Torvalds
2020-09-20 23:40                                                                   ` Linus Torvalds
2020-09-21  1:20                                                                   ` Dave Chinner
2020-09-12 15:53                                         ` Matthew Wilcox
2020-09-12 17:59                                         ` Linus Torvalds
2020-09-12 20:32                                           ` Rogério Brito
2020-09-14  9:33                                             ` Jan Kara
2020-09-12 20:58                                           ` Josh Triplett
2020-09-12 20:59                                           ` James Bottomley
2020-09-12 21:15                                             ` Linus Torvalds [this message]
2020-09-12 22:32                                           ` Matthew Wilcox
2020-09-13  0:40                                           ` Dave Chinner
2020-09-13  2:39                                             ` Linus Torvalds
2020-09-13  3:40                                               ` Matthew Wilcox
2020-09-13 23:45                                               ` Dave Chinner
2020-09-14  3:31                                                 ` Matthew Wilcox
2020-09-15 14:28                                                   ` Chris Mason
2020-09-15  9:27                                                 ` Jan Kara
2020-09-13  3:18                                             ` Matthew Wilcox

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='CAHk-=wjTpK7=5Sd8i9D_FTtRSerMUP3ux4qEL+fZdDYmfLrBAg@mail.gmail.com' \
    --to=torvalds@linux-foundation.org \
    --cc=James.Bottomley@hansenpartnership.com \
    --cc=Michael@michaellarabel.com \
    --cc=adilger.kernel@dilger.ca \
    --cc=amir73il@gmail.com \
    --cc=hughd@google.com \
    --cc=jack@suse.cz \
    --cc=linux-ext4@vger.kernel.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=tytso@google.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.