comparison src/os/solaris/vm/os_solaris.cpp @ 1320:3b3d12e645e7

6929067: Stack guard pages should be removed when thread is detached Summary: Add code to unmap stack guard area when thread is detached. Reviewed-by: coleenp, kamg
author coleenp
date Fri, 12 Mar 2010 10:42:16 -0500
parents 167c2986d91b
children a2ea687fdc7c
comparison
equal deleted inserted replaced
1292:12d91eb0f579 1320:3b3d12e645e7
2694 void os::free_memory(char* addr, size_t bytes) { 2694 void os::free_memory(char* addr, size_t bytes) {
2695 if (madvise(addr, bytes, MADV_FREE) < 0) { 2695 if (madvise(addr, bytes, MADV_FREE) < 0) {
2696 debug_only(warning("MADV_FREE failed.")); 2696 debug_only(warning("MADV_FREE failed."));
2697 return; 2697 return;
2698 } 2698 }
2699 }
2700
2701 bool os::create_stack_guard_pages(char* addr, size_t size) {
2702 return os::commit_memory(addr, size);
2703 }
2704
2705 bool os::remove_stack_guard_pages(char* addr, size_t size) {
2706 return os::uncommit_memory(addr, size);
2699 } 2707 }
2700 2708
2701 // Change the page size in a given range. 2709 // Change the page size in a given range.
2702 void os::realign_memory(char *addr, size_t bytes, size_t alignment_hint) { 2710 void os::realign_memory(char *addr, size_t bytes, size_t alignment_hint) {
2703 assert((intptr_t)addr % alignment_hint == 0, "Address should be aligned."); 2711 assert((intptr_t)addr % alignment_hint == 0, "Address should be aligned.");