qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Namrata Bhave <1920913@bugs.launchpad.net>
To: qemu-devel@nongnu.org
Subject: [Bug 1920913] Re: Openjdk11+ fails to install on s390x
Date: Tue, 04 May 2021 14:17:39 -0000	[thread overview]
Message-ID: <162013785970.767.5036320595990346538.malone@chaenomeles.canonical.com> (raw)
In-Reply-To: 161649998851.23806.5550710395623491265.malonedeb@chaenomeles.canonical.com

Some more analysis:
Tried to explicitely compile as well as exclude few methods during compilation such as  'java.lang.StringLatin1::hashCode', 'java.util.concurrent.ConcurrentHashMap', 'java.lang.String*' which are part of trace as logged in above comments, with the help of advanced JIT options. 
However it is not good enough to draw any conclusion as `java -version` command passes on random runs. `mvn -v` which consistently fails, is seen to be passing always with any of above combination set using MAVEN_OPTS. 

Also compared the assembly log as @jonalbrecht mentioned above on qemu setup vs native s390x for `mvn -v` command. 
The initial few compiled methods match, however it fails for 'java.lang.String::isLatin1':

Failure in qemu :
ImmutableOopMap{Z_R2=Oop }pc offsets: 170 232 244 272 Compiled method (c1)    1077   12       2       java.lang.String::equalsIgnoreCase (45 bytes)
 total in heap  [0x00000040117f2210,0x00000040117f28b0] = 1696
 relocation     [0x00000040117f2370,0x00000040117f23c8] = 88
 constants      [0x00000040117f2400,0x00000040117f2440] = 64
 main code      [0x00000040117f2440,0x00000040117f2600] = 448
 stub code      [0x00000040117f2600,0x00000040117f2668] = 104
 metadata       [0x00000040117f2668,0x00000040117f2688] = 32
 scopes data    [0x00000040117f2688,0x00000040117f2738] = 176
 scopes pcs     [0x00000040117f2738,0x00000040117f2888] = 336
 dependencies   [0x00000040117f2888,0x00000040117f2890] = 8
 nul chk table  [0x00000040117f2890,0x00000040117f28b0] = 32

ImmutableOopMap{}pc offsets: 288
ImmutableOopMap{Z_R2=Oop Z_R5=Oop }pc offsets: 372
ImmutableOopMap{Z_R5=Oop Z_R2=Oop }pc offsets: 384 392 400 unimplemented opcode 0x0000
#
# A fatal error has been detected by the Java Runtime Environment:
#
#  SIGILL (0x4) at pc=0x00000040117f1680, pid=11738, tid=11787
#
# JRE version: OpenJDK Runtime Environment (11.0.11+9) (build 11.0.11+9-Ubuntu-0ubuntu2.20.04)
# Java VM: OpenJDK 64-Bit Server VM (11.0.11+9-Ubuntu-0ubuntu2.20.04, compiled mode, tiered, compressed oops, g1 gc, linux-s390x)
# Problematic frame:
# J 9 c1 java.lang.String.hashCode()I java.base (49 bytes) @ 0x00000040117f1680 [0x00000040117f1640+0x0000000000000040]
#
# Core dump will be written. Default location: Core dumps may be processed with "/usr/share/apport/apport %p %s %c %d %P %E" (or dumping to //core.11738)
#
# An error report file with more information is saved as:
# //hs_err_pid11738.log


vs

Native s390x log:
ImmutableOopMap{Z_R2=Oop }pc offsets: 170 232 244 272 Compiled method (c1)      34   12       2       java.lang.String::equalsIgnoreCase (45 bytes)
 total in heap  [0x000003ff7a097110,0x000003ff7a0977b0] = 1696
 relocation     [0x000003ff7a097270,0x000003ff7a0972c8] = 88
 constants      [0x000003ff7a097300,0x000003ff7a097340] = 64
 main code      [0x000003ff7a097340,0x000003ff7a097500] = 448
 stub code      [0x000003ff7a097500,0x000003ff7a097568] = 104
 metadata       [0x000003ff7a097568,0x000003ff7a097588] = 32
 scopes data    [0x000003ff7a097588,0x000003ff7a097638] = 176
 scopes pcs     [0x000003ff7a097638,0x000003ff7a097788] = 336
 dependencies   [0x000003ff7a097788,0x000003ff7a097790] = 8
 nul chk table  [0x000003ff7a097790,0x000003ff7a0977b0] = 32

