Java throws "mbind: Invalid argument" message when invoked with UseNUMA

Bug #1697348 reported by bugproxy
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
The Ubuntu-power-systems project
Fix Released
Medium
Canonical Foundations Team
openjdk-8 (Ubuntu)
Fix Released
Medium
Ubuntu on IBM Power Systems Bug Triage

Bug Description

Problem Description
========================
Java throws "mbind: Invalid argument" message when invoked with UseNUMA flag in certain numa topologies with non-consecutive nodes.

---uname output---
not relevant

---Additional Hardware Info---
The JVM code used to discover which numa nodes it can bind assumes that nodes are consecutive and tries to bind from 0 to numa_max_node(), i.e. 0 to the highest node number available on the system. However, at least on PPC64 that assumption is not always true. For instance, the following numa
topology:

available: 4 nodes (0-1,16-17)
node 0 cpus: 0 8 16 24 32
node 0 size: 130706 MB
node 0 free: 145 MB
node 1 cpus: 40 48 56 64 72
node 1 size: 0 MB
node 1 free: 0 MB
node 16 cpus: 80 88 96 104 112
node 16 size: 130630 MB
node 16 free: 529 MB
node 17 cpus: 120 128 136 144 152
node 17 size: 0 MB
node 17 free: 0 MB
node distances:
node 0 1 16 17
0: 10 20 40 40
1: 20 10 40 40
16: 40 40 10 20
17: 40 40 20 10

Machine Type = VM and BM

Steps to Reproduce
=============================
 On an topology similar to the aforementioned numa topology just issue:
"java -XX:+UseParallelGC -XX:+UseNUMA -version"

== Comment: #1 - Gustavo Bueno Romero <email address hidden> - 2017-06-09 10:19:37 ==
Bug is already fixed upstream:

https://bugs.openjdk.java.net/browse/JDK-8181462
http://hg.openjdk.java.net/jdk8u/jdk8u-dev/hotspot/rev/4a575a49e938

== Comment: #3 - Gustavo Bueno Romero <email address hidden> - 2017-06-09 10:22:03 ==
Dear Daitx, could you please apply that 8u upstream fix on the next CPU cycle (around 18 July), please? Thank you. Regards.

bugproxy (bugproxy)
tags: added: architecture-ppc64le bugnameltc-155628 severity-medium targetmilestone-inin---
Changed in ubuntu:
assignee: nobody → Ubuntu on IBM Power Systems Bug Triage (ubuntu-power-triage)
affects: ubuntu → openjdk-8 (Ubuntu)
bugproxy (bugproxy)
tags: added: targetmilestone-inin16043
removed: targetmilestone-inin---
Frank Heimes (fheimes)
Changed in ubuntu-power-systems:
assignee: nobody → Canonical Server Team (canonical-server)
Revision history for this message
bugproxy (bugproxy) wrote : Comment bridged from LTC Bugzilla

------- Comment From <email address hidden> 2017-07-18 16:45 EDT-------
Canonical, any update on this? Thank you.

Manoj Iyer (manjo)
Changed in openjdk-8 (Ubuntu):
importance: Undecided → Medium
Changed in ubuntu-power-systems:
importance: Undecided → Medium
tags: added: triage-r
Revision history for this message
Tiago Stürmer Daitx (tdaitx) wrote :

Sorry for the lateness, for some reason the bugproxy emails from different issues are being grouped together by gmail, which caused it to be incorrectly labeled by my filters - should be fixed now.

This has been added to the OpenJDK 8 update that is under review by the security team. It will be included in the next OpenJDK 8 upload, which should happen somewhere next week.

Revision history for this message
bugproxy (bugproxy) wrote :

------- Comment From <email address hidden> 2017-07-20 17:55 EDT-------
Thanks, Daitx

Frank Heimes (fheimes)
Changed in ubuntu-power-systems:
assignee: Canonical Server Team (canonical-server) → Canonical Foundations Team (canonical-foundations)
Revision history for this message
Launchpad Janitor (janitor) wrote :
Download full text (3.1 KiB)

This bug was fixed in the package openjdk-8 - 8u141-b15-1

---------------
openjdk-8 (8u141-b15-1) unstable; urgency=high

  * Update to 8u141-b15, Hotspot 8u141-b16 for AArch64.
  * Security fixes from 8u141:
    - CVE-2017-10102, S8163958: Improved garbage collection.
    - CVE-2017-10053, S8169209: Improved image post-processing steps.
    - CVE-2017-10067, S8169392: Additional jar validation steps.
    - CVE-2017-10081, S8170966: Right parenthesis issue.
    - CVE-2017-10078, S8171539: Better script accessibility for JavaScript.
    - CVE-2017-10087, S8172204: Better Thread Pool execution.
    - CVE-2017-10089, S8172461: Service Registration Lifecycle.
    - CVE-2017-10090, S8172465: Better handling of channel groups.
    - CVE-2017-10096, S8172469: Transform Transformer Exceptions.
    - CVE-2017-10101, S8173286: Better reading of text catalogs.
    - CVE-2017-10107, S8173697: Less Active Activations.
    - CVE-2017-10074, S8173770: Image conversion improvements.
    - CVE-2017-10110, S8174098: Better image fetching.
    - CVE-2017-10108, S8174105: Better naming attribution.
    - CVE-2017-10109, S8174113: Better sourcing of code.
    - CVE-2017-10115, S8175106: Higher quality DSA operations.
    - CVE-2017-10118, S8175110: Higher quality ECDSA operations.
    - CVE-2017-10116, S8176067: Proper directory lookup processing.
    - CVE-2017-10135, S8176760: Better handling of PKCS8 material.
    - CVE-2017-10176, S8178135: Additional elliptic curve support.
    - CVE-2017-10193, S8179101: Improve algorithm constraints implementation.
    - CVE-2017-10198, S8179998: Clear certificate chain connections.
    - S8174770: Check registry registration location.
    - S8174873: Improved certificate procesing.
    - S8176055: JMX diagnostic improvements.
    - S8176536: Improved algorithm constraints checking.
    - S8181420: PPC: Image conversion improvements.
    - S8182054: Improve wsdl support.
    - S8184185: Rearrange MethodHandle arrangements.

  [ Matthias Klose ]
  * Provide jvmdir symlink in /usr/lib/debug. Closes: #867314.
  * Fix pt_BR translation in awt message. Closes: #863331.

  [ Tiago Stürmer Daitx ]
  * debian/rules:
    - enable apport hook on Ubuntu and derivatives only.
    - remove with_zenhai logic.
    - remove unused with_tzdata logic, move tzdata build dependency
      to control.in.
    - add Breaks:tzdata-java except for wheezy, jessie or trusty.
    - re-enable jamvm for Xenial only.
    - run debian/control before build so we won't build with a invalid
      control file.
    - remove logic to select between ttf or font packages and depend
      on fonts-wqy-microhei and fonts-wqy-zenhei instead
  * debian/apport-hook.py: add an apport hook to include conffiles
    modified by the user on any report and the hs_err log file on
    crash report only. LP: #1696886.
  * patches/fontconfig-arphic-uming.diff: only enabled when with_zenhai
    was false; not required since lenny.
  * patches/hotspot-ppc64el-S8175813-mbind-invalid-argument.patch: prevent
    invalid argument message when invoking UseNUMA on a system with
    non-consecutive numa topology. LP: #1697348.

 -- Matthias Klose <email address hidden> Fri, 21 Jul 2017 1...

Read more...

Changed in openjdk-8 (Ubuntu):
status: New → Fix Released
Frank Heimes (fheimes)
Changed in ubuntu-power-systems:
status: New → Fix Released
Manoj Iyer (manjo)
tags: added: triage-g
removed: triage-r
tags: added: id-5971a858c08074bb21a8862f
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.