hotspot/src/os_cpu/linux_zero/vm/os_linux_zero.cpp
changeset 35201 996db89f378e
parent 35077 8b86440d3bf1
child 36181 3a16e8ce0abf
equal deleted inserted replaced
35192:76f4de26388d 35201:996db89f378e
   176     // Handle ALL stack overflow variations here
   176     // Handle ALL stack overflow variations here
   177     if (sig == SIGSEGV) {
   177     if (sig == SIGSEGV) {
   178       address addr = (address) info->si_addr;
   178       address addr = (address) info->si_addr;
   179 
   179 
   180       // check if fault address is within thread stack
   180       // check if fault address is within thread stack
   181       if (addr < thread->stack_base() &&
   181       if (thread->on_local_stack(addr)) {
   182           addr >= thread->stack_base() - thread->stack_size()) {
       
   183         // stack overflow
   182         // stack overflow
   184         if (thread->in_stack_yellow_zone(addr)) {
   183         if (thread->in_stack_yellow_reserved_zone(addr)) {
   185           thread->disable_stack_yellow_zone();
   184           thread->disable_stack_yellow_reserved_zone();
   186           ShouldNotCallThis();
   185           ShouldNotCallThis();
   187         }
   186         }
   188         else if (thread->in_stack_red_zone(addr)) {
   187         else if (thread->in_stack_red_zone(addr)) {
   189           thread->disable_stack_red_zone();
   188           thread->disable_stack_red_zone();
   190           ShouldNotCallThis();
   189           ShouldNotCallThis();