Re: Back to the future.

Pavel Machek
2007-04-29T08:23:42Z

Hi!

> > > The freezer has *caused* those deadlocks (eg by stopping threads that were
> > > needed for the suspend writeouts to succeed!), not solved them.
> >
> > I can't remember anything like this, but I believe you have a specific test
> > case in mind.
>
> Ehh.. Why do you thik we _have_ that PF_NOFREEZE thing in the first place?
>
> Rafael, you really don't know what you're talking about, do you?
>
> Just _look_ at them. It's the IO threads etc that shouldn't be frozen,
> exactly *because* they do IO. You claim that kernel threads shouldn't do
> IO, but that's the point: if you cannot do IO when snapshotting to disk,
> here's a damn big clue for you: how do you think that snapshot is going to
> get written?
>
> I *guarantee* you that we've had a lot more problems with threads that
> should *not* have been frozen than with those hypothetical threads that
> you think should have been frozen.

Well, we had nasty corruption on XFS, caused by thread that was not
frozen and should be. (While the other case leads "only" to deadlocks,
so it is easier to debug.)

The locking point.. when I added freezing to swsusp, I knew very
little about kernel locking, so I "simply" decided to avoid the
problem altogether... using the freezer.

You may be right that locks are not a big problem for the hibernation
after all; I just do not know.
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html