> On Wednesday 09 June 2004 09:25 am, Ian FREISLICH wrote: > > Hi > > > > I got this about an hour ago, maybe 10 minutes into a 'make world > > -j8' on my SMP system. I'll reproduce the panic and drop into the > > debugger if possible if someone is willing to tell me what information > > appart from this backtrace will be helpful. > > Unfortunately this is a known deadlock that can happen with swapping that > there isn't an easy fix for. If you want a quick hack, try commenting out > the 'wakeup(&proc0)' line in setrunnable(). It might take a bit longer for > the kernel to swap processes back in but should avoid the deadlock. You mean like this? diff -u -d -r1.249 kern_synch.c --- kern_synch.c 7 Jun 2004 09:35:00 -0000 1.249 +++ kern_synch.c 9 Jun 2004 15:03:09 -0000 _at__at_ -402,7 +402,14 _at__at_ if ((p->p_sflag & PS_INMEM) == 0) { if ((p->p_sflag & PS_SWAPPINGIN) == 0) { p->p_sflag |= PS_SWAPINREQ; - wakeup(&proc0); + /* + * XXX Nasty, Tricksy hack!!!! + * Perhaps avoid a deadlock at the expense of swap + * performance. + */ + /* + * wakeup(&proc0); + */ } } else sched_wakeup(td); Ian -- Ian FreislichReceived on Wed Jun 09 2004 - 13:04:53 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:37:56 UTC