|
||||||||
This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators. For more information on JIRA, see: http://www.atlassian.com/software/jira |
You received this message because you are subscribed to the Google Groups "Jenkins Issues" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-issues+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
There are some pretty important dots missing here.
NativePRNG$RandomIO.implNextBytes() does unfortunately use a global lock, and this method gets called every time SecureRandom is used to generate more bytes. So one can imagine if lots of threads want to do this, the lock gets contended and slows down.
But NativePRNG$RandomIO.implNextBytes() doesn't use /dev/random by itself. It delegates to sun.security.provider.SecureRandom#engineNextBytes() (which is what getMixRandom() returns), then it reads from /dev/urandom (happen in ensureBufferValid) and XOR bytes.