RFR: 8338912: CDS: Segmented roots array [v5]

Ioi Lam iklam at openjdk.org
Mon Sep 9 19:10:06 UTC 2024


On Mon, 9 Sep 2024 19:02:08 GMT, Ioi Lam <iklam at openjdk.org> wrote:

> > I don't quite understand the Windows `DeterministicDump` failure. Is there anything specific about CDS and Windows that makes it only fail there?
> 
> This kind of failure usually can be diagnosed by diffing the map files that are generated the test case. Let me try to reproduce it on my side.

Hmm, since you haven't change the logic of how the archive is created, except that you move the allocation of the root array(s) from the end to the beginning of the heap objects, I think it's probably caused by this:


class HeapRootSegments {
private:
  size_t _base_offset;
  size_t _count;
  int _roots_count;
  int _max_size_in_bytes;
  int _max_size_in_elems;
  // uninitialized padding on Windows


Maybe explicitly add an `int _unused` there?

-------------

PR Comment: https://git.openjdk.org/jdk/pull/20858#issuecomment-2338877274


More information about the hotspot-runtime-dev mailing list