605 SharedMiscCodeSize, |
605 SharedMiscCodeSize, |
606 true, true); |
606 true, true); |
607 |
607 |
608 // Pass 2 - write data. |
608 // Pass 2 - write data. |
609 mapinfo->open_for_write(); |
609 mapinfo->open_for_write(); |
|
610 mapinfo->set_header_crc(mapinfo->compute_header_crc()); |
610 mapinfo->write_header(); |
611 mapinfo->write_header(); |
611 mapinfo->write_space(MetaspaceShared::ro, _loader_data->ro_metaspace(), true); |
612 mapinfo->write_space(MetaspaceShared::ro, _loader_data->ro_metaspace(), true); |
612 mapinfo->write_space(MetaspaceShared::rw, _loader_data->rw_metaspace(), false); |
613 mapinfo->write_space(MetaspaceShared::rw, _loader_data->rw_metaspace(), false); |
613 mapinfo->write_region(MetaspaceShared::md, _md_vs.low(), |
614 mapinfo->write_region(MetaspaceShared::md, _md_vs.low(), |
614 pointer_delta(md_top, _md_vs.low(), sizeof(char)), |
615 pointer_delta(md_top, _md_vs.low(), sizeof(char)), |
934 char* _md_base = NULL; |
935 char* _md_base = NULL; |
935 char* _mc_base = NULL; |
936 char* _mc_base = NULL; |
936 |
937 |
937 // Map each shared region |
938 // Map each shared region |
938 if ((_ro_base = mapinfo->map_region(ro)) != NULL && |
939 if ((_ro_base = mapinfo->map_region(ro)) != NULL && |
|
940 mapinfo->verify_region_checksum(ro) && |
939 (_rw_base = mapinfo->map_region(rw)) != NULL && |
941 (_rw_base = mapinfo->map_region(rw)) != NULL && |
|
942 mapinfo->verify_region_checksum(rw) && |
940 (_md_base = mapinfo->map_region(md)) != NULL && |
943 (_md_base = mapinfo->map_region(md)) != NULL && |
|
944 mapinfo->verify_region_checksum(md) && |
941 (_mc_base = mapinfo->map_region(mc)) != NULL && |
945 (_mc_base = mapinfo->map_region(mc)) != NULL && |
|
946 mapinfo->verify_region_checksum(mc) && |
942 (image_alignment == (size_t)max_alignment()) && |
947 (image_alignment == (size_t)max_alignment()) && |
943 mapinfo->validate_classpath_entry_table()) { |
948 mapinfo->validate_classpath_entry_table()) { |
944 // Success (no need to do anything) |
949 // Success (no need to do anything) |
945 return true; |
950 return true; |
946 } else { |
951 } else { |