diff -r fbcf5f5047c6 -r 6d0d8bea2bcc hotspot/src/os/solaris/vm/os_solaris.cpp --- a/hotspot/src/os/solaris/vm/os_solaris.cpp Tue Mar 12 09:42:24 2013 +0100 +++ b/hotspot/src/os/solaris/vm/os_solaris.cpp Mon Mar 11 02:24:01 2013 -0700 @@ -2945,7 +2945,7 @@ while (p < (uint64_t)end) { addrs[0] = p; size_t addrs_count = 1; - while (addrs_count < MAX_MEMINFO_CNT && addrs[addrs_count - 1] < (uint64_t)end) { + while (addrs_count < MAX_MEMINFO_CNT && addrs[addrs_count - 1] + page_size < (uint64_t)end) { addrs[addrs_count] = addrs[addrs_count - 1] + page_size; addrs_count++; }