Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 19 May 2019 16:11:41 +0000
From:      bugzilla-noreply@freebsd.org
To:        bugs@FreeBSD.org
Subject:   [Bug 219216] sched_bind() blocks if the entropy pool is starved
Message-ID:  <bug-219216-227-r9NtMNEKVr@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-219216-227@https.bugs.freebsd.org/bugzilla/>

index | next in thread | previous in thread | raw e-mail

https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=219216

--- Comment #10 from Conrad Meyer <cem@freebsd.org> ---
rand_harvestq has had CPU reduced significantly in 12.x timeframe — previously
it was attempting to obtain far more entropy and far more often than it
actually needed.  This was in part due to conservative estimates (r338293) and
in part due to bugs in random read (r338292, r339492).

r287023, r334450 may also be relevant.

If you have a concurrent reader, rand_harvestq will fight it for the global
Fortuna state mutex on head today (and spin while waiting).  You are somewhat
saved by READ_RANDOM_UIO dropping the Fortuna lock every 4kB (PAGE_SIZE).  I
have a revision proposed to reduce this conflict further:

https://people.freebsd.org/~cem/rand_harvestq.png
https://reviews.freebsd.org/D20313

-- 
You are receiving this mail because:
You are the assignee for the bug.

home | help

Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-219216-227-r9NtMNEKVr>