read_random() will often induce a reseed in fortuna; make the reseed
lock a spinlock to allow random consumers in non-sleepable contexts.
The fX implementation has the same issue in the standard read path with
the brng lock, but that's out of scope for the time being as I've not
done any testing with fX.
Sponsored by: NetApp, Inc.
Sponsored by: Klara, Inc.