Re: [BUG] 2.6.12-rc3: unkillable java process in TASK_RUNNING onAMD64

From: Alexander Nyberg
Date: Wed Apr 27 2005 - 07:56:45 EST


> > > >From sysrq-P, I get this:
> > >
> > > Pid: 11073, comm: java Not tainted 2.6.12-rc3
> > > RIP: 0010:[<ffffffff8010f675>] <ffffffff8010f675>{retint_signal+20}
> > > RSP: 0018:ffff810012d6ff58 EFLAGS: 00000282
> > > RAX: 0000000000020000 RBX: ffff810010868820 RCX: ffff810012d6e000
> > > RDX: 0000000000020000 RSI: 0000000000000000 RDI: ffff810012d6ff58
> > > RBP: 000000a30c153a4a R08: ffff810012d6e000 R09: ffffffff804c6068
> > > R10: 0000000000000001 R11: 0000000000000001 R12: ffffffff804ccd40
> > > R13: ffff810010868820 R14: ffff81002cff2cf0 R15: ffffffff8010d3a7
> > > FS: 00002aaaae6389c0(0000) GS:ffffffff8054a600(0063) knlGS:00000000556c9080
> > > CS: 0010 DS: 002b ES: 002b CR0: 000000008005003b
> > > CR2: 00002aaaaabab000 CR3: 0000000012930000 CR4: 00000000000006e0
> > >
> > > Call Trace:<ffffffff8010f697>{retint_signal+54}
> > >
> > > all the time.

My mind tells me this might be the problem but statistics also tell me
processes should get stuck all the time here...

In retint_signal %rdi is destroyed, need to jump to the label above
retint_check that sets %edi back to $_TIF_WORK_MASK

Signed-off-by: Alexander Nyberg <alexn@xxxxxxxxx>

Index: linux-2.6/arch/x86_64/kernel/entry.S
===================================================================
--- linux-2.6.orig/arch/x86_64/kernel/entry.S 2005-04-27 13:08:50.000000000 +0200
+++ linux-2.6/arch/x86_64/kernel/entry.S 2005-04-27 14:43:20.000000000 +0200
@@ -491,7 +491,7 @@
RESTORE_REST
cli
GET_THREAD_INFO(%rcx)
- jmp retint_check
+ jmp retint_with_reschedule

#ifdef CONFIG_PREEMPT
/* Returning to kernel space. Check if we need preemption */


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/