Date: Wed, 24 Oct 2012 11:48:13 -0500 From: Alan Cox <alc@rice.edu> To: Konstantin Belousov <kostikbel@gmail.com> Cc: freebsd-current@freebsd.org, Svatopluk Kraus <onwahe@gmail.com> Subject: Re: i386 pmap - missing sched_pin()? Message-ID: <50881BCD.1010502@rice.edu> In-Reply-To: <20121023131450.GU35915@deviant.kiev.zoral.com.ua> References: <CAFHCsPXNnm9c1FL=9%2B2k6X6O1qfRQPRVybueM5xwdbdvONj1jg@mail.gmail.com> <20121023131450.GU35915@deviant.kiev.zoral.com.ua>
next in thread | previous in thread | raw e-mail | index | archive | help
On 10/23/2012 08:14, Konstantin Belousov wrote: > On Tue, Oct 23, 2012 at 02:36:07PM +0200, Svatopluk Kraus wrote: >> Hi, >> >> I'm just syncing my ARM pmap code (base on i386 one) with current >> i386 pmap code. It looks that sched_pin() is missing after successful >> rw_try_wlock() in pmap_protect(). > Yes, you are right, I think. The following patch takes care of it. > > diff --git a/sys/i386/i386/pmap.c b/sys/i386/i386/pmap.c > index ac087f6..b9033da 100644 > --- a/sys/i386/i386/pmap.c > +++ b/sys/i386/i386/pmap.c > @@ -3221,6 +3221,7 @@ resume: > PMAP_UNLOCK(pmap); > goto resume; > } > + sched_pin(); > } > if (!pmap_demote_pde(pmap, > &pmap->pm_pdir[pdirindex], sva)) { Agreed. Please commit this change. Alan
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?50881BCD.1010502>