While poking at the cpu hotplug implementation I had a desire to use wait_event() with schedule_preempt_disabled() and found the rediculous amount of duplication in linux/wait.h.
These patches attempt to cure some of this while also making it 'trivial' to generate new variants. Compile and boot tested on x86_64. Changes since -v3: - added LKML to the CC (D'0h!!) - introduced ___wait_cond_timeout() to avoid double evalutation of 'condition' Changes since -v2: - removed ___wait_cmd_lock_irq(), ___wait_cmd_lock_irq_timo() - renamed ___wait_cmd_test_timeout() to ___wait_test_timeout() - renamed ___wait_cmd_schedule_timeout() to ___wait_sched_timeout() - fixed schedule_timeout() invocations in patch 6; don't restart a schedule_timeout() at the total timeout; rather continue where we left off for a total fixed timeout. - use 'long' return type for ___wait_event() so that timeout values for schedule_timeout() fit. - fix wait_event_interruptible_lock_irq_timeout() and use long return type. --- arch/mips/kernel/rtlx.c | 19 +- include/linux/tty.h | 28 +--- include/linux/wait.h | 268 +++++++++++++--------------------------- net/irda/af_irda.c | 5 net/netfilter/ipvs/ip_vs_sync.c | 7 - 5 files changed, 108 insertions(+), 219 deletions(-) -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

