cvs commit: src/sys/i386/i386 pmap.c

Andrew Gallatin gallatin at cs.duke.edu
Wed Aug 6 13:22:51 PDT 2003


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++;

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.


Drew


More information about the cvs-src mailing list