Test command:
export ASAN_OPTIONS=detect_leaks=1,abort_on_error=1
export LSAN_OPTIONS=suppressions="$PWD/suppressions-leak.txt,abort_on_error=1"
export UBSAN_OPTIONS="suppressions="$PWD/suppressions-UndefinedBehavior-clang.txt,print_stacktrace=1,abort_on_error=1"
time jtreg -w tmp -nr -jdk:build/linux-x86_64-server-fastdebug/images/jdk -e:LD_LIBRARY_PATH -v:fail,error -e:ASAN_OPTIONS -e:LSAN_OPTIONS -e:UBSAN_OPTIONS -e:ASAN_SYMBOLIZER_PATH test/jdk/java/awt/Choice/ChoiceMouseEventTest.java
Actual result:
Test result shows test passed, shows as below:
jtreg -w tmp -nr -jdk:build/linux-x86_64-server-fastdebug/images/jdk -e:LD_LIBRARY_PATH -v:fail,error -e:ASAN_OPTIONS -e:LSAN_OPTIONS -e:UBSAN_OPTIONS -e:ASAN_SYMBOLIZER_PATH test/jdk/java/awt/Choice/ChoiceMouseEventTest.java
--------------------------------------------------
TEST: java/awt/Choice/ChoiceMouseEventTest.java
TEST RESULT: Passed. Execution successful
--------------------------------------------------
Test results: passed: 1
Results written to /home/yansendao/git/jdk-asan-clang/tmp
Expect result:
The test reported memory leak by AddressSanitizer, and the exit code of java is 134, so test result should be failed or error.
The test run without jtreg shows below:
build/linux-x86_64-server-fastdebug/images/jdk/bin/java -cp tmp ChoiceMouseEventTest ; echo $?
=================================================================
==2847119==ERROR: LeakSanitizer: detected memory leaks
Direct leak of 50 byte(s) in 1 object(s) allocated from:
#0 0x7f7aca938d2e in malloc (/home/yansendao/software/acc/x86_64/lib64/clang/17/lib/linux/libclang_rt.asan-x86_64.so+0x138d2e)
#1 0x7f7ac394dba1 in os::malloc(unsigned long, MemTag, NativeCallStack const&) /home/yansendao/git/jdk-asan-clang/src/hotspot/share/runtime/os.cpp:657:3
#2 0x7f7ac394d87f in os::malloc(unsigned long, MemTag) /home/yansendao/git/jdk-asan-clang/src/hotspot/share/runtime/os.cpp:625:10
#3 0x7f7ac4b3c87d in Unsafe_AllocateMemory0(JNIEnv_*, _jobject*, long) /home/yansendao/git/jdk-asan-clang/src/hotspot/share/prims/unsafe.cpp:365:13
#4 0x7f7aaaa8bda7 (<unknown module>)
#5 0x7f7aaaa85346 (<unknown module>)
#6 0x7f7aaaa85346 (<unknown module>)
#7 0x7f7aaaa85346 (<unknown module>)
#8 0x7f7aaaa8543c (<unknown module>)
#9 0x7f7aaaa8543c (<unknown module>)
#10 0x7f7aaaa8543c (<unknown module>)
#11 0x7f7aaaa8543c (<unknown module>)
#12 0x7f7aaaa8543c (<unknown module>)
#13 0x7f7aaaa8543c (<unknown module>)
#14 0x7f7aaaa8543c (<unknown module>)
#15 0x7f7aaaa8543c (<unknown module>)
#16 0x7f7aaaa8543c (<unknown module>)
#17 0x7f7aaaa8543c (<unknown module>)
#18 0x7f7aaaa8543c (<unknown module>)
#19 0x7f7aaaa8543c (<unknown module>)
#20 0x7f7aaaa8543c (<unknown module>)
#21 0x7f7aaaa8543c (<unknown module>)
#22 0x7f7aaaa8543c (<unknown module>)
#23 0x7f7aaaa8543c (<unknown module>)
#24 0x7f7aaaa8543c (<unknown module>)
#25 0x7f7aaaa8543c (<unknown module>)
#26 0x7f7aaaa85715 (<unknown module>)
#27 0x7f7aaaa8543c (<unknown module>)
#28 0x7f7aaaa8543c (<unknown module>)
#29 0x7f7aaaa8543c (<unknown module>)
SUMMARY: AddressSanitizer: 50 byte(s) leaked in 1 allocation(s).
Aborted
134
Jtreg version:
jtreg -version
jtreg 7.6-dev+0
Installed in /home/yansendao/git/jtreg/build/images/jtreg/lib/jtreg.jar
Running on platform version 24 from /home/yansendao/software/jdk/24/jdk-repo-binary.
Built with Java(TM) 2 SDK, Version 24 on February 08, 2025.
Copyright (c) 1999, 2022, Oracle and/or its affiliates. All rights reserved.
Use is subject to license terms.
JT Harness, version 6.0 ea b24 (February 08, 2025)
Java Assembler Tools, version 7.0 ea b09 (February 08, 2025)
TestNG: testng-7.3.0.jar, guice-5.1.0.jar, jcommander-1.82.jar
JUnit: junit-platform-console-standalone-1.11.0.jar
git remote -v ; git log -n 1
origin git@github.com:openjdk/jtreg.git (fetch)
origin git@github.com:openjdk/jtreg.git (push)
commit a3a514cc46c3fe17a2d0969878f0b630e9825c60 (HEAD -> master, origin/master, origin/HEAD)
Author: Jorn Vernee <jvernee@openjdk.org>
Date: Thu Feb 6 17:44:17 2025 +0000
7903934: Add support for query strings to the IntelliJ plugin
Reviewed-by: mcimadamore
export ASAN_OPTIONS=detect_leaks=1,abort_on_error=1
export LSAN_OPTIONS=suppressions="$PWD/suppressions-leak.txt,abort_on_error=1"
export UBSAN_OPTIONS="suppressions="$PWD/suppressions-UndefinedBehavior-clang.txt,print_stacktrace=1,abort_on_error=1"
time jtreg -w tmp -nr -jdk:build/linux-x86_64-server-fastdebug/images/jdk -e:LD_LIBRARY_PATH -v:fail,error -e:ASAN_OPTIONS -e:LSAN_OPTIONS -e:UBSAN_OPTIONS -e:ASAN_SYMBOLIZER_PATH test/jdk/java/awt/Choice/ChoiceMouseEventTest.java
Actual result:
Test result shows test passed, shows as below:
jtreg -w tmp -nr -jdk:build/linux-x86_64-server-fastdebug/images/jdk -e:LD_LIBRARY_PATH -v:fail,error -e:ASAN_OPTIONS -e:LSAN_OPTIONS -e:UBSAN_OPTIONS -e:ASAN_SYMBOLIZER_PATH test/jdk/java/awt/Choice/ChoiceMouseEventTest.java
--------------------------------------------------
TEST: java/awt/Choice/ChoiceMouseEventTest.java
TEST RESULT: Passed. Execution successful
--------------------------------------------------
Test results: passed: 1
Results written to /home/yansendao/git/jdk-asan-clang/tmp
Expect result:
The test reported memory leak by AddressSanitizer, and the exit code of java is 134, so test result should be failed or error.
The test run without jtreg shows below:
build/linux-x86_64-server-fastdebug/images/jdk/bin/java -cp tmp ChoiceMouseEventTest ; echo $?
=================================================================
==2847119==ERROR: LeakSanitizer: detected memory leaks
Direct leak of 50 byte(s) in 1 object(s) allocated from:
#0 0x7f7aca938d2e in malloc (/home/yansendao/software/acc/x86_64/lib64/clang/17/lib/linux/libclang_rt.asan-x86_64.so+0x138d2e)
#1 0x7f7ac394dba1 in os::malloc(unsigned long, MemTag, NativeCallStack const&) /home/yansendao/git/jdk-asan-clang/src/hotspot/share/runtime/os.cpp:657:3
#2 0x7f7ac394d87f in os::malloc(unsigned long, MemTag) /home/yansendao/git/jdk-asan-clang/src/hotspot/share/runtime/os.cpp:625:10
#3 0x7f7ac4b3c87d in Unsafe_AllocateMemory0(JNIEnv_*, _jobject*, long) /home/yansendao/git/jdk-asan-clang/src/hotspot/share/prims/unsafe.cpp:365:13
#4 0x7f7aaaa8bda7 (<unknown module>)
#5 0x7f7aaaa85346 (<unknown module>)
#6 0x7f7aaaa85346 (<unknown module>)
#7 0x7f7aaaa85346 (<unknown module>)
#8 0x7f7aaaa8543c (<unknown module>)
#9 0x7f7aaaa8543c (<unknown module>)
#10 0x7f7aaaa8543c (<unknown module>)
#11 0x7f7aaaa8543c (<unknown module>)
#12 0x7f7aaaa8543c (<unknown module>)
#13 0x7f7aaaa8543c (<unknown module>)
#14 0x7f7aaaa8543c (<unknown module>)
#15 0x7f7aaaa8543c (<unknown module>)
#16 0x7f7aaaa8543c (<unknown module>)
#17 0x7f7aaaa8543c (<unknown module>)
#18 0x7f7aaaa8543c (<unknown module>)
#19 0x7f7aaaa8543c (<unknown module>)
#20 0x7f7aaaa8543c (<unknown module>)
#21 0x7f7aaaa8543c (<unknown module>)
#22 0x7f7aaaa8543c (<unknown module>)
#23 0x7f7aaaa8543c (<unknown module>)
#24 0x7f7aaaa8543c (<unknown module>)
#25 0x7f7aaaa8543c (<unknown module>)
#26 0x7f7aaaa85715 (<unknown module>)
#27 0x7f7aaaa8543c (<unknown module>)
#28 0x7f7aaaa8543c (<unknown module>)
#29 0x7f7aaaa8543c (<unknown module>)
SUMMARY: AddressSanitizer: 50 byte(s) leaked in 1 allocation(s).
Aborted
134
Jtreg version:
jtreg -version
jtreg 7.6-dev+0
Installed in /home/yansendao/git/jtreg/build/images/jtreg/lib/jtreg.jar
Running on platform version 24 from /home/yansendao/software/jdk/24/jdk-repo-binary.
Built with Java(TM) 2 SDK, Version 24 on February 08, 2025.
Copyright (c) 1999, 2022, Oracle and/or its affiliates. All rights reserved.
Use is subject to license terms.
JT Harness, version 6.0 ea b24 (February 08, 2025)
Java Assembler Tools, version 7.0 ea b09 (February 08, 2025)
TestNG: testng-7.3.0.jar, guice-5.1.0.jar, jcommander-1.82.jar
JUnit: junit-platform-console-standalone-1.11.0.jar
git remote -v ; git log -n 1
origin git@github.com:openjdk/jtreg.git (fetch)
origin git@github.com:openjdk/jtreg.git (push)
commit a3a514cc46c3fe17a2d0969878f0b630e9825c60 (HEAD -> master, origin/master, origin/HEAD)
Author: Jorn Vernee <jvernee@openjdk.org>
Date: Thu Feb 6 17:44:17 2025 +0000
7903934: Add support for query strings to the IntelliJ plugin
Reviewed-by: mcimadamore