2943 size_t page_size = MAX2((size_t)os::vm_page_size(), page_expected->size); |
2943 size_t page_size = MAX2((size_t)os::vm_page_size(), page_expected->size); |
2944 uint64_t p = (uint64_t)start; |
2944 uint64_t p = (uint64_t)start; |
2945 while (p < (uint64_t)end) { |
2945 while (p < (uint64_t)end) { |
2946 addrs[0] = p; |
2946 addrs[0] = p; |
2947 size_t addrs_count = 1; |
2947 size_t addrs_count = 1; |
2948 while (addrs_count < MAX_MEMINFO_CNT && addrs[addrs_count - 1] < (uint64_t)end) { |
2948 while (addrs_count < MAX_MEMINFO_CNT && addrs[addrs_count - 1] + page_size < (uint64_t)end) { |
2949 addrs[addrs_count] = addrs[addrs_count - 1] + page_size; |
2949 addrs[addrs_count] = addrs[addrs_count - 1] + page_size; |
2950 addrs_count++; |
2950 addrs_count++; |
2951 } |
2951 } |
2952 |
2952 |
2953 if (os::Solaris::meminfo(addrs, addrs_count, info_types, types, outdata, validity) < 0) { |
2953 if (os::Solaris::meminfo(addrs, addrs_count, info_types, types, outdata, validity) < 0) { |