< prev index next >

src/hotspot/share/runtime/stackOverflow.hpp

Print this page

225             || addr == stack_base(), "Must not be set twice");
226     _reserved_stack_activation = addr;
227   }
228 
229   // Attempt to reguard the stack after a stack overflow may have occurred.
230   // Returns true if (a) guard pages are not needed on this thread, (b) the
231   // pages are already guarded, or (c) the pages were successfully reguarded.
232   // Returns false if there is not enough stack space to reguard the pages, in
233   // which case the caller should unwind a frame and try again.  The argument
234   // should be the caller's (approximate) sp.
235   bool reguard_stack(address cur_sp);
236   // Similar to above but see if current stackpoint is out of the guard area
237   // and reguard if possible.
238   bool reguard_stack(void);
239   bool reguard_stack_if_needed(void);
240 
241   void set_stack_overflow_limit() {
242     _stack_overflow_limit =
243       stack_end() + MAX2(stack_guard_zone_size(), stack_shadow_zone_size());
244   }


245 };
246 
247 #endif // SHARE_RUNTIME_STACKOVERFLOW_HPP

225             || addr == stack_base(), "Must not be set twice");
226     _reserved_stack_activation = addr;
227   }
228 
229   // Attempt to reguard the stack after a stack overflow may have occurred.
230   // Returns true if (a) guard pages are not needed on this thread, (b) the
231   // pages are already guarded, or (c) the pages were successfully reguarded.
232   // Returns false if there is not enough stack space to reguard the pages, in
233   // which case the caller should unwind a frame and try again.  The argument
234   // should be the caller's (approximate) sp.
235   bool reguard_stack(address cur_sp);
236   // Similar to above but see if current stackpoint is out of the guard area
237   // and reguard if possible.
238   bool reguard_stack(void);
239   bool reguard_stack_if_needed(void);
240 
241   void set_stack_overflow_limit() {
242     _stack_overflow_limit =
243       stack_end() + MAX2(stack_guard_zone_size(), stack_shadow_zone_size());
244   }
245 
246   address stack_overflow_limit() const { return _stack_overflow_limit; }
247 };
248 
249 #endif // SHARE_RUNTIME_STACKOVERFLOW_HPP
< prev index next >