On Thu, 23 Jan 2025 20:15:35 GMT, Chris Plummer <cjplum...@openjdk.org> wrote:
> If you run hotspot with -XX:+DeoptimizeObjectsALot, it will create one or > more DeoptimizeObjectsALotThread threads. This is one of many JavaThread > subclasses that SA needs to know about, but in this case it does not. When SA > tries to create a mirror of one of these threads, it fails with: > > > stderr: [java.lang.RuntimeException: Unable to deduce type of thread from > address 0x0000ffff34144e30 (expected type JavaThread, CompilerThread, > MonitorDeflationThread, AttachListenerThread, StringDedupThread, > NotificationThread, ServiceThread or JvmtiAgentThread) > at > jdk.hotspot.agent/sun.jvm.hotspot.runtime.Threads.createJavaThreadWrapper(Threads.java:196) > at > jdk.hotspot.agent/sun.jvm.hotspot.runtime.Threads.getJavaThreadAt(Threads.java:178) > > > The following can be used to reproduce this failure. Most SA tests will fail: > > make test TEST=serviceability/sa TEST_VM_OPTS=-XX:+DeoptimizeObjectsALot > > I had to move the native DeoptimizeObjectsALotThread declaration to > compileBroker.hpp to make it visible to vmStructs.cpp. > > I tested with the above "make test" command and ran all svc tier1, tier2, > tier3, and tier5 tests. This pull request has now been integrated. Changeset: 21feef32 Author: Chris Plummer <cjplum...@openjdk.org> URL: https://git.openjdk.org/jdk/commit/21feef32803b2593b097fb225c7a4c7cd46525da Stats: 87 lines in 6 files changed: 62 ins; 15 del; 10 mod 8348239: SA does not know about DeoptimizeObjectsALotThread Reviewed-by: kevinw, dlong, dholmes, lmesnik ------------- PR: https://git.openjdk.org/jdk/pull/23279