Re: Re: [PATCH] Remove process freezer from suspend to RAM pathway

Alan Stern
2007-07-03T20:02:37Z

On Tue, 3 Jul 2007, Oliver Neukum wrote:

> Well, but you did remove sys_sync() from the freezer, which is
> and must be called in the hibernate path.

That's not really true. We _want_ to call sys_sync() in both the
hibernate and suspend paths (in case the batteries run down), to help
avoid filesystem problems if something goes wrong with the resume. But
it isn't a hard requirement.

> > I'm not sure why this can't be made atomic, but assuming, that it
> > can't, fuse should still not need to be implicated. If it is, that's
> > an indication about something wrong in the suspend procedure.
>
> Nope, something's wrong in fuse. You must be able to deal with sync
> until every task is frozen.

That's ridiculous. FUSE itself runs partially as a user task. How can
you expect it to carry out a sync or anything else when it is frozen?

I suppose you could "deal" with it by having the kernel portion return
an error if the userspace part is frozen. If the hibernate/suspend
code bothered to check the return value, it would immediately abort
the suspend.

Alan Stern