Re: [PATCH v4] pm_ops: add system quiesce/activate hooks

Pavel Machek
2007-04-13T21:56:09Z

Hi!

> > > > That it is same old hack it used to be. There's nothing magic about
> > > > decrementer, and I do not think it is _neccessary_ to touch it just
> > > > before cli. Just disable it from sysdev handler or something.
> > >
> > > No, you cannot disable it from sysdev handler because you have to be
> > > able to take interrupts. Can we *please* move on to some more productive
> > > discussion?
> >
> > So what happens if you disable it as a platform device? There has to
> > be better solution than this. What is so special about decrementer?
>
> That you are dead since once it's disabled, kernel timers etc... stop
> working.
>
> > We were able to handle MTRR registers on PC. Timer setup fit into the
> > model too...
>
> I don't care what you do on x86. If I tell you I need to take control at
> that point, then I need. Beside I really can't understand why you are so
> dead set against an arch hook there. It's not like this will do anything
> to you... it can't propagate to drivers, it's purely arch stuff, so
> what ?

There are about 7 places where we do stop_platform_devices()
local_irq_disable() stop_sysdevs(). You call your hook from one of
them and I suspect you need to call it from more than one. Plus, the
hook needs to have documented semantics, so people know if they should
do local_irq_disable() or if they should call your hook.
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html