Page MenuHomeFreeBSD

stop looping if it fails, we'll try again in 100ms..
Needs ReviewPublic

Authored by jmg on Mar 3 2023, 6:44 PM.
Tags
None
Referenced Files
F81624694: D38897.diff
Fri, Apr 19, 4:14 AM
Unknown Object (File)
Sat, Mar 30, 11:47 PM
Unknown Object (File)
Mar 17 2024, 9:31 PM
Unknown Object (File)
Feb 18 2024, 3:52 PM
Unknown Object (File)
Jan 28 2024, 6:07 AM
Unknown Object (File)
Jan 16 2024, 3:36 PM
Unknown Object (File)
Dec 23 2023, 2:04 AM
Unknown Object (File)
Dec 10 2023, 6:07 PM

Details

Reviewers
None
Group Reviewers
csprng

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 50134
Build 47026: arc lint + arc unit

Event Timeline

jmg requested review of this revision.Mar 3 2023, 6:44 PM

No objection. I'll let someone else stamp it.

I don't have a major objection to this, but I'm nervous of the lower-numbered pools being favoured. I'm not formally requesting changes yet, as I could be persuaded that I'm wrong.

sys/dev/random/random_harvestq.c
303

This may result in the lower-numbered pools being favoured, which is undesirable. All pools need an equal chance at this entropy. A fix may be to make i static, and simply increment it mod(npools), with the loop terminating at the point where it wraps.

the comment says

We don't perform any other verification of an entropy source (i.e., length is allowed to be anywhere from 1 to sizeof(entropy), quality is unchecked, etc)

is there a way we could do that?

not in a live / production system, unless it's via dtrace