git: kernel - Correct vm_map_entry_reserve() call depth issue w/vkernel

Matthew Dillon dillon at crater.dragonflybsd.org
Mon Dec 4 15:45:42 PST 2017


commit adbd68143397c68255ba6884c2dce62d81dbfe80
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date:   Mon Dec 4 15:43:13 2017 -0800

    kernel - Correct vm_map_entry_reserve() call depth issue w/vkernel
    
    * vm_map was making vaddr tests against VM_MAX_USER_ADDRESS to
      determine when to call vm_map_entry_reserve().  This test works
      fine on real hardware but will not work properly for a vkernel.
    
    * Instead, just use td_nest_count to prevent excessive recursion,
      or test against &kernel_map when necessary.
    
    * Fixes SIGILL in vkernel due to stack overflow.
    
    Reported-by: tuxillo

Summary of changes:
 sys/vm/vm_map.c | 17 ++++++++++++++---
 1 file changed, 14 insertions(+), 3 deletions(-)

http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/adbd68143397c68255ba6884c2dce62d81dbfe80


-- 
DragonFly BSD source repository



More information about the Commits mailing list