Interesting... I would have thought the generic fix I put in recently with respect to restoring the preempt count after a bad memory read would have solved this unless there is a another case that is not obvious with the rt patch.
I am assuming that I have a very different configuration than what you have with respect to the rt patches. Jason. > -----Original Message----- > From: Sergei Shtylyov [mailto:[EMAIL PROTECTED] > Sent: Tuesday, June 19, 2007 1:53 PM > To: Wessel, Jason > Cc: kgdb-bugreport@lists.sourceforge.net > Subject: Re: [Kgdb-bugreport] KGDB/RT integration woes > > Hello, I wrote: > > >>>This patch fixes some corner cases where KGDB will > silently hang or > >>>kill the system, if a user accidentally tries to source step into a > >>>spin_unlock() call or source step in on a macro containing > >>>smp_processor_id(). The use of raw_smp_processor_id is desired in > >>>kernel/kgdb.c to fix this particular problem. > > >>>To fix issues with accidental source step in on spin_unlock(), the > >>>idea is to check for the existence of a break point on the second > >>>entry to kgdb and try to remove it. Next an attempt will > be made to > >>>continue normal operations. A third entry will generate a > panic(), > >>>so as to stop infinite loops. > > >>>Testing has shown that kgdb is much more robust with these changes > >>>and "random accidental run control". > > >> It seems that something has been broken WRT backtracing... > > > Here's the more relevant trace -- got it at the initial > KGDB breakpoint: > > Well, it seems to be caused by KGDB using the infamous > unwinder which is a part of the -rt patch now... :-/ > With the plain kernel, backtracing works well, however, > that's what I'm getting after hitting breaklpint set to > do_mount and continuing: > > BUG: scheduling while atomic: swapper/0x0000000a/1 > > Call Trace: > [<ffffffff805724e0>] __sched_text_start+0x60/0x7ee > [<ffffffff8027d7fb>] ____cache_alloc_node+0x111/0x120 > [<ffffffff8022c4f9>] default_wake_function+0xd/0xf > [<ffffffff80574a06>] __lock_text_start+0x2e/0x30 > [<ffffffff80242734>] flush_cpu_workqueue+0x90/0xb8 > [<ffffffff80246192>] autoremove_wake_function+0x0/0x37 > [<ffffffff80242200>] __queue_work+0x7b/0x83 > [<ffffffff80246192>] autoremove_wake_function+0x0/0x37 > [<ffffffff8024229a>] queue_work+0x92/0x9e > [<ffffffff802427ba>] flush_workqueue+0x5e/0x7f > [<ffffffff80242c15>] flush_scheduled_work+0x10/0x12 > [<ffffffff8056463b>] xs_connect+0xd3/0xd8 > [<ffffffff80561f01>] xprt_connect+0x11a/0x123 > [<ffffffff8056055c>] call_connect+0x79/0x7e > [<ffffffff80565a43>] __rpc_execute+0x84/0x248 > [<ffffffff80565c27>] rpc_execute+0x20/0x24 > [<ffffffff80560095>] call_start+0x0/0x72 > [<ffffffff8055ffc5>] rpc_call_sync+0x84/0xab > [<ffffffff8056cca0>] rpc_getport_external+0xe1/0x104 > [<ffffffff807abe8d>] root_nfs_getport+0x6e/0x79 > [<ffffffff807ac04f>] nfs_root_data+0x1b7/0x32c > [<ffffffff802983a1>] sys_mount+0xc1/0xd3 > [<ffffffff8028b9b2>] sys_rmdir+0x11/0x13 > [<ffffffff80796f30>] mount_root+0x1d/0x138 > [<ffffffff80797152>] prepare_namespace+0x107/0x134 > [<ffffffff80796a60>] init+0x25e/0x270 > [<ffffffff80574e9b>] _spin_unlock_irq+0x15/0x2f > [<ffffffff8022ac65>] schedule_tail+0x36/0x9d > [<ffffffff8020a3b8>] child_rip+0xa/0x12 > [<ffffffff803711b8>] acpi_ds_init_one_object+0x0/0x88 > [<ffffffff80796802>] init+0x0/0x270 > [<ffffffff8020a3ae>] child_rip+0x0/0x12 > > WBR, Sergei > > ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ Kgdb-bugreport mailing list Kgdb-bugreport@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/kgdb-bugreport