Red Hat OpenJDK 1.7.0.211 crashes in ObjectMonitor enter thread

Solution Verified - Updated -

Issue

  • JBoss is crashing with authentication through a UserRolesLoginModule after updating OpenJDK 1.7.211 or later:
#  SIGSEGV (0xb) at pc=0x00007f35d3a26649, pid=8012, tid=139867725408000
#
# JRE version: OpenJDK Runtime Environment (7.0_211-b02) (build 1.7.0_211-mockbuild_2019_02_27_09_45-b00)

Stack: [0x00007fa1457d8000,0x00007fa1458d9000],  sp=0x00007fa1458d6570,  free space=1017k
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
V  [libjvm.so+0x7f4669]  ObjectMonitor::enter(Thread*)+0xa29
V  [libjvm.so+0x42964d]  ClassLoaderDependencies::locked_add(objArrayHandle, objArrayHandle, objArrayHandle, Thread*)+0x3d
V  [libjvm.so+0x429d40]  ClassLoaderDependencies::add(Handle, Handle, Thread*)+0x2a0
V  [libjvm.so+0x42a008]  ClassLoaderDependencies::record_dependency(oopDesc*, oopDesc*, Thread*)+0x98
V  [libjvm.so+0x91244b]  SystemDictionary::resolve_instance_class_or_null(Symbol*, Handle, Handle, Thread*)+0xb8b
V  [libjvm.so+0x912808]  SystemDictionary::resolve_or_fail(Symbol*, Handle, Handle, bool, Thread*)+0x28
V  [libjvm.so+0x665c64]  find_class_from_class_loader(JNIEnv_*, Symbol*, unsigned char, Handle, Handle, unsigned char, Thread*)+0x34
V  [libjvm.so+0x6660d9]  JVM_FindClassFromCaller+0x189
C  [libjava.so+0xd500]  Java_java_lang_Class_forName0+0x140
J 1851  java.lang.Class.forName0(Ljava/lang/String;ZLjava/lang/ClassLoader;Ljava/lang/Class;)Ljava/lang/Class; (0 bytes) @ 0x00007fa1dd3b1cd4 [0x00007fa1dd3b1be0+0xf4]

Java frames: (J=compiled Java code, j=interpreted, Vv=VM code)
J 1851  java.lang.Class.forName0(Ljava/lang/String;ZLjava/lang/ClassLoader;Ljava/lang/Class;)Ljava/lang/Class; (0 bytes) @ 0x00007fa1dd3b1c5a [0x00007fa1dd3b1be0+0x7a]
J 712 C2 javax.security.auth.login.LoginContext.invoke(Ljava/lang/String;)V (1094 bytes) @ 0x00007fa1dd1ff464 [0x00007fa1dd1feda0+0x6c4]
J 1110 C2 javax.security.auth.login.LoginContext$4.run()Ljava/lang/Object; (5 bytes) @ 0x00007fa1dd1e6e6c [0x00007fa1dd1e6e20+0x4c]
v  ~StubRoutines::call_stub
J 928  java.security.AccessController.doPrivileged(Ljava/security/PrivilegedExceptionAction;Ljava/security/AccessControlContext;)Ljava/lang/Object; (0 bytes) @ 0x00007fa1dd214203 [0x00007fa1dd2141a0+0x63]
J 1105 C2 org.jboss.as.web.security.JBossWebRealm.authenticate(Ljava/lang/String;Ljava/lang/String;)Ljava/security/Principal; (449 bytes) @ 0x00007fa1dd2f1720 [0x00007fa1dd2f0520+0x1200]
J 1659 C2 org.apache.catalina.authenticator.BasicAuthenticator.authenticate(Lorg/apache/catalina/connector/Request;Ljavax/servlet/http/HttpServletResponse;Lorg/apache/catalina/deploy/LoginConfig;)Z (440 bytes) @ 0x00007fa1dd40cc6c [0x00007fa1dd40c340+0x92c]
J 1125 C2 org.apache.catalina.authenticator.AuthenticatorBase.invoke(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;)V (681 bytes) @ 0x00007fa1dd2d39a4 [0x00007fa1dd2d2e20+0xb84]
J 1793 C2 org.jboss.as.web.security.SecurityContextAssociationValve.invoke(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;)V (452 bytes) @ 0x00007fa1dd43fe74 [0x00007fa1dd43f3e0+0xa94]
J 1237 C2 org.apache.catalina.core.StandardHostValve.invoke(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;)V (437 bytes) @ 0x00007fa1dd330720 [0x00007fa1dd3303e0+0x340]
J 688 C2 org.apache.catalina.valves.AccessLogValve.invoke(Lorg/apache/catalina/connector/Request;Lorg/apache/catalina/connector/Response;)V (150 bytes) @ 0x00007fa1dd1f350c [0x00007fa1dd1f3460+0xac]
J 1368 C2 org.apache.catalina.connector.CoyoteAdapter.service(Lorg/apache/coyote/Request;Lorg/apache/coyote/Response;)V (574 bytes) @ 0x00007fa1dd37d734 [0x00007fa1dd37d3e0+0x354]
J 1069 C2 org.apache.coyote.http11.Http11Processor.process(Ljava/net/Socket;)Lorg/apache/tomcat/util/net/JIoEndpoint$Handler$SocketState; (585 bytes) @ 0x00007fa1dd2b7930 [0x00007fa1dd2b7340+0x5f0]
J 1825% C2 org.apache.tomcat.util.net.JIoEndpoint$Worker.run()V (159 bytes) @ 0x00007fa1dd461540 [0x00007fa1dd4613a0+0x1a0]
j  java.lang.Thread.run()V+11
v  ~StubRoutines::call_stub

Environment

  • Red Hat JBoss Enterprise Application Platform (EAP)
    • 6.x
  • OpenJDK 7 u211
  • Red Hat Enterprise Linux (RHEL)
    • 7.x

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase, tools, and much more.

Current Customers and Partners

Log in for full access

Log In

New to Red Hat?

Learn more about Red Hat subscriptions

Using a Red Hat product through a public cloud?

How to access this content