No nuances, just buggy code (was: related to Spinlock implementation and the Linux Scheduler)

By: Malte Skarupke (malteskarupke.delete@this.web.de), January 4, 2020 11:22 am
Room: Moderated Discussions
Linus Torvalds (torvalds.delete@this.linux-foundation.org) on January 3, 2020 6:05 pm wrote:
> The whole post seems to be just wrong, and is measuring something completely
> different than what the author thinks and claims it is measuring.
>
> First off, spinlocks can only be used if you actually know you're not being scheduled
> while using them. But the blog post author seems to be implementing his own spinlocks
> in user space with no regard for whether the lock user might be scheduled or not. And
> the code used for the claimed "lock not held" timing is complete garbage.

Hi, original author here. First of all, I'd like to point out that I actually think we mostly agree on the spinlock vs mutex discussion. My original point of this was to try to find benchmarks that show that mutexes should be preferred over spinlocks. It then accidentally turned into an investigation into the Linux scheduler, but what can I do? If the data leads that way, I have to follow. I just had to investigate giant outliers like that.

So I think we agree about the guidance on spinlock vs mutex. (so I'll skip on responding in detail to most of your text) The problem is that people use spinlocks. In video games they're quite common. Why is that? Because most simple benchmarks will show that spinlocks are better. I linked to three of those benchmarks near the top of my blog post. So it's nice to say "you shouldn't use spinlocks" but good programmers will verify those claims, and if their benchmarks show otherwise, they'll use spinlocks. Before my blog post I had a very hard time finding guidance that actually backed up the claim "you shouldn't use spinlocks" with benchmarks. Part of my goal was to provide that.

I think the part where we disagree is in whether I showed that the Linux scheduler is problematic or not. Is this a valid benchmark?

> So now you still hold the lock, but you got scheduled away from the CPU, because you had
> used up your time slice. The "current time" you read is basically now stale, and has nothing
> to do with the (future) time when you are actually going to release the lock.

Right so this is a hard thing to measure, but this is the best thing I could come up with, so give me a chance to defend it: There are three cases where a large amount of time can pass between the "end time" and the "start time":
1. if the lock actually sits idle and nobody takes it.
2. (the one you're mentioning) the thread holding the lock takes a timestamp and then doesn't actually unlock the lock before being scheduled away.
3. a thread takes the lock and gets scheduled away before taking the initial timestamp.

To reason about whether this distorts the measurements or not, let's talk about the ticket_spinlock, because in that one the behavior is exactly defined. There is potentially a thread holding the lock, (let's call it C for "current") and there is always one thread who is next in line. (let's call it N for "next") All the other threads will call _mm_pause() and yield() in a loop.

I think we both agree that case 1 was the thing I was trying to measure so if that happens we're fine and the measurements are correct. In that case the scheduler for some reason decides to not run thread N even though all other threads are calling yield().

In case 2 thread C is not being run by the scheduler. All fifteen other threads are calling yield(). Thread N is also calling yield(), and does not look special in this situation.

Case 3 is the same situation, thread C is still not being run even though fifteen other threads are calling yield().

Once we break it down like that we realize that actually these are all the same case. In all of these cases one thread can run, all others are calling yield(). The only difference between the case that I wanted to measure and the other two accidental cases is whether the scheduler is incorrectly not running thread C or incorrectly not running thread N. In either case all other fifteen threads are just calling yield().

So your claim is that it's a problem that I try to measure how long it takes for thread N to run even though I might accidentally be measuring how long it takes for thread C to run. But I claim that that's fine because these are all equally problematic. One thread could run, all other threads are yielding, yet that one thread is not running. And we don't care whether the thread that could run is thread N or thread C.

Of course I might also be measuring any combination of the above, like maybe case 2 turns into case 1, and potentially we even run into case 3 at the same time when we get a really bad interleaving and a really big outlier. But I think any combination is fair game when comparing schedulers, because I'm measuring the same thing on all schedulers.


If we think about it like this, it's really really bad that this measurement can take multiple milliseconds. It's not something I have ever seen before. My previous experience was on Windows, Xbox One (which uses a modified version of Windows) and Playstation 4 (which uses a modified version of FreeBSD) and none of them would ever show anything like this. If all threads but one are yielding, that one thread is definitely going to run. And no way would it take a millisecond for that to happen. (of course it usually doesn't take that long on Linux either, but if the outliers are too big, we really care about them)

Thanks for responding, I really have a lot of admiration for you and your work, (and I would have wished that our first conversation wasn't this negative... but I can't change what I found)

Malte
< Previous Post in ThreadNext Post in Thread >
TopicPosted ByDate
Nuances related to Spinlock implementation and the Linux SchedulerBeastian2020/01/03 11:46 AM
  Nuances related to Spinlock implementation and the Linux SchedulerMontaray Jack2020/01/03 12:14 PM
    Nuances related to Spinlock implementation and the Linux SchedulerMontaray Jack2020/01/03 12:49 PM
  No nuances, just buggy code (was: related to Spinlock implementation and the Linux Scheduler)Linus Torvalds2020/01/03 06:05 PM
    No nuances, just buggy code (was: related to Spinlock implementation and the Linux Scheduler)Beastian2020/01/04 11:03 AM
    No nuances, just buggy code (was: related to Spinlock implementation and the Linux Scheduler)Malte Skarupke2020/01/04 11:22 AM
      No nuances, just buggy code (was: related to Spinlock implementation and the Linux Scheduler)Linus Torvalds2020/01/04 12:31 PM
        No nuances, just buggy code (was: related to Spinlock implementation and the Linux Scheduler)dmcq2020/01/05 06:33 AM
        No nuances, just buggy code (was: related to Spinlock implementation and the Linux Scheduler)smeuletz2020/01/06 01:05 AM
          Do not blame others for your unfinished jobsmeuletz2020/01/06 01:08 AM
            Where did all the experts come from? Did Linus get linked? (NT)anon2020/01/06 03:27 AM
              PhoronixGabriele Svelto2020/01/06 04:04 AM
                PhoronixSalvatore De Dominicis2020/01/06 06:59 AM
            Do not blame anyone. Please give polite, constructive criticismChester2020/01/06 08:17 AM
              Do not blame anyone. Please give polite, constructive criticismsmeuletz2020/01/06 09:11 AM
                Do not blame anyone. Please give polite, constructive criticismChester2020/01/06 09:54 AM
                  Do not blame anyone. Please give polite, constructive criticismsmeuletz2020/01/06 10:33 AM
                    Do not blame anyone. Please give polite, constructive criticismLinus Torvalds2020/01/06 11:58 AM
                      Do not blame anyone. Please give polite, constructive criticismGionatan Danti2020/01/06 12:13 PM
                        Do not blame anyone. Please give polite, constructive criticismLinus Torvalds2020/01/06 12:28 PM
                          Do not blame anyone. Please give polite, constructive criticismGionatan Danti2020/01/06 12:52 PM
                          Do not blame anyone. Please give polite, constructive criticismJohn Scott2020/01/10 07:48 AM
                          Do not blame anyone. Please give polite, constructive criticismsupernovas2020/01/10 09:01 AM
                            Do not blame anyone. Please give polite, constructive criticismLinus Torvalds2020/01/10 11:45 AM
                      Do not blame anyone. Please give polite, constructive criticismsmeuletz2020/01/07 03:07 AM
                        Do not blame anyone. Please give polite, constructive criticismSimon Farnsworth2020/01/07 12:40 PM
                        Do not blame anyone. Please give polite, constructive criticismEtienne2020/01/08 01:08 AM
                          Do not blame anyone. Please give polite, constructive criticismsmeuletz2020/01/08 01:18 AM
                            Do not blame anyone. Please give polite, constructive criticismMichael S2020/01/08 01:56 AM
                      Not deprecating irrelevant API: sched_yield() on quantum computers?smeuletz2020/01/07 03:34 AM
                      Do not blame anyone. Please give polite, constructive criticismmagicalgoat2020/01/09 04:58 PM
                        Do not blame anyone. Please give polite, constructive criticismLinus Torvalds2020/01/09 09:37 PM
                          Do not blame anyone. Please give polite, constructive criticismAnon32020/01/10 03:40 PM
                  Do not blame anyone. Please give polite, constructive criticismrwessel2020/01/06 09:04 PM
                Do not blame anyone. Please give polite, constructive criticismLinus Torvalds2020/01/06 11:11 AM
                  Do not blame anyone. Please give polite, constructive criticismGabriele Svelto2020/01/06 01:36 PM
        No nuances, just buggy code (was: related to Spinlock implementation and the Linux Scheduler)Howard Chu2020/01/09 10:39 PM
          No nuances, just buggy code (was: related to Spinlock implementation and the Linux Scheduler)Linus Torvalds2020/01/10 11:30 AM
      No nuances, just buggy code (was: related to Spinlock implementation and the Linux Scheduler)president ltd2020/01/04 01:44 PM
    No nuances, just buggy code (was: related to Spinlock implementation and the Linux Scheduler)Jörn Engel2020/01/04 11:34 AM
      No nuances, just buggy code (was: related to Spinlock implementation and the Linux Scheduler)Emil Briggs2020/01/04 12:13 PM
        No nuances, just buggy code (was: related to Spinlock implementation and the Linux Scheduler)Jörn Engel2020/01/04 12:46 PM
      No nuances, just buggy code (was: related to Spinlock implementation and the Linux Scheduler)Linus Torvalds2020/01/04 01:24 PM
        No nuances, just buggy code (was: related to Spinlock implementation and the Linux Scheduler)Linus Torvalds2020/01/04 02:54 PM
          No nuances, just buggy code (was: related to Spinlock implementation and the Linux Scheduler)Jörn Engel2020/01/05 09:21 AM
            No nuances, just buggy code (was: related to Spinlock implementation and the Linux Scheduler)Linus Torvalds2020/01/05 11:42 AM
              FUTEX_LOCK_PI performanceJörn Engel2020/01/05 01:45 PM
                FUTEX_LOCK_PI performanceLinus Torvalds2020/01/05 03:30 PM
                  FUTEX_LOCK_PI performanceJörn Engel2020/01/05 06:03 PM
                    FUTEX_LOCK_PI performanceRichardC2020/01/06 06:11 AM
                      FUTEX_LOCK_PI performanceLinus Torvalds2020/01/06 12:11 PM
                  FUTEX_LOCK_PI performanceGabriele Svelto2020/01/06 02:20 AM
                    FUTEX_LOCK_PI performancexilun2020/01/06 04:19 PM
                    FUTEX_LOCK_PI performanceKonrad Schwarz2020/01/13 03:36 AM
                      FUTEX_LOCK_PI performanceGabriele Svelto2020/01/13 03:53 AM
                      FUTEX_LOCK_PI performanceSimon Farnsworth2020/01/13 04:36 AM
                      FUTEX_LOCK_PI performancerwessel2020/01/13 05:22 AM
    No nuances, just buggy code (was: related to Spinlock implementation and the Linux Scheduler)rainstar2020/01/04 09:58 PM
      No nuances, just buggy code (was: related to Spinlock implementation and the Linux Scheduler)Charles Ellis2020/01/05 03:00 AM
        No nuances, just buggy code (was: related to Spinlock implementation and the Linux Scheduler)Richard2020/01/05 08:58 AM
          It's hard to separateMichael S2020/01/05 10:17 AM
            It's hard to separaterainstared2020/01/06 12:52 AM
              It's hard to separateDavid Kanter2020/01/08 08:27 AM
                It's hard to separateAnon2020/01/08 08:37 PM
                  It's hard to separatenone2020/01/08 10:50 PM
                    It's hard to separateAnon2020/01/09 12:41 AM
                      It's hard to separatenone2020/01/09 02:54 AM
                        It's hard to separategallier22020/01/09 03:19 AM
                          It's hard to separateAnon2020/01/09 04:12 AM
                            It's hard to separateAdrian2020/01/09 04:24 AM
                              It's hard to separategallier22020/01/09 04:58 AM
                                It's hard to separateAdrian2020/01/09 06:09 AM
                            It's hard to separategallier22020/01/09 04:42 AM
                        It's hard to separateAdrian2020/01/09 03:41 AM
                        It's hard to separateAnon2020/01/09 04:24 AM
                          It's hard to separategallier22020/01/09 05:07 AM
                          It's hard to separateDavid Hess2020/01/09 08:27 AM
                            It's hard to separateAdrian2020/01/09 09:15 AM
                              It's hard to separateDavid Hess2020/01/09 09:45 AM
                                It's hard to separateAnon2020/01/09 10:15 AM
                                  It's hard to separateAdrian2020/01/09 10:51 AM
                                    It's hard to separateBrett2020/01/09 12:49 PM
                                      Zilog Z8000Brett2020/01/10 09:53 PM
                                        Zilog Z8000David Hess2020/01/11 06:06 AM
                                          Zilog Z8000Adrian2020/01/11 06:29 AM
                                            Zilog Z8000David Hess2020/01/11 07:45 AM
                                              Zilog Z8000Ricardo B2020/01/11 07:04 PM
                                                Zilog Z8000Ronald Maas2020/01/12 09:47 AM
                                                  Zilog Z8000Ricardo B2020/01/12 11:15 AM
                                                    Zilog Z8000Anon2020/01/12 10:34 PM
                                                      Zilog Z8000Jose2020/01/13 12:23 AM
                                                        Zilog Z8000gallier22020/01/13 12:42 AM
                                                          Zilog Z8000Jose2020/01/13 09:04 PM
                                                            Zilog Z8000rwessel2020/01/13 09:40 PM
                                                              Zilog Z8000David Hess2020/01/13 10:35 PM
                                                                Zilog Z8000Simon Farnsworth2020/01/14 02:56 AM
                                                                  Zilog Z8000Michael S2020/01/14 03:09 AM
                                                                    Zilog Z8000Simon Farnsworth2020/01/14 04:06 AM
                                                                      Zilog Z8000David Hess2020/01/14 09:22 AM
                                                                  Zilog Z8000David Hess2020/01/14 09:15 AM
                                                                Zilog Z8000rwessel2020/01/14 03:12 PM
                                                                  286 16 bit I/OTim McCaffrey2020/01/15 10:25 AM
                                                                    286 16 bit I/ODavid Hess2020/01/15 08:17 PM
                                                      Zilog Z8000Ricardo B2020/01/13 10:52 AM
                                                        Zilog Z8000Anon2020/01/13 11:25 AM
                                                          Zilog Z8000David Hess2020/01/13 05:38 PM
                                                            Zilog Z8000rwessel2020/01/13 06:16 PM
                                                              Zilog Z8000David Hess2020/01/13 06:47 PM
                                                          Zilog Z8000someone2020/01/14 06:54 AM
                                                            Zilog Z8000Anon2020/01/14 07:31 AM
                                                          Zilog Z8000Ricardo B2020/01/14 05:29 PM
                                                  Zilog Z8000Simon Farnsworth2020/01/15 02:26 AM
                                                    Zilog Z8000Tim McCaffrey2020/01/15 10:27 AM
                                                      Zilog Z8000Simon Farnsworth2020/01/15 01:32 PM
                                                    Zilog Z8000Ricardo B2020/01/15 02:47 PM
                                                      Zilog Z8000Anon2020/01/15 03:08 PM
                                                        Zilog Z8000Ricardo B2020/01/15 04:16 PM
                                                          Zilog Z8000Anon2020/01/15 04:31 PM
                                                            Zilog Z8000Ricardo B2020/01/15 05:46 PM
                                                              Zilog Z8000Anon2020/01/15 06:04 PM
                                                                Zilog Z8000David Hess2020/01/15 08:53 PM
                                                                Zilog Z8000Ricardo B2020/01/16 06:27 PM
                                                                  Zilog Z8000Anon2020/01/16 07:33 PM
                                                                    Zilog Z8000Ronald Maas2020/01/16 11:05 PM
                                                                      Zilog Z8000Anon2020/01/17 07:15 AM
                                                                    Zilog Z8000Ricardo B2020/01/17 01:59 PM
                                                                      Zilog Z8000Anon2020/01/17 06:40 PM
                                                                        Zilog Z8000Ricardo B2020/01/18 07:42 AM
                                                                          Zilog Z8000gallier22020/01/19 07:02 AM
                                                                    Zilog Z8000David Hess2020/01/18 06:12 AM
                                                            Zilog Z8000David Hess2020/01/15 08:49 PM
                                                          Zilog Z8000gallier22020/01/15 11:57 PM
                                                      Zilog Z8000Simon Farnsworth2020/01/16 01:30 AM
                                                        IBM PC successEtienne2020/01/16 05:42 AM
                                                        Zilog Z8000Ricardo B2020/01/16 06:32 PM
                                                          Zilog Z8000Brett2020/01/17 12:38 AM
                                                            Zilog Z8000David Hess2020/01/18 06:28 AM
                                                          Zilog Z8000David Hess2020/01/18 06:22 AM
                                                    Zilog Z8000David Hess2020/01/15 08:30 PM
                                            Zilog Z8000Maxwell2020/01/11 08:07 AM
                                              Zilog Z8000David Hess2020/01/11 08:40 AM
                                                Zilog Z8000Maxwell2020/01/11 09:08 AM
                                                  Zilog Z8000Ricardo B2020/01/11 07:42 PM
                                                    8086 does NOT have those addressing modesDevin2020/01/12 01:13 PM
                                                      8086 does NOT have those addressing modesRicardo B2020/01/12 05:46 PM
                                                        8086 does NOT have those addressing modesAnon2020/01/13 04:10 AM
                                                          8086 does NOT have those addressing modesgallier22020/01/13 05:07 AM
                                                            8086 does NOT have those addressing modesAnon2020/01/13 06:09 AM
                                                              8086 does NOT have those addressing modesRicardo B2020/01/13 10:48 AM
                                                          8086 does NOT have those addressing modesMichael S2020/01/13 06:40 AM
                                                            Zilog Z8000Ronald Maas2020/01/13 08:44 AM
                                                              Zilog Z8000Anon2020/01/13 03:32 PM
                                                          8086 does NOT have those addressing modesRicardo B2020/01/13 10:24 AM
                                                            8086 does NOT have those addressing modesrwessel2020/01/13 02:59 PM
                                                              8086 does NOT have those addressing modesDavid Hess2020/01/13 06:12 PM
                                                                8086 does NOT have those addressing modesrwessel2020/01/13 06:28 PM
                                                                  8086 does NOT have those addressing modesDavid Hess2020/01/13 06:51 PM
                                                          8086 does NOT have those addressing modesDavid Hess2020/01/13 05:55 PM
                                            Zilog Z8000rwessel2020/01/11 12:26 PM
                                              Zilog Z8000Brett2020/01/11 02:16 PM
                                                Zilog Z8000rwessel2020/01/11 07:20 PM
                                                  Zilog Z8000Brett2020/01/12 12:02 PM
                                                    Zilog Z8000rwessel2020/01/12 09:06 PM
                                                      Zilog Z8000Brett2020/01/12 10:02 PM
                                                    Zilog Z8000James2020/01/13 05:12 AM
                                              Zilog Z8000Adrian2020/01/11 11:38 PM
                                                PDP-11Michael S2020/01/12 01:33 AM
                                                Zilog Z8000rwessel2020/01/12 06:01 AM
                                              Zilog Z8000Ronald Maas2020/01/12 10:03 AM
                                            Zilog Z8000Konrad Schwarz2020/01/13 03:49 AM
                                              Zilog Z8000Adrian2020/01/13 11:38 PM
                                                Zilog Z8000konrad.schwarz2020/01/15 04:50 AM
                                                  Zilog Z8000Adrian2020/01/15 10:24 PM
                                    It's hard to separateDavid Hess2020/01/11 06:08 AM
                                  It's hard to separateDavid Hess2020/01/11 06:11 AM
                                It's hard to separateAdrian2020/01/09 11:16 AM
                                  It's hard to separateDavid Hess2020/01/11 06:17 AM
                                It's hard to separategallier22020/01/10 12:11 AM
                                  It's hard to separatenone2020/01/10 01:58 AM
                        It's hard to separaterwessel2020/01/09 07:00 AM
                        It's hard to separateDavid Hess2020/01/09 08:10 AM
                          It's hard to separaterwessel2020/01/09 08:51 AM
                  It's hard to separateAdrian2020/01/08 10:58 PM
                    It's hard to separaterwessel2020/01/09 06:31 AM
                      It's hard to separateAdrian2020/01/09 06:44 AM
                    It's hard to separateDavid Hess2020/01/09 08:37 AM
                      It's hard to separatenone2020/01/09 09:34 AM
                  Are segments so bad?Paul A. Clayton2020/01/09 02:15 PM
                    Yes, they are terrible (NT)Anon2020/01/09 02:20 PM
                    Are segments so bad?Adrian2020/01/09 11:49 PM
                      Are segments so bad?Etienne2020/01/10 01:28 AM
                        Are segments so bad?gallier22020/01/10 01:37 AM
                          Are segments so bad?Adrian2020/01/10 02:19 AM
                            Are segments so bad?Adrian2020/01/10 03:27 AM
                              Are segments so bad?Etienne2020/01/10 03:41 AM
                        Are segments so bad?Adrian2020/01/10 02:05 AM
                          Are segments so bad?gallier22020/01/10 02:13 AM
                      Are segments so bad?Anon32020/01/10 10:37 AM
                        Are segments so bad?Adrian2020/01/10 10:47 AM
                          Are segments so bad?Brendan2020/01/11 12:43 AM
                      Are segments so bad?Anon2020/01/10 05:51 PM
                        Are segments so bad?Adrian2020/01/11 12:05 AM
                          Are segments so bad?Jukka Larja2020/01/11 07:20 AM
                            Are segments so bad?Brendan2020/01/11 09:14 AM
                              Are segments so bad?Jukka Larja2020/01/11 08:15 PM
                                Are segments so bad?Brendan2020/01/11 10:15 PM
                                  Are segments so bad?Jukka Larja2020/01/12 03:18 AM
                                  Are segments so bad?anon2020/01/12 11:30 AM
                                    Are segments so bad?Brendan2020/01/12 09:19 PM
                                      the world sucks worse than you're aware ofMichael S2020/01/13 12:50 AM
                                        the world sucks worse than you're aware ofBrendan2020/01/13 02:56 AM
                                        the world sucks worse than you're aware ofGabriele Svelto2020/01/13 03:46 AM
                                      Are segments so bad?Jukka Larja2020/01/13 06:41 AM
                                        Are segments so bad?Brendan2020/01/13 07:21 AM
                                          Are segments so bad?Jukka Larja2020/01/13 08:43 AM
                                            Are segments so bad?Brendan2020/01/13 12:02 PM
                                              Are segments so bad?Anne O. Nymous2020/01/13 12:22 PM
                                                Are segments so bad?Brendan2020/01/13 01:50 PM
                                                  actor of around 200?Michael S2020/01/14 02:58 AM
                                                  Not overcomitting leads to more OOMs, not lessGabriele Svelto2020/01/14 11:50 AM
                                                    Not overcomitting leads to more OOMs, not lessBrendan2020/01/14 12:40 PM
                                                      Not overcomitting leads to more OOMs, not lessGabriele Svelto2020/01/15 02:17 AM
                                                        Not overcomitting leads to more OOMs, not lessAnon2020/01/15 03:43 AM
                                                          Not overcomitting leads to more OOMs, not lessGabriele Svelto2020/01/15 04:09 AM
                                                            Not overcomitting leads to more OOMs, not lessAnon2020/01/15 04:16 AM
                                                              Not overcomitting leads to more OOMs, not lessGabriele Svelto2020/01/15 05:58 AM
                                                                Not overcomitting leads to more OOMs, not lessAnon2020/01/15 08:08 AM
                                                                  Not overcomitting leads to more OOMs, not lessGabriele Svelto2020/01/16 03:05 AM
                                                        Not overcomitting leads to more OOMs, not lessMichael S2020/01/15 03:48 AM
                                                          Not overcomitting leads to more OOMs, not lessGabriele Svelto2020/01/15 04:10 AM
                                                            Not overcomitting leads to more OOMs, not lessMichael S2020/01/15 07:13 AM
                                                              Not overcomitting leads to more OOMs, not lessJukka Larja2020/01/15 07:46 AM
                                                        Not overcomitting leads to more OOMs, not lessJukka Larja2020/01/15 05:08 AM
                                                          Thanks for the info (NT)Gabriele Svelto2020/01/15 06:00 AM
                                                      Not overcomitting leads to more OOMs, not lessLinus Torvalds2020/01/15 11:30 AM
                                                        OOM killer complainsAnon2020/01/15 11:44 AM
                                                          OOM killer complainsanon2020/01/15 03:26 PM
                                                        Not overcomitting leads to more OOMs, not lessBrendan2020/01/16 06:26 AM
                                                          Not overcomitting leads to more OOMs, not lessLinus Torvalds2020/01/16 09:17 AM
                                                            Not overcomitting leads to more OOMs, not lessLinus Torvalds2020/01/16 09:48 AM
                                                              Not overcomitting leads to more OOMs, not lessDoug S2020/01/16 02:41 PM
                                                                Not overcomitting leads to more OOMs, not lessDoug S2020/01/16 02:44 PM
                                                Are segments so bad?rwessel2020/01/13 03:11 PM
                                              Are segments so bad?Jukka Larja2020/01/14 06:37 AM
                                                Are segments so bad?Brendan2020/01/14 07:48 AM
                                                  Are segments so bad?Jukka Larja2020/01/14 10:13 AM
                                                    Are segments so bad?Brendan2020/01/14 01:30 PM
                                                      Are segments so bad?Brett2020/01/14 09:13 PM
                                                      Are segments so bad?Jukka Larja2020/01/15 06:04 AM
                                                  Are segments so bad?Gabriele Svelto2020/01/15 02:35 AM
                                            Specifying cost of dropping pagesPaul A. Clayton2020/01/13 02:00 PM
                                              Specifying cost of dropping pagesrwessel2020/01/13 03:19 PM
                                                Specifying cost of dropping pagesGabriele Svelto2020/01/15 02:23 AM
                                          Are segments so bad?anon2020/01/14 01:15 AM
                                            Are segments so bad?Brendan2020/01/14 05:13 AM
                                          Are segments so bad?Gabriele Svelto2020/01/14 11:57 AM
                                            Are segments so bad?Brendan2020/01/14 01:58 PM
                                              Are segments so bad?Gabriele Svelto2020/01/15 02:33 AM
                                                Are segments so bad?Anon2020/01/15 04:24 AM
                                                  Are segments so bad?Jukka Larja2020/01/15 05:20 AM
                                                Are segments so bad?Etienne2020/01/15 04:56 AM
                                                  Are segments so bad?Jukka Larja2020/01/15 07:53 AM
                                                    Are segments so bad?Gabriele Svelto2020/01/16 05:12 AM
                                                      Are segments so bad?Jukka Larja2020/01/16 09:56 AM
                                                Are segments so bad?Brendan2020/01/15 05:20 AM
                                                  Are segments so bad?Gabriele Svelto2020/01/15 05:56 AM
                                                    Are segments so bad?Brendan2020/01/16 06:16 AM
                                                      Are segments so bad?Jukka Larja2020/01/16 10:08 AM
                                                        Are segments so bad?Brendan2020/01/17 12:52 PM
                                                          Are segments so bad?Jukka Larja2020/01/17 09:08 PM
                                                            Are segments so bad?Brendan2020/01/18 11:40 AM
                                                              Are segments so bad?Jukka Larja2020/01/18 09:13 PM
                                                                Are segments so bad?Brendan2020/01/19 11:25 AM
                                                                  Are segments so bad?Brett2020/01/19 02:18 PM
                                                                    Are segments so bad?Brett2020/01/19 02:34 PM
                                                                  Are segments so bad?Gabriele Svelto2020/01/19 11:57 PM
                                                                  Are segments so bad?Jukka Larja2020/01/20 04:54 AM
                                                                    Are segments so bad?Brendan2020/01/20 11:43 AM
                                                                      Are segments so bad?Jukka Larja2020/01/21 06:01 AM
                                                                        Are segments so bad?Brendan2020/01/21 05:04 PM
                                                                          Are segments so bad?Jukka Larja2020/01/22 06:30 AM
                                                                            Are segments so bad?Brendan2020/01/22 02:56 PM
                                                                              Are segments so bad?Jukka Larja2020/01/23 07:44 AM
                                                      Are segments so bad?rwessel2020/01/16 02:06 PM
                                                      Are segments so bad?Gabriele Svelto2020/01/16 02:13 PM
                                                        Are segments so bad?Brendan2020/01/17 12:51 PM
                                                          Are segments so bad?Gabriele Svelto2020/01/17 02:18 PM
                                                            Are segments so bad?Anon2020/01/17 07:01 PM
                                                              Are segments so bad?Gabriele Svelto2020/01/20 12:06 AM
                                                            Are segments so bad?Brendan2020/01/18 02:15 PM
                                                              Are segments so bad?Gabriele Svelto2020/01/19 11:55 PM
                                                                Are segments so bad?Michael S2020/01/20 04:30 AM
                                                                  Are segments so bad?Gabriele Svelto2020/01/20 07:02 AM
                                                                    Are segments so bad?Jukka Larja2020/01/20 07:41 AM
                                                                    Are segments so bad?Michael S2020/01/20 07:45 AM
                                                                      Are segments so bad?Gabriele Svelto2020/01/20 08:36 AM
                                                                Are segments so bad?Brendan2020/01/20 10:04 AM
                                                                  Are segments so bad?Michael S2020/01/20 12:22 PM
                                                                    Are segments so bad?Brendan2020/01/20 01:38 PM
                                                                      Are segments so bad?Simon Farnsworth2020/01/20 02:40 PM
                                                                        Are segments so bad?Anon2020/01/20 03:35 PM
                                                                          Are segments so bad?Simon Farnsworth2020/01/20 04:30 PM
                                                                      Are segments so bad?Michael S2020/01/20 04:20 PM
                                                                  Are segments so bad?Gabriele Svelto2020/01/21 04:08 AM
                                                                    Are segments so bad?Brendan2020/01/21 05:07 PM
                                                                      Are segments so bad?Gabriele Svelto2020/01/22 12:53 AM
                                                                        Are segments so bad?Brendan2020/01/22 03:32 AM
                                                                          Are segments so bad?Jukka Larja2020/01/22 06:12 AM
                                                                            Are segments so bad?Brendan2020/01/22 03:28 PM
                                                                              Are segments so bad?Jukka Larja2020/01/23 06:36 AM
                                                                                Are segments so bad?Brendan2020/01/24 06:27 PM
                                                                                  Are segments so bad?Jukka Larja2020/01/24 09:42 PM
                                                                                    Are segments so bad?Brendan2020/01/25 01:46 AM
                                                                                      Are segments so bad?Jukka Larja2020/01/25 07:29 AM
                                                                                        Are segments so bad?Brendan2020/01/26 10:17 PM
                                                                                          Are segments so bad?Jukka Larja2020/01/27 06:55 AM
                                                                                            Are segments so bad?Gabriele Svelto2020/01/27 03:33 PM
                                                                                              Are segments so bad?Jukka Larja2020/01/28 05:28 AM
                                                                                      Are segments so bad?gallier22020/01/27 02:58 AM
                                                                                        Are segments so bad?Jukka Larja2020/01/27 05:19 AM
                                                                                  Are segments so bad?Anne O. Nymous2020/01/25 02:23 AM
                                                                            Are segments so bad?Anon2020/01/22 04:52 PM
                                                                              Are segments so bad?Anne O. Nymous2020/01/23 12:24 AM
                                                                                Are segments so bad?Anon2020/01/23 04:24 PM
                                                                                  Are segments so bad?Anne O. Nymous2020/01/23 11:43 PM
                                                                                    Are segments so bad?Anon2020/01/24 03:04 AM
                                                                                      Are segments so bad?Etienne2020/01/24 05:10 AM
                                                                              Are segments so bad?Gabriele Svelto2020/01/23 12:48 AM
                                                                                Are segments so bad?Michael S2020/01/23 02:48 AM
                                                                                Are segments so bad?Jukka Larja2020/01/23 06:38 AM
                                                                                  Are segments so bad?Gabriele Svelto2020/01/23 12:29 PM
                                                                                    Are segments so bad?Anon2020/01/23 05:08 PM
                                                                                      Are segments so bad?Jukka Larja2020/01/24 08:51 PM
                                                                                Are segments so bad?Anon2020/01/23 05:02 PM
                                                                                  Are segments so bad?Gabriele Svelto2020/01/24 02:57 AM
                                                                                    Are segments so bad?Anon2020/01/24 03:17 AM
                                                                                      Are segments so bad?Gabriele Svelto2020/01/24 08:23 AM
                                                                                  Are segments so bad?Jukka Larja2020/01/24 09:10 PM
                                                          Are segments so bad?Jukka Larja2020/01/17 09:26 PM
                                Are segments so bad?Anne O. Nymous2020/01/12 03:18 AM
                                  Are segments so bad?Jukka Larja2020/01/12 07:41 AM
                            Are segments so bad?rwessel2020/01/11 12:31 PM
                          Are segments so bad?Anne O. Nymous2020/01/11 07:22 AM
                      Are segments so bad?Ricardo B2020/01/11 07:01 PM
                        Are segments so bad?Adrian2020/01/11 11:18 PM
                          Are segments so bad?Michael S2020/01/12 01:43 AM
                            Are segments so bad?Adrian2020/01/12 03:35 AM
                          Are segments so bad?Ricardo B2020/01/12 11:04 AM
                            Are segments so bad?Anon32020/01/12 04:52 PM
                            Are segments so bad?Brendan2020/01/12 08:58 PM
                      Are segments so bad?Paul A. Clayton2020/01/13 08:11 AM
        No nuances, just buggy code (was: related to Spinlock implementation and the Linux Scheduler)rainstared2020/01/06 12:43 AM
          No nuances, just buggy code (was: related to Spinlock implementation and the Linux Scheduler)Foo_2020/01/06 04:33 AM
            No nuances, just buggy code (was: related to Spinlock implementation and the Linux Scheduler)dmcq2020/01/06 05:03 AM
            changes in contextCarlie Coats2020/01/09 08:06 AM
      No nuances, just buggy code (was: related to Spinlock implementation and the Linux Scheduler)rainstar2020/01/09 09:16 PM
        No nuances, just buggy code (was: related to Spinlock implementation and the Linux Scheduler)Montaray Jack2020/01/09 10:11 PM
    Suggested reading for the authoranon2020/01/04 10:16 PM
      Suggested reading for the authorab2020/01/05 04:15 AM
        Looking at the other side (frequency scaling)Chester2020/01/06 09:19 AM
          Looking at the other side (frequency scaling)Foo_2020/01/06 10:00 AM
          Why spinlocks were usedFoo_2020/01/06 10:06 AM
            Why spinlocks were usedJukka Larja2020/01/06 11:59 AM
            Why spinlocks were usedSimon Cooke2020/01/06 02:16 PM
            Why spinlocks were usedRizzo2020/01/07 12:18 AM
          Looking at the other side (frequency scaling)ab2020/01/07 12:14 AM
    Cross-platform codeGian-Carlo Pascutto2020/01/06 07:00 AM
      Cross-platform codeMichael S2020/01/06 08:11 AM
        Cross-platform codeGian-Carlo Pascutto2020/01/06 11:33 AM
          Cross-platform codeMichael S2020/01/06 12:59 PM
            Cross-platform codeNksingh2020/01/06 11:09 PM
              Cross-platform codeMichael S2020/01/07 01:00 AM
              SRW lock implementationMichael S2020/01/07 01:35 AM
                SRW lock implementationNksingh2020/01/09 01:17 PM
                  broken URL in Linux source codeMichael S2020/01/14 12:56 AM
                    broken URL in Linux source codeTravis Downs2020/01/14 09:14 AM
                      broken URL in Linux source codeMichael S2020/01/14 09:48 AM
                        broken URL in Linux source codeTravis Downs2020/01/14 03:43 PM
                  SRW lock implementation - url brokenMichael S2020/01/14 02:07 AM
                    SRW lock implementation - url brokenTravis Downs2020/01/14 10:06 AM
                      SRW lock implementation - url brokengpderetta2020/01/15 03:28 AM
                        SRW lock implementation - url brokenTravis Downs2020/01/15 10:16 AM
                      SRW lock implementation - url brokenLinus Torvalds2020/01/15 10:20 AM
                        SRW lock implementation - url brokenTravis Downs2020/01/15 10:35 AM
                          SRW lock implementation - url brokenLinus Torvalds2020/01/16 10:24 AM
      Cross-platform codeLinus Torvalds2020/01/06 12:57 PM
Reply to this Topic
Name:
Email:
Topic:
Body: No Text
How do you spell purple?