ImmutableOopMap{}pc offsets: 276
ImmutableOopMap{Z_R2=Oop Z_R5=Oop }pc offsets: 360
ImmutableOopMap{Z_R5=Oop Z_R2=Oop }pc offsets: 372 380 388 Compiled method (c1)      34   13       2       java.lang.String::isLatin1 (19 bytes)
 total in heap  [0x000003ff7a097810,0x000003ff7a097c10] = 1024
 relocation     [0x000003ff7a097970,0x000003ff7a097990] = 32
 constants      [0x000003ff7a0979c0,0x000003ff7a097a00] = 64
 main code      [0x000003ff7a097a00,0x000003ff7a097b40] = 320
 stub code      [0x000003ff7a097b40,0x000003ff7a097b98] = 88
 metadata       [0x000003ff7a097b98,0x000003ff7a097ba0] = 8
 scopes data    [0x000003ff7a097ba0,0x000003ff7a097bb8] = 24
 scopes pcs     [0x000003ff7a097bb8,0x000003ff7a097c08] = 80
 dependencies   [0x000003ff7a097c08,0x000003ff7a097c10] = 8 

..................................................

-- 
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1920913

Title:
  Openjdk11+ fails to install on s390x

Status in QEMU:
  New

Bug description:
  While installing openjdk11 or higher from repo, it crashes while configuring ca-certificates-java.
  Although `java -version` passes, `jar -version` crashes. Detailed logs attached to this issue.

  ```
  # A fatal error has been detected by the Java Runtime Environment:
  #
  #  SIGILL (0x4) at pc=0x00000040126f9980, pid=8425, tid=8430
  #
  # JRE version: OpenJDK Runtime Environment (11.0.10+9) (build 11.0.10+9-Ubuntu-0ubuntu1.20.04)
  # Java VM: OpenJDK 64-Bit Server VM (11.0.10+9-Ubuntu-0ubuntu1.20.04, mixed mode, tiered, compressed oops, g1 gc, linux-s390x)
  # Problematic frame:
  # J 4 c1 java.lang.StringLatin1.hashCode([B)I java.base@11.0.10 (42 bytes) @ 0x00000040126f9980 [0x00000040126f9980+0x0000000000000000]
  #
  # Core dump will be written. Default location: Core dumps may be processed with "/usr/share/apport/apport %p %s %c %d %P %E" (or dumping to //core.8425)
  #
  # An error report file with more information is saved as:
  # //hs_err_pid8425.log
  sed with "/usr/share/apport/apport %p %s %c %d %P %E" (or dumping to /root/core.10740)
  #
  # An error report file with more information is saved as:
  # /root/hs_err_pid10740.log
  ```

  Observed this on s390x/ubuntu as well as s390x/alpine when run on amd64 host.
  Please note, on native s390x, the installation is successful. Also this crash is not observed while installing openjdk-8-jdk.

  Qemu version: 5.2.0

  Please let me know if any more details are needed.

To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1920913/+subscriptions


  parent reply	other threads:[~2021-05-04 14:29 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-03-23 11:46 [Bug 1920913] [NEW] Openjdk11+ fails to install on s390x Namrata Bhave
2021-03-23 12:10 ` [Bug 1920913] " Peter Maydell
2021-03-23 12:42 ` Namrata Bhave
2021-03-30  8:37 ` David Hildenbrand
2021-03-30 10:03 ` Namrata Bhave
2021-04-08 13:27 ` Namrata Bhave
2021-04-14 10:04 ` Namrata Bhave
2021-04-27 14:34 ` Jonathan Albrecht
2021-05-03 20:15 ` Jonathan Albrecht
2021-05-04 14:17 ` Namrata Bhave [this message]
2021-05-15 14:05 ` Thomas Huth

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=162013785970.767.5036320595990346538.malone@chaenomeles.canonical.com \
    --to=1920913@bugs.launchpad.net \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).