Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8356970

[asan] jtreg :tier1 tests fail on SUSE Linux related to getaddrinfo

XMLWordPrintable

    • x86_64
    • linux

      Building on Linux x86_64 (SLES15.5) with ASAN enabled (--enable-asan ) works and the created JDK can be used for basic runs like 'java -version'.
      But when running jdk :tier1 jtreg tests, the following issue shows up :

      # SIGSEGV (0xb) at pc=0x0000000000000000, pid=78762, tid=79062
      #
      # JRE version: OpenJDK Runtime Environment (25.0.0.1) (build 25.0.0.1-internal-adhoc.myuser.jdk)
      # Java VM: OpenJDK 64-Bit Server VM (25.0.0.1-internal-adhoc.myuser.jdk, mixed mode, sharing, tiered, compressed oops, compressed class ptrs, g1 gc, linux-amd64)
      # Problematic frame:
      # C [libasan.so.8+0x83e62]
      #

      --------------- S U M M A R Y ------------

      Command Line: -Dprogram=jtreg /openjdk/tools/jtreg_latest/lib/jtreg.jar -dir:/myjdkdir/jdk/test/jdk -exclude:jtregbasejdk/collected_problemlist.txt -timeoutFactor:5 -agentvm -conc:4 -ignore:quiet -k:(!ignore)&(!headful)&(!printer) -verbose:nopass
      -a -ea -esa -jdk:images/jdk -retain:all -w jtregbasejdk/workdir -r jtregbasejdk/reportdir -javaoption:-Djava.util.prefs.userRoot=/myjdkdir/build_mylinuxhost_asan/jtregbasejdk/workdir/tmp -javaoption:-Djava.io.tmpdir=/myjdkdir/build_mylinuxhost_asan/jtregbasejdk/workdir/tmp
      -nativepath:/myjdkdir/build_mylinuxhost_asan/images/test/jdk/jtreg/native -vmoption:-Djava.awt.headless=true -vmoption:-Djava.util.prefs.userRoot=/myjdkdir/build_mylinuxhost_asan/jtregbasejdk/workdir/tmp
      -vmoption:-Djava.io.tmpdir=/myjdkdir/build_mylinuxhost_asan/jtregbasejdk/workdir/tmp :tier1

      Host: Intel(R) Xeon(R) CPU E5-2699 v4 @ 2.20GHz, 88 cores, 62G, SUSE Linux Enterprise Server 15 SP5
      Time: Tue May 13 17:30:54 2025 CEST elapsed time: 10.452824 seconds (0d 0h 0m 10s)

      --------------- T H R E A D ---------------

      Current thread (0x000051d00003de80): JavaThread "DefaultTestRunner:Worker-2:2" [_thread_in_native, id=79062, stack(0x00007f5d71b17000,0x00007f5d71c17000) (1024K)]

      Stack: [0x00007f5d71b17000,0x00007f5d71c17000], sp=0x00007f5d71c0fbf0, free space=994k
      Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
      C [libasan.so.8+0x83e62]
      C [libnss_dns.so.2+0x1798] gaih_getanswer_slice.isra.0+0x44a
      Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
      j java.net.Inet6AddressImpl.lookupAllHostAddr(Ljava/lang/String;I)[Ljava/net/InetAddress;+0 java.base@25.0.0.1-internal
      j java.net.Inet6AddressImpl.lookupAllHostAddr(Ljava/lang/String;Ljava/net/spi/InetAddressResolver$LookupPolicy;)[Ljava/net/InetAddress;+6 java.base@25.0.0.1-internal
      j java.net.InetAddress$PlatformResolver.lookupByName(Ljava/lang/String;Ljava/net/spi/InetAddressResolver$LookupPolicy;)Ljava/util/stream/Stream;+24 java.base@25.0.0.1-internal
      j java.net.InetAddress.getAddressesFromNameService(Ljava/lang/String;)[Ljava/net/InetAddress;+13 java.base@25.0.0.1-internal
      j java.net.InetAddress$NameServiceAddresses.get()[Ljava/net/InetAddress;+39 java.base@25.0.0.1-internal
      j java.net.InetAddress.getAllByName0(Ljava/lang/String;Z)[Ljava/net/InetAddress;+154 java.base@25.0.0.1-internal
      j java.net.InetAddress.getLocalHost()Ljava/net/InetAddress;+59 java.base@25.0.0.1-internal
      j com.sun.javatest.regtest.config.RegressionEnvironment$CachedCanonicalHostName.<clinit>()V+0
      v ~StubRoutines::call_stub 0x00007f61d7369fa6
      j com.sun.javatest.regtest.config.RegressionEnvironment.getHostName()Ljava/lang/String;+0
      j com.sun.javatest.regtest.exec.RegressionScript.run([Ljava/lang/String;Lcom/sun/javatest/TestDescription;Lcom/sun/javatest/TestEnvironment;)Lcom/sun/javatest/Status;+115
      j com.sun.javatest.Script.run()V+669
      j com.sun.javatest.DefaultTestRunner.runTest(Lcom/sun/javatest/TestDescription;)Z+91
      j com.sun.javatest.DefaultTestRunner$1.run()V+17
      v ~StubRoutines::call_stub 0x00007f61d7369fa6

      siginfo: si_signo: 11 (SIGSEGV), si_code: 1 (SEGV_MAPERR), si_addr: 0x0000000000000000

      Is this related to a 'bad' ASAN version, or can we do something about it in OpenJDK itself or in jtreg ?

            Unassigned Unassigned
            mbaesken Matthias Baesken
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: