RFR: 8331977: Crash: SIGSEGV in dlerror()

Alexey Semenyuk asemenyuk at openjdk.org
Mon Jun 3 14:41:07 UTC 2024


On Mon, 3 Jun 2024 08:37:50 GMT, David Holmes <dholmes at openjdk.org> wrote:

>> Fix MainClassTest class to use HelloApp.AppOutputVerifier class to run app launcher instead of raw Executor. This makes MainClassTest test run app launchers with retries. This change addresses the primary issue.
>> 
>> Fix inconsistencies in HelloApp.AppOutputVerifier class. It used to provide API allowing to run launchers without retries. It inconsistently allowed the execution of launchers with suppressed output (stdout and stderr). It inconsistently executed launchers with/without PATH removed from the environment.
>> 
>> These loopholes were eliminated:
>> 
>>  - stdout and stderr of app launchers is never suppressed;
>>  - PATH env variable is always deleted for app launchers on Windows. It is not deleted on other platforms. This change sets the correct scope of [JDK-8254920](https://bugs.openjdk.org/browse/JDK-8254920) fix that introduced the removal of PATH env variable for app launchers;
>>  - app launchers are always executed with retries unless the launcher is executed with `jpackage.test.noexit` system property set to `true` indicating the test app will not terminate on its own.
>> 
>> Other changes are due to changes in HelloApp.AppOutputVerifier class.
>
> I am yet to see anything that actually explains the cause of the `dlerror` crash here ???

@dholmes-ora there is no fix for the cause of the `dlerror` crash in this PR. The PR fixes jpackage tests to rerun a launcher if it crashes. This workaround for jpackage tests was first introduced in [JDK-8269403](https://bugs.openjdk.org/browse/JDK-8269403) fix but MainClassTest was left unfixed back then. This PR complements [JDK-8269403](https://bugs.openjdk.org/browse/JDK-8269403).

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

PR Comment: https://git.openjdk.org/jdk/pull/19502#issuecomment-2145373568


More information about the core-libs-dev mailing list