On Wed, Mar 02, 2011 at 05:14:14PM -0300, Luis Claudio R. Goncalves wrote: > Thomas, > > Maybe PREEMPT_NONE is not really what we want to check against, maybe it is > RT_MUTEXES... anyway, this patch works fine as is in kernels with > PREEMPT_NONE, PREEMPT_DESKTOP, PREEMPT_VOLUNTARY and PREEMPT_RT set. > > --- > > net: iptables: rework the fix of xt_info locking > > Commit 5bbbedc from tip/rt/2.6.33 fixed an annoying locking issue on > PREEMPT_RT enabled kernels. I have observed a similar issue when testing a > kernel with PREEMPT_DESKTOP enabled. My test kernels would boot fine and as > soon as I tried to ssh into the test box I would see messages like this one: > > BUG: %Ps exited with wrong preemption count! > => enter: 00000101, exit: 00000100. > BUG: %Ps exited with wrong preemption count! > => enter: 00000101, exit: 00000100. > BUG: %Ps exited with wrong preemption count! > => enter: 00000102, exit: 00000101. This error message would be a bit more usful after this patch: diff --git a/kernel/softirq.c b/kernel/softirq.c index c35f72b..b3b20b0 100644 --- a/kernel/softirq.c +++ b/kernel/softirq.c @@ -335,8 +335,8 @@ debug_check_preempt_count_stop(__u32 *preempt_count, struct softirq_action *h) if (*preempt_count == preempt_count()) return; - print_symbol("BUG: %Ps exited with wrong preemption count!\n", - (unsigned long)h->action); + printk("BUG: %ps exited with wrong preemption count!\n", + h->action); printk("=> enter: %08x, exit: %08x.\n", *preempt_count, preempt_count()); preempt_count() = *preempt_count; #endif Note this is completely untested and applies on top of v2.6.33.7.2-rt30. Thomas: should I send a proper patch or isn't it worth the effort? Best regards Uwe -- Pengutronix e.K. | Uwe Kleine-König | Industrial Linux Solutions | http://www.pengutronix.de/ | -- 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