diff -r 38913dc333ed -r 2d749ba03ff5 hotspot/src/os/solaris/vm/os_solaris.cpp --- a/hotspot/src/os/solaris/vm/os_solaris.cpp Thu Nov 13 07:58:28 2014 +0100 +++ b/hotspot/src/os/solaris/vm/os_solaris.cpp Thu Nov 13 12:29:09 2014 +0100 @@ -2608,7 +2608,10 @@ assert((intptr_t)addr % alignment_hint == 0, "Address should be aligned."); assert((intptr_t)(addr + bytes) % alignment_hint == 0, "End should be aligned."); if (UseLargePages) { - Solaris::setup_large_pages(addr, bytes, alignment_hint); + size_t page_size = Solaris::page_size_for_alignment(alignment_hint); + if (page_size > (size_t) vm_page_size()) { + Solaris::setup_large_pages(addr, bytes, page_size); + } } }