Date: Wed, 10 Feb 2010 05:43:31 +0000 (UTC) From: Neel Natu <neel@FreeBSD.org> To: cvs-src-old@freebsd.org Subject: cvs commit: src/sys/mips/mips exception.S Message-ID: <201002100543.o1A5hrX1052421@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
neel 2010-02-10 05:43:31 UTC FreeBSD src repository Modified files: sys/mips/mips exception.S Log: SVN rev 203743 on 2010-02-10 05:43:31Z by neel Enable interrupts before doing AST processing to avoid a deadlock. Specifically on an SMP kernel it was observed that if both the processors are doing an exit1() via ast()->postsig()->sigexit() then we will deadlock. This happens because exit1() calls vmspace_exit() that in turn calls pmap_invalidate_all(). This function tries to do a smp_rendezvous() which blocks because the other processor is not responding to IPIs - because it too is doing AST processing with interrupts disabled. Revision Changes Path 1.7 +12 -0 src/sys/mips/mips/exception.S
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201002100543.o1A5hrX1052421>