Re: [patch] Real-Time Preemption, -RT-2.6.9-mm1-U10.2

From: Rui Nuno Capela
Date: Sat Oct 23 2004 - 16:08:00 EST


> Ingo Molnar
>
> Rui Nuno Capela wrote:
>
>> OK. All affirmative. NIC is natsemi.
>>
>> Here it is:
>>
>> SysRq : IRQ 1/776: BUG in write_msg at drivers/net/netconsole.c:87
>
> doh! Go to line 77 and spot the bug. (yes, the PREEMPT_REALTIME needs to
> become CONFIG_PREEMPT_REALTIME) With that fixed does it work for you?
>

OK again. And found another place where PREEMPT_REALTIME is in place of
CONFIG_PREEMPT_REALTIME, on drivers/ide/ide-taskfile.c, lines 287 and 308
(see appended diffs).

Anyway, back to my jackd -R issue. I tell you that things are really
different now: hitting SysRq+T, just about when it all gets frozen, I see
nothing on netconsole capture end, only this single line:

SysRq : Show State

and nothing more.
--
rncbc aka Rui Nuno Capela
rncbc@xxxxxxxxx
--- linux-2.6.9-mm1-RT-U10.3/drivers/net/netconsole.c.orig 2004-10-23 16:24:45.178795840 +0100
+++ linux-2.6.9-mm1-RT-U10.3/drivers/net/netconsole.c 2004-10-23 16:25:12.869586200 +0100
@@ -74,7 +74,7 @@
return;

local_irq_save(flags);
-#ifdef PREEMPT_REALTIME
+#ifdef CONFIG_PREEMPT_REALTIME
/*
* A bit hairy. Netconsole uses mutexes (indirectly) and
* thus must have interrupts enabled:--- linux-2.6.9-mm1-RT-U10.3/drivers/ide/ide-taskfile.c.orig 2004-10-23 14:13:38.000000000 +0100
+++ linux-2.6.9-mm1-RT-U10.3/drivers/ide/ide-taskfile.c 2004-10-23 16:34:10.142908240 +0100
@@ -284,7 +284,7 @@
u8 *buf;

page = sg[hwif->cursg].page;
-#if defined(CONFIG_HIGHMEM) && !defined(PREEMPT_REALTIME)
+#if defined(CONFIG_HIGHMEM) && !defined(CONFIG_PREEMPT_REALTIME)
local_irq_save(flags);
#endif
buf = kmap_atomic(page, KM_BIO_SRC_IRQ) +
@@ -305,7 +305,7 @@
taskfile_input_data(drive, buf, SECTOR_WORDS);

kunmap_atomic(page, KM_BIO_SRC_IRQ);
-#if defined(CONFIG_HIGHMEM) && !defined(PREEMPT_REALTIME)
+#if defined(CONFIG_HIGHMEM) && !defined(CONFIG_PREEMPT_REALTIME)
local_irq_restore(flags);
#endif
}