Skip to content

Segfault in OopDesc::size() for generational plans for DaCapo Chopin f480064 #156

@k-sareen

Description

@k-sareen

I was running performance analyses for the MMTk GCs and noticed the generational plans segfaulted somewhere in copy(). GenImmix always segfaults for luindex while GenCopy always segfaults for jython.

Running the luindex benchmark with GenImmix under rr tells me that the klass variable here [1] is a nullptr, hence the SIGSEGV. I haven't looked too deeply into it yet.

Commands Used

luindex

MMTK_PLAN=GenImmix ./build/linux-x86_64-normal-server-fastdebug/jdk/bin/java -XX:MetaspaceSize=500M -XX:+DisableExplicitGC -server -XX:-TieredCompilation -Xcomp -XX:+UseThirdPartyHeap -Dprobes=RustMMTk -Djava.library.path=/home/kunals/git/evaluation/probes -Xms58M -Xmx58M -cp /usr/share/benchmarks/dacapo/dacapo-evaluation-git-f480064.jar:/home/kunals/git/evaluation/probes:/home/kunals/git/evaluation/probes/probes.jar Harness -c probe.DacapoChopinCallback -n 5 luindex

jython

MMTK_PLAN=GenCopy ./build/linux-x86_64-normal-server-release/jdk/bin/java -XX:MetaspaceSize=500M -XX:+DisableExplicitGC -server -XX:-TieredCompilation -Xcomp -XX:+UseThirdPartyHeap -Dprobes=RustMMTk -Djava.library.path=/home/kunals/git/evaluation/probes -Xms174M -Xmx174M -cp /usr/share/benchmarks/dacapo/dacapo-evaluation-git-f480064.jar:/home/kunals/git/evaluation/probes:/home/kunals/git/evalutation/probes/probes.jar Harness -c probe.DacapoChopinCallback -n 5 jython

Versions Used

mmtk-core revision: mmtk/mmtk-core@3dbdd7a
mmtk-openjdk revision: e6c9b94
openjdk revision: https://github.com/mmtk/openjdk/tree/jdk-11.0.15+8-mmtk
DaCapo Chopin revision: f480064

[1]: https://github.com/mmtk/mmtk-openjdk/blob/master/mmtk/src/abi.rs#L336

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions