Page MenuHomeFreeBSD

random(4): Translate a comment requirement into a compile-time invariant
ClosedPublic

Authored by cem on Sep 1 2018, 4:39 AM.
Tags
None
Referenced Files
Unknown Object (File)
Tue, Sep 30, 10:10 AM
Unknown Object (File)
Mon, Sep 29, 1:32 AM
Unknown Object (File)
Mon, Sep 22, 7:15 AM
Unknown Object (File)
Mon, Sep 22, 3:45 AM
Unknown Object (File)
Mon, Sep 22, 3:41 AM
Unknown Object (File)
Mon, Sep 22, 3:33 AM
Unknown Object (File)
Fri, Sep 19, 2:18 AM
Unknown Object (File)
Sep 16 2025, 11:58 PM
Subscribers

Details

Summary

In various places, random represents the set of sources as a 32-bit word
bitmask. It assumes all sources fit within this, i.e., the maximum valid
source number is 31.

There was a comment specifying this limitation, but we can actually refuse
to compile if our assumption is violated instead. We still have a few spare
random source slots, but sooner or later someone may need to convert the
masks used from raw 32-bit words to bitset(9) APIs.

This prevents some kinds of developer foot-shooting when adding new random
sources. No functional change.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable