Re: Software suspend testing in 2.6.0-test1

From: Pavel Machek (pavel@ucw.cz)
Date: Tue Jul 22 2003 - 06:04:28 EST


Hi!

> > > > But why do you touch PF_FROZEN here? Refrigerator should do that.
> > > > And wake_up_process should not be needed...
> > > > If it is in refrigerator, it polls PF_FREEZE...
> > >
> > > Note that the old code always called wake_up_process(), which is
> > > necessary to make the process run one more iteration in refrigerator()
> > > and relize that it is time to unfreeze.
> > >
> > > The patch changes things so that wake_up_process() is NOT called if
> > > the process is stopped at some other place than in refrigerator().
> > > This ensures that processes that were stopped before we invoked swsusp
> > > are still stopped after resume.
> >
> > Yes, but you still print warning for them. I hopefully killed that.
> ...
> > +static inline int interesting_process(struct task_struct *p)
> > +{
> > + if (p->flags & PF_IOTHREAD)
> > + return 0;
> > + if (p == current)
> > + return 0;
> > + if ((p->state == TASK_ZOMBIE) || (p->state == TASK_DEAD))
> > + return 0;
> > + if (p->state == TASK_STOPPED)
> > + return 0;
> > +
> > +
> > + return 1;
> > +}
>
> But this doesn't work. We can't skip stopped tasks in the
> thaw_processes() function, because frozen tasks are also stopped
> tasks. Therefore nothing will be woken up during resume.
>
> It's probably best to just delete the printk("strange,...") line.

Okay, you are right, I'll stick with your solution for now.

I'd prefer to keep that "strange" line, so that we know if they are
some problems.
                                                                Pavel

-- 
When do you have a heart between your knees?
[Johanka's followup: and *two* hearts?]
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Wed Jul 23 2003 - 22:00:46 EST