Re: pcmcia resume 60 second hang. Re: [patch 00/69] -stable review

From: Nigel Cunningham
Date: Fri May 25 2007 - 00:33:26 EST


Howdy.

On Thu, 2007-05-24 at 20:31 -0700, Linus Torvalds wrote:
>
> On Fri, 25 May 2007, Nigel Cunningham wrote:
> > >
> > > That said, I think freezing is crap even for snapshotting/suspend-to-disk,
> > > but the point of the above rant is to show how insane it is to think that
> > > problems and complexity in one area should translate into problems and
> > > complexity in another area.
> >
> > Does that imply that you'd prefer to see filesystem checkpointing code,
> > that you think freezing can be done better, or do you have some other
> > solution that hasn't occurred to me?
>
> I actually don't think that processes should be frozen really at all.
>
> I agree that filesystems have to be frozen (and I think that checkpointing
> of the filesystem or block device is "too clever"), but I just don't think
> that has anything to do with freezing processes.
>
> So I'd actually much prefer to freeze at the VFS (and socket layers, etc),
> and make sure that anybody who tries to write or do something else that we
> cannot do until resuming, will just be blocked (or perhaps just buffered)!
>
> See? I actually think that this process-based thing is barking up the
> wrong tree. After all, it's really not the case that we need to stop
> processes, and stopping processes really does have some problems. It's
> simpler in some ways, but I think a more directed solution would actually
> be better.

That does sound doable.

I'm sorry to say it, but dropping process freezing still seems to me
like the better way though. I prefer it because of the reliability
aspect. With the current code, having frozen processes, I can look at
the state of memory, calculate how much I'll need for this or that and
know that I'll have sufficient memory for the atomic copy and for doing
the I/O (making assumptions about how much memory drivers will
allocate) before I start to do either. If we stop freezing processes,
that predictability will go away. There'll always be a possibility that
some process will get memory hungry and stop me from being able to get
the image on disk, and I'll have to either abort or give up and try
again and again until I can complete writing the image, the battery runs
out or whatever...

> >bviously we _do_ want to actually try to quiesce normal user processes.
> >But by "normal user", I'd be willing to limit it to non-uid-zero things,
> >for example. Exactly because it does turn out that the kernel kind of
> >depends on user-land things for stuff like network filesystem connection
> >setup etc (ie we tend to do things like the mount encryption stuff in
> >userland!).

Not sure who you're quoting here, but it's not me. Pavel maybe? I was
unsub'd for a couple of weeks, so guess it's from during that period.

> But I really don't care that deeply per se, exactly because I don't use it
> myself. I think people are going down the wrong rabbit-hole, but it
> wouldn't _irritate_ me that much except for the fact that it now also
> impacts suspend-to-RAM.

Does that mean you never ever power off your laptop (assuming you have
one), and the battery never runs out? Surely you must power it off
completely sometimes? If you do, doesn't that ever happen at a time when
you're part way through something and you'd like to be able to pick up
your merge or whatever later without having to say "Now, where was I up
to?" *shrug* Maybe you're just exceptional :) (Yeah, we know you are in
other ways, but this way?...)

Regards,

Nigel

Attachment: signature.asc
Description: This is a digitally signed message part