cvs commit: src/sys/i386/i386 pmap.c
Alan L. Cox
alc at imimic.com
Wed Aug 6 13:28:13 PDT 2003
Andrew Gallatin wrote:
>
> Alan Cox [alc at FreeBSD.org] wrote:
> > alc 2003/08/06 11:46:48 PDT
> >
> > FreeBSD src repository
> >
> > Modified files:
> > sys/i386/i386 pmap.c
> > Log:
> > Acquire the page queues lock in pmap_insert_entry(). (I used to believe
> > that the page's busy flag could be relied upon to synchronize access to the
> > pv list. I don't any longer. See, for example, the call to
> > pmap_insert_entry() from pmap_copy().)
>
> Any chance this is what's causing the pmap corruption on alpha and ia64?
> We're also doing those same 3 lines there:
>
> TAILQ_INSERT_TAIL(&pmap->pm_pvlist, pv, pv_plist);
> TAILQ_INSERT_TAIL(&m->md.pv_list, pv, pv_list);
> m->md.pv_list_count++;
>
Yup. Give it a try.
> FWIW, I've managed to get a j16 buildworld to complete on a July 4
> kernel, and fail with a fault-on-nofault-entry panic with a July 10
> kernel.
>
Prior to the "no fault", I would expect that a zero-filled page got
instantiated to satisfy the fault.
Alan
More information about the cvs-src
mailing list