tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: Condition variable change

In article <>,
Andrew Doran  <> wrote:
>The below diff gives each condition variable a private sleep queue. It
>allows the system to scale more gracefully when there are 100s or 1000s of
>of active threads because much less time is spent searching sleep queues.
>With the change kcondvar_t grows from 8 to 12 bytes on 32-bit systems.
>I realise that we are in feature freeze, but propose this change because it
>does not alter any of the underlying principles or surrounding code, or add
>any new interfaces. It just relocates the sleep queue head.

I'd just do it, but can you please move the NOINLINE def in cdefs.h,
and write is as:

#if __GNUC_PREREQ__(3, 0)
#define __noinline              __attribute__((__noinline__))
#define __noinline              /* nothing */


Home | Main Index | Thread Index | Old Index