Re: [PATCH] ARM: tegra: cpuidle: implement cpuidle_state.enter_freeze()

From: Russell King - ARM Linux
Date: Fri May 15 2015 - 19:31:11 EST


On Fri, May 15, 2015 at 11:03:35AM +0200, Tomeu Vizoso wrote:
> I have been looking and asking around, and seems like we should
> actually leave FIQs enabled when the tick is frozen and only disable
> them within enter_freeze.
>
> My understanding is that FIQ handlers are extremely limited in what
> they can do, with the main use being NMI-like functionality. There are
> a handful of other FIQ handlers in mainline, but they don't call into
> any other kernel code and limit themselves to doing some basic I/O.
>
> The only reason why they should be disabled in enter_freeze is that
> the context of the CPU that is going to a lower power state could
> become corrupted if a FIQ gets fired during a save or restore
> operation.

Right, that makes total sense.

(And yes, FIQ handlers are very limited in what they're allowed to do,
since they can't take any locks without the potential for deadlock.)

--
FTTC broadband for 0.8mile line: currently at 10.5Mbps down 400kbps up
according to speedtest.net.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/