DragonFly commits List (threaded) for 2007-01
DragonFly BSD
DragonFly commits List (threaded) for 2007-01
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

cvs commit: src/sys/machine/pc32/i386 pmap.c src/sys/machine/pc32/include pmap.h src/sys/machine/vkernel/include pmap.h src/sys/machine/vkernel/platform pmap.c


From: Matthew Dillon <dillon@xxxxxxxxxxxxxxxxxxxxxxx>
Date: Mon, 15 Jan 2007 01:28:40 -0800 (PST)

dillon      2007/01/15 01:28:40 PST

DragonFly src repository

  Modified files:
    sys/machine/pc32/i386 pmap.c 
    sys/machine/pc32/include pmap.h 
    sys/machine/vkernel/include pmap.h 
    sys/machine/vkernel/platform pmap.c 
  Log:
  Close two holes in the pmap code.  The page table self mapping does not
  necessarily stay valid through a blocking condition, recheck it for every
  page.  The 'next' pointer in the loop that runs through PV entries is not
  safe when code blocks in the loop.  Add a generation count to detect
  unexpected removals and restart the loop.  Add a kprintf() to print when
  the condition is detected.
  
  Crash-Reported-by: Nuno Antunes <bugs@crater.dragonflybsd.org>
  
  Revision  Changes    Path
  1.72      +29 -12    src/sys/machine/pc32/i386/pmap.c
  1.6       +3 -2      src/sys/machine/pc32/include/pmap.h
  1.3       +1 -0      src/sys/machine/vkernel/include/pmap.h
  1.15      +29 -13    src/sys/machine/vkernel/platform/pmap.c


http://www.dragonflybsd.org/cvsweb/src/sys/machine/pc32/i386/pmap.c.diff?r1=1.71&r2=1.72&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/machine/pc32/include/pmap.h.diff?r1=1.5&r2=1.6&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/machine/vkernel/include/pmap.h.diff?r1=1.2&r2=1.3&f=u
http://www.dragonflybsd.org/cvsweb/src/sys/machine/vkernel/platform/pmap.c.diff?r1=1.14&r2=1.15&f=u



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]