Re: Suspend 2 merge: 21/51: Refrigerator upgrade.

Pavel Machek
2004-11-27T05:47:21Z

Hi!

> > > > > > Silently doing nothing when user asked for sync is not nice,
> > > > > > either. BUG() is better solution than that.
> > > > >
> > > > > I don't think we should BUG because the user presses Sys-Rq S while
> > > > > suspending. I'll make it BUG_ON() and make the Sys_Rq printk & ignore
> > > > > when suspending. Sound reasonable?
> > > >
> > > > Yes, that's better. ... only that it means just another hook somewhere
> > > > :-(.
> > >
> > > :<. But we're only talking two or three lines. Let's keep it in
> > > perspective.
> >
> > I think even three lines are bad. It means that swsusp is no longer
> > self-contained subsystem, but that it has its hooks all over the
> > place. And those hooks need to be maintained, too.
>
> Yes, but suspending can't practically be a self contained system. We can
> try to convince ourselves that we're making it self contained by hiding
> behind the driver model, but in reality, the driver model is just a nice
> name for our sticky little fingers in all the other drivers, ensuring
> they do the right thing when we want to go to sleep. Hooks in other code
> is just the equivalent, but without the nice name. Perhaps I should
> invent one. How about the "quiescing subsystem"? :>

I know it can't be self-contained, but it should be as self-contained
as possible.

And driver-model means that interaction between swsusp and rest of the
code is pretty well defined and driver authors do not need to
understand the swsusp to properly support it.

Plus driver-model is usefull for suspend-to-ram, too.
Pavel
--
People were complaining that M$ turns users into beta-testers...
...jr ghea gurz vagb qrirybcref, naq gurl frrz gb yvxr vg gung jnl!