* Qiang Huang | 2014-04-30 12:02:09 [+0800]: >--- a/include/linux/interrupt.h >+++ b/include/linux/interrupt.h >@@ -514,9 +514,8 @@ extern void __send_remote_softirq(struct call_single_data *cp, int cpu, > to be executed on some cpu at least once after this. > * If the tasklet is already scheduled, but its execution is still not > started, it will be executed only once. >- * If this tasklet is already running on another CPU, it is rescheduled >- for later. This is true >- * Schedule must not be called from the tasklet itself (a lockup occurs) This is true >+ * If this tasklet is already running on another CPU (or schedule is called >+ from tasklet itself), it wound not be rescheduled. that are two statements. I suggest you fix the driver instead poking at the tasklet code. > * Tasklet is strictly serialized wrt itself, but not > wrt another tasklets. If client needs some intertask synchronization, > he makes it with spinlocks. Sebastian -- To unsubscribe from this list: send the line "unsubscribe linux-rt-users" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html