• Ingo Molnar's avatar
    [PATCH] completion API additions · 2feb53c6
    Ingo Molnar authored
    Adds 3 new completion API calls, which are a straightforward extension of
    the current APIs:
    
     int wait_for_completion_interruptible(struct completion *x);
     unsigned long wait_for_completion_timeout(struct completion *x,
                                                       unsigned long timeout);
     unsigned long wait_for_completion_interruptible_timeout(
                            struct completion *x, unsigned long timeout);
    
    This enables the conversion of more semaphore-using code to completions.
    There is code that cannot be converted right now (and is forced to use
    semaphores) because these primitives are missing.  Thomas Gleixner has a
    bunch of patches to make use of them.
    Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
    Tested-by: default avatarThomas Gleixner <tglx@linutronix.de>
    Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
    2feb53c6
sched.c 124 KB