From: Sasha Levin Date: Wed, 5 Apr 2023 11:31:15 +0000 (-0400) Subject: Revert "cpuidle, intel_idle: Fix CPUIDLE_FLAG_IRQ_ENABLE *again*" X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=9c5aa3c8619fe9c1668bcb8eccc63ff9302666e4;p=users%2Fjedix%2Flinux-maple.git Revert "cpuidle, intel_idle: Fix CPUIDLE_FLAG_IRQ_ENABLE *again*" This reverts commit 07fc78d8f0c960f7ca241de98bc8c6bfe7d200f3 which was upstream commit 6d9c7f51b1d9179bf7c3542267c656a934e8af23. Lockdep warnings on boot that are not seen with Linus's tree. Signed-off-by: Sasha Levin --- diff --git a/drivers/idle/intel_idle.c b/drivers/idle/intel_idle.c index f060ac7376e69..cfeb24d40d378 100644 --- a/drivers/idle/intel_idle.c +++ b/drivers/idle/intel_idle.c @@ -168,7 +168,13 @@ static __cpuidle int intel_idle_irq(struct cpuidle_device *dev, raw_local_irq_enable(); ret = __intel_idle(dev, drv, index); - raw_local_irq_disable(); + + /* + * The lockdep hardirqs state may be changed to 'on' with timer + * tick interrupt followed by __do_softirq(). Use local_irq_disable() + * to keep the hardirqs state correct. + */ + local_irq_disable(); return ret; }