HomeFreeBSD

Reduce disk write load in /usr/libexec/save-entropy.

Description

Reduce disk write load in /usr/libexec/save-entropy.

Before this commit, the save-entropy script rotates entropy files
like logs. This involves creating a new file that holds the entropy
and renaming of all existing entropy files. However, the entropy
data do not really need to be kept in a particular order, and
replacing the oldest file is sufficient.

This commit replaces the rotation with a scan in the
[1..entropy_save_num] space that finds the first empty slot, or
the slot of the oldest file, and writes entropy into that slot.

This also fixes an issue that prevents save-entropy from saving
any entropy when there is one non-regular file in any slot as a
side effect.

Based on an earlier patch from peterj@.

PR: 134225
Reported by: peterj
Reviewed by: csprng (cem, markm)
MFC after: 2 weeks
Differential Revision: https://reviews.freebsd.org/D22612

Details

Provenance
delphijAuthored on
Differential Revision
D22612: Reduce disk write load in /usr/libexec/save-entropy
Parents
rS355246: MFC r351446:
Branches
Unknown
Tags
Unknown