Found one Java-level deadlock:
=============================
"pool-1-thread-17 for channel id=215328":
waiting to lock monitor 0x00007f2834022ae8 (object 0x000000076ec31200, a hudson.remoting.RemoteClassLoader),
which is held by "pool-1-thread-7"
"pool-1-thread-7":
waiting to lock monitor 0x00007f2814005a28 (object 0x000000076fc8fda8, a hudson.slaves.SlaveComputer$SlaveInitializer$1),
which is held by "pool-1-thread-17 for channel id=215328"
Java stack information for the threads listed above:
===================================================
"pool-1-thread-17 for channel id=215328":
at hudson.slaves.SlaveComputer$SlaveInitializer$1.publish(SlaveComputer.java:1037)
- locked <0x000000076fc8fda8> (a hudson.slaves.SlaveComputer$SlaveInitializer$1)
at java.util.logging.Logger.log(Logger.java:738)
at java.util.logging.Logger.doLog(Logger.java:765)
at java.util.logging.Logger.log(Logger.java:788)
at java.util.logging.Logger.fine(Logger.java:1516)
at hudson.remoting.Channel.send(Channel.java:764)
- locked <0x000000076e47f300> (a hudson.remoting.Channel)
at ...
"pool-1-thread-7":
at hudson.slaves.SlaveComputer$SlaveInitializer$1.publish(SlaveComputer.java:1036)
- waiting to lock <0x000000076fc8fda8> (a hudson.slaves.SlaveComputer$SlaveInitializer$1)
at java.util.logging.Logger.log(Logger.java:738)
at java.util.logging.Logger.doLog(Logger.java:765)
at java.util.logging.Logger.log(Logger.java:831)
at hudson.remoting.RemoteClassLoader.prefetchClassReference(RemoteClassLoader.java:372)
at hudson.remoting.RemoteClassLoader.loadWithMultiClassLoader(RemoteClassLoader.java:214)
at hudson.remoting.RemoteClassLoader.findClass(RemoteClassLoader.java:184)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
- locked <0x000000076ec31200> (a hudson.remoting.RemoteClassLoader)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at ...
Build for testing: https://repo.jenkins-ci.org/incrementals/org/jenkins-ci/main/jenkins-war/2.254-rc30357.e908f19c8926/jenkins-war-2.254-rc30357.e908f19c8926.war