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

By: Linus Torvalds (torvalds.delete@this.linux-foundation.org), January 4, 2020 2:54 pm
Room: Moderated Discussions
Linus Torvalds (torvalds.delete@this.linux-foundation.org) on January 4, 2020 1:24 pm wrote:
>
> Now, if you didn't get the lock, you might decide that "hey, lots of locks are held only
> for very short times, and I'll try to wait for a very bounded time".

Btw, I do not really suggest you do this unless you have serious numbers that show that it helps on a real-world load (and not just some "lock/unlock" benchmark).

Even a very limited "let's busy-loop" can have serious disadvantages. Doing that "CPU yield" thing ("rep nop" on x86, "yield" instruction on arm64) can trigger the hypervisor to do things in virtualized environments, as can things like doing a cycle counter read to limit the time you wait etc. It might work fine on your machine, but it can cause unexpected behavior elsewhere.

And if you only do a hard busy loop reading the lock value, you might be wasting time, energy and cause unnecessary cache contention. If the loop is limited to a small value, it might have very dubious value, and if you make it longer, the downsides can grow a lot. And the value tuning might be as much about your load as it is about the particular machine you are running on, etc, so you might again be tuning only for your development machine, not any real life situation.

So to a first approximation, start off with that fast-case "trylock/tryunlock" model where you handle the case of absolutely no contention specially yourself. And then fall back to a sleeping real model like futexes immediately after that unless you really know a lot about your workload.

In fact, feel free to skip even that fast case. Yes, it often makes a lot of sense to do a special and simple fast case: in a lot of real-world locking situations you'll hardly ever see any contention at all, and you might be writing a library that is often used in a completely single-threaded manner.

So handling the trivial non-contended locking case with a special fast-case is quite often a very good idea.

But "quite often" doesn't mean "always". Locking might simply either be so rare that it's pointless to have a special fast case in the first place if the fallback isn't actively horrible. Or the lock might be designed to be a resource limiter and the contention case is the expected case because you have a thousand threads that might want to run, but you use the lock as a way to limit them to a much smaller number (ie the GNU make "jobserver" case).

So my suggestion is to basically always start off with just pthread_mutex_lock() or other generic non-spinning locking (std::mutex, whatever you have in your environment).

And if that turns out to have performance problems and you know your behavior, go out and google for somebody that already solved it and wrote a paper about it, and has numbers for a lot of different scenarios. I see that El Presidente already pointed to a report by Waiman Long elsewhere in this thread. Waiman knows what he's doing. He's one of the Linux kernel locking people.

And only after that, and only if you can't for the life of you find something that works for you, and you know that you have very very particular locking behavior (that may be the reason you can't find something that works for you), do you start going down the "let me try to write my own", and start off with the special fast case optimized for your known load, and fall back to something like futexes. But realize that it's a big job, and it will be painful.

And not in a million years will any of those choices hopefully ever include "sched_yield()", although sometimes I might worry about standard libraries (particularly if you're targeting a new architecture or new language environment, so that the standard locking implementation may basically be some stub function - it generally will take many years for this kind of infrastructure to mature).

Linus
< 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?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?