History log of /haiku/src/add-ons/kernel/bus_managers/random/yarrow_rng.cpp
Revision Date Author Comments
# 34e92438 19-Nov-2022 Jérôme Duval <jerome.duval@gmail.com>

random: always use the PRNG, and use entropy sources to feed it

remove the yarrow module. the hardware modules can push entropy with queue_randomness().
virtio_rng will now push entropy every 300 seconds.
helps with #14937

Change-Id: If76c5deabf61dc616a0e051332f44b89deb6b8a1
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5824
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# 95080923 15-Aug-2022 Michael Brumbelow <mbrumbelow@mac.com>

Removed 'register' storage class compiler warnings

Change-Id: Iba89a9d0845bf7e816983f903281d33e273f6e35
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5558
Reviewed-by: X512 <danger_mail@list.ru>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>


# 144f03cd 10-Jan-2018 Jérôme Duval <jerome.duval@gmail.com>

random: use user_memcpy/user_strlcpy to read/write the user buffer.

* also check the user buffer address.


# 29e65827 09-Oct-2013 Pawel Dziepak <pdziepak@quarnos.org>

kernel: Remove possibility to yield to all threads

Kernel support for yielding to all (including lower priority) threads
has been removed. POSIX sched_yield() remains unchanged.

If a thread really needs to yield to everyone it can reduce its priority
to the lowest possible and then yield (it will then need to manually
return to its prvious priority upon continuing).


# 8d2bf695 29-Aug-2013 Jérôme Duval <jerome.duval@gmail.com>

random: add a Virtio RNG module

* The default module is replaced by the Virtio RNG module when found.
* This can have the undesired effect of rendering /dev/urandom slow.
* Tested with the following QEmu command line option:
-device virtio-rng-pci,rng=rng0 -object rng-random,filename=/dev/random,id=rng0
* moved random.h to private/drivers headers.


# f73fb105 27-Aug-2013 Jérôme Duval <jerome.duval@gmail.com>

random: added a bus interface for RNG modules.

* Yarrow RNG is the default RNG module.


# 7032e703 27-Aug-2013 Jérôme Duval <jerome.duval@gmail.com>

random: move to bus_managers/


# 29e65827fd93f67acbebcdbbe1f233b004a48e18 09-Oct-2013 Pawel Dziepak <pdziepak@quarnos.org>

kernel: Remove possibility to yield to all threads

Kernel support for yielding to all (including lower priority) threads
has been removed. POSIX sched_yield() remains unchanged.

If a thread really needs to yield to everyone it can reduce its priority
to the lowest possible and then yield (it will then need to manually
return to its prvious priority upon continuing).


# 8d2bf6953e851d431fc67de1bc970c40afa79e9f 29-Aug-2013 Jérôme Duval <jerome.duval@gmail.com>

random: add a Virtio RNG module

* The default module is replaced by the Virtio RNG module when found.
* This can have the undesired effect of rendering /dev/urandom slow.
* Tested with the following QEmu command line option:
-device virtio-rng-pci,rng=rng0 -object rng-random,filename=/dev/random,id=rng0
* moved random.h to private/drivers headers.


# f73fb1051dbdebede4a6ecec5b37674237f0b528 27-Aug-2013 Jérôme Duval <jerome.duval@gmail.com>

random: added a bus interface for RNG modules.

* Yarrow RNG is the default RNG module.


# 7032e7033039a3bea39e49fdd7084369ce9c7d47 27-Aug-2013 Jérôme Duval <jerome.duval@gmail.com>

random: move to bus_managers/