git: kernel - Fix bug in pmap_unwire()

Matthew Dillon dillon at crater.dragonflybsd.org
Mon Feb 13 23:27:42 PST 2017


commit 62443eb51da14fee24c103cbb98d533c93da0b3e
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date:   Mon Feb 13 23:21:09 2017 -0800

    kernel - Fix bug in pmap_unwire()
    
    * Fix a bug introduced in the recent pmap work.  For kernel pages,
      pmap_unwire() was not testing the V bit and would return a bogus
      vm_page_t for PTE values of 0, instead of returning NULL.
    
    * Triggered by the mpipe code, used primarily by the crypto subsystem.
      Also used for IP fragment reassembly and by tcp_maketemplate().  A
      failed M_NOWAIT slab allocation tries to delete the partially filled
      map_entry_t, encounters 0 PTEs, and gets confused.
    
    Reported-by: Tim Darby, Antonio Huete Jimenez

Summary of changes:
 sys/platform/pc64/x86_64/pmap.c | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/62443eb51da14fee24c103cbb98d533c93da0b3e


-- 
DragonFly BSD source repository



More information about the Commits mailing list