Index: kernel/generic/src/synch/waitq.c
===================================================================
--- kernel/generic/src/synch/waitq.c	(revision 2afb650952fa50390d07e579422af9f1607b9ad6)
+++ kernel/generic/src/synch/waitq.c	(revision 4039c77090864ee87e13b9865dbfd0a2bcd56c2f)
@@ -208,4 +208,7 @@
 }
 
+#define PARAM_NON_BLOCKING(flags, usec) \
+	(((flags) & SYNCH_FLAGS_NON_BLOCKING) && ((usec) == 0))
+
 /** Sleep until either wakeup, timeout or interruption occurs
  *
@@ -257,4 +260,6 @@
 	ipl_t ipl;
 	int rc;
+
+	ASSERT(!PREEMPTION_DISABLED || PARAM_NON_BLOCKING(flags, usec));
 	
 	ipl = waitq_sleep_prepare(wq);
@@ -344,5 +349,5 @@
 	}
 	else {
-		if ((flags & SYNCH_FLAGS_NON_BLOCKING) && (usec == 0)) {
+		if (PARAM_NON_BLOCKING(flags, usec)) {
 			/* return immediatelly instead of going to sleep */
 			return ESYNCH_WOULD_BLOCK;
