]> err.no Git - linux-2.6/commitdiff
Add schedule_timeout_killable
authorMatthew Wilcox <matthew@wil.cx>
Thu, 6 Dec 2007 16:59:46 +0000 (11:59 -0500)
committerMatthew Wilcox <willy@linux.intel.com>
Thu, 6 Dec 2007 22:40:07 +0000 (17:40 -0500)
Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
include/linux/sched.h
kernel/timer.c

index 95395c143bab84d0f1b5c0b731efc36c005413a6..e4921aad4063d5d0fc23209ed88fe32f12dd78bd 100644 (file)
@@ -314,6 +314,7 @@ extern int in_sched_functions(unsigned long addr);
 #define        MAX_SCHEDULE_TIMEOUT    LONG_MAX
 extern signed long FASTCALL(schedule_timeout(signed long timeout));
 extern signed long schedule_timeout_interruptible(signed long timeout);
+extern signed long schedule_timeout_killable(signed long timeout);
 extern signed long schedule_timeout_uninterruptible(signed long timeout);
 asmlinkage void schedule(void);
 
index a05817c021d62c1f93819ee666f2fc5bdb735f6a..66d7d8bca1a3a5cec5652085d167e1c10bc260da 100644 (file)
@@ -1100,6 +1100,13 @@ signed long __sched schedule_timeout_interruptible(signed long timeout)
 }
 EXPORT_SYMBOL(schedule_timeout_interruptible);
 
+signed long __sched schedule_timeout_killable(signed long timeout)
+{
+       __set_current_state(TASK_KILLABLE);
+       return schedule_timeout(timeout);
+}
+EXPORT_SYMBOL(schedule_timeout_killable);
+
 signed long __sched schedule_timeout_uninterruptible(signed long timeout)
 {
        __set_current_state(TASK_UNINTERRUPTIBLE);