[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20150605065219.GA19628@gmail.com>
Date: Fri, 5 Jun 2015 08:52:19 +0200
From: Ingo Molnar <mingo@...nel.org>
To: Andy Lutomirski <luto@...capital.net>
Cc: Andy Lutomirski <luto@...nel.org>,
Andy Henroid <andrew.d.henroid@...el.com>,
"linux-pm@...r.kernel.org" <linux-pm@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Peter Zijlstra <peterz@...radead.org>, X86 ML <x86@...nel.org>,
Matthew Garrett <mjg59@...f.ucam.org>
Subject: Re: Getting rid of i7300_idle's idle notifier?
* Andy Lutomirski <luto@...capital.net> wrote:
> On Thu, Jun 4, 2015 at 4:32 PM, Andy Lutomirski <luto@...nel.org> wrote:
>
> > AFAICT the sole purpose for the hideous x86_64 idle_notifier mess is to
> > support i7300_idle. IMO this junk does not belong in IRQ handling, etc. Can
> > we redo this to work in some kind of generic way?
> >
> > I have no idea why it makes sense to twiddle I/O AT registers in the beginning
> > of whatever IRQ wakes up the CPU.
> >
> > Note that, if absolutely necessary, the ECX bit 0 MWAIT extension can be used
> > to reliably execute code before handling interrupts that wake us from idle.
> > That is, there could be a real cpuidle driver for that chip that does:
> >
> > cli;
> > poke ioat;
> > mwait(ecx = 1);
> > poke ioat;
> > sti;
> >
> > Or we could delete the driver entirely.
>
> It's even easier than that. Just shove the hooks into acpi_idle_do_entry or
> similar and remove them from every other exit_idle call site in the kernel.
Yes!
Interested in doing a patch?
Thanks,
Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists