makefs(1): use all the random(3) range.

The generation number is uint32_t so we can fit the complete range
of random(3). We could have used arc4random() but the result would
be unpredictable and it would prohibit reproducible builds.

While here add a comment where seeding is done: this affects
reproducible builds and might have to be re-visited to use a
release dependent value.

MFC after:	2 weeks
This commit is contained in:
Pedro F. Giffuni 2016-05-17 18:20:33 +00:00
parent d71896a76a
commit 40d39b4bf5
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=300069

View File

@ -1125,9 +1125,10 @@ ffs_write_inode(union dinode *dp, uint32_t ino, const fsinfo_t *fsopts)
initediblk < ufs_rw32(cgp->cg_niblk, fsopts->needswap)) {
memset(buf, 0, fs->fs_bsize);
dip = (struct ufs2_dinode *)buf;
/* Seeding affects reproducible builds. */
srandom(time(NULL));
for (i = 0; i < INOPB(fs); i++) {
dip->di_gen = random() / 2 + 1;
dip->di_gen = random();
dip++;
}
ffs_wtfs(fsbtodb(fs, ino_to_fsba(fs,