Date: Thu, 04 Aug 2005 22:14:32 -0700 From: Frank McConnell <fmc@reanimators.org> To: freebsd-stable@FreeBSD.org Subject: Re: RELENG_5 PAE panic Message-ID: <200508050514.j755EWpH019403@lots.reanimators.org> In-Reply-To: <200508022220.j72MKvUt056654@lots.reanimators.org> (Frank McConnell's message of "Tue, 02 Aug 2005 15:20:57 -0700") References: <200507290034.j6T0YLdZ014411@lots.reanimators.org> <20050729091624.R74149@fledge.watson.org> <200507291809.j6TI9p37035628@lots.reanimators.org> <200508021726.j72HQPQG051111@lots.reanimators.org> <200508022220.j72MKvUt056654@lots.reanimators.org>
next in thread | previous in thread | raw e-mail | index | archive | help
Further debugging led me to the conclusion that the problem is in pmap_protect(), in src/sys/i386/i386/pmap.c; and has to do with a 32-bit-truncated pt_entry_t being passed to PHYS_TO_VM_PAGE(). (pt_entry_t is 64 bits if the kernel is built with PAE.) This caused a page fault in vm_page_flag_set() which left the thread deadlocked while holding vm_page_queue_mtx and in turn led to a panic when another thread tried to acquire vm_page_queue_mtx. Then I checked the cvs logs, and saw rev 1.524, which looks like what I was thinking about as a fix, so I'm giving it a spin on top of earlier-this-week's RELENG_5. Thus far I'll say that with that change my usual way of provoking the problem hasn't, yet. I'm going to try to get this PC put back into co-lo where it can get some production-like testing this weekend. It'd be nice to get this fix MFC'd to RELENG_5 too. -Frank McConnell
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200508050514.j755EWpH019403>