Module Name: src Committed By: riastradh Date: Wed Feb 17 00:43:43 UTC 2016
Modified Files: src/sys/kern: kern_rndq.c src/sys/sys: rndsource.h Log Message: Add rnd_add_data_sync for synchronous on-demand rndsource callbacks. Avoids lock recursion in rndsinks: rndsink user holds lock calls rndsink_request calls rnd_getmore calls an rndsource callback calls rnd_add_data calls rnd_process_events calls rndsinks_distribute calls rndsink callback acquires rndsink user lock. This can happen only before the rnd_process_events softint is established, but that's enough to cause a problem and is the main reason why all our HWRNG drivers are so byzantine (soon to be fixed!). ok tls To generate a diff of this commit: cvs rdiff -u -r1.75 -r1.76 src/sys/kern/kern_rndq.c cvs rdiff -u -r1.4 -r1.5 src/sys/sys/rndsource.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.