src/share/vm/memory/heap.cpp

changeset 5528
740e263c80c6
parent 4952
a7fb14888912
child 6876
710a3c8b516e
child 7778
c2ce24504334
     1.1 --- a/src/share/vm/memory/heap.cpp	Wed Aug 14 15:12:00 2013 -0700
     1.2 +++ b/src/share/vm/memory/heap.cpp	Thu Aug 15 20:04:10 2013 -0400
     1.3 @@ -1,5 +1,5 @@
     1.4  /*
     1.5 - * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved.
     1.6 + * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
     1.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     1.8   *
     1.9   * This code is free software; you can redistribute it and/or modify it
    1.10 @@ -118,9 +118,12 @@
    1.11    _number_of_committed_segments = size_to_segments(_memory.committed_size());
    1.12    _number_of_reserved_segments  = size_to_segments(_memory.reserved_size());
    1.13    assert(_number_of_reserved_segments >= _number_of_committed_segments, "just checking");
    1.14 +  const size_t reserved_segments_alignment = MAX2((size_t)os::vm_page_size(), granularity);
    1.15 +  const size_t reserved_segments_size = align_size_up(_number_of_reserved_segments, reserved_segments_alignment);
    1.16 +  const size_t committed_segments_size = align_to_page_size(_number_of_committed_segments);
    1.17  
    1.18    // reserve space for _segmap
    1.19 -  if (!_segmap.initialize(align_to_page_size(_number_of_reserved_segments), align_to_page_size(_number_of_committed_segments))) {
    1.20 +  if (!_segmap.initialize(reserved_segments_size, committed_segments_size)) {
    1.21      return false;
    1.22    }
    1.23  

mercurial