Re: [PATCH v2] random: set fast pool count to zero in cpuhp teardown

From: Jason A. Donenfeld
Date: Mon Feb 14 2022 - 09:52:53 EST


On Mon, Feb 14, 2022 at 3:49 PM Sebastian Andrzej Siewior
<bigeasy@xxxxxxxxxxxxx> wrote:
>
> On 2022-02-14 15:42:50 [+0100], Jason A. Donenfeld wrote:
> > Hi Sebastian,
> Hi Jason,
>
> > If we move this to startup, is there a phase during which no interrupt
> > will arrive? That is, can this happen very very early in startup, so
> > that zeroing out count happens *before* ++count?
>
> Interrupts will arrive starting with CPUHP_AP_ONLINE_IDLE from the CPU
> HP point of view. My suggestion had a check for upper most bit and only
> clear count if that bit was seen. So we wouldn't clear the counter if we
> wouldn't suspect one of the rare corner cases.

That doesn't work for the other use cases I have for this (see the other patch).

So I think it seems better to keep it before CPUHP_TIMERS_PREPARE, but
do it on startup rather than teardown. Seem reasonable? Would that
mean we zero out before IRQs are enabled?