33 #define PS_VERSION "1.02"
35 #include <linux/sched.h>
40 static void (* ps_continuation)(
void);
42 static unsigned long ps_timeout;
43 static int ps_tq_active = 0;
44 static int ps_nice = 0;
50 static void ps_set_intr(
void (*continuation)(
void),
52 int timeout,
int nice)
58 ps_continuation = continuation;
70 spin_unlock_irqrestore(&ps_spinlock,flags);
80 con = ps_continuation;
84 spin_unlock_irqrestore(&ps_spinlock,flags);
87 if (!ps_ready || ps_ready() ||
time_after_eq(jiffies, ps_timeout)) {
88 ps_continuation =
NULL;
89 spin_unlock_irqrestore(&ps_spinlock,flags);
98 spin_unlock_irqrestore(&ps_spinlock,flags);