Re: swsusp: move resume before mounting root [diff against vanilla 2.4.9]

Albert D. Cahalan
2001-09-27T03:02:49Z

Pavel Machek writes:
> [Albert Cahalan]

>> Solution for the filesystem problems:
>>
>> 1. at suspend, basically unmount the filesystem (keep the mount tree)
>> 2. at resume, re-validate open files
>
> Wrong solution. ;-).
>
> Solution to filesystem problems: at suspend, sync but don't do
> anything more. At resume, don't try to mount anything (so that you
> don't replay transactions or damage disk in any other way).

That is totally broken, because I may mount the disk in between
the suspend and resume. I might even:

1. boot kernel X
2. suspend kernel X
3. boot kernel Y
4. suspend kernel Y
5. resume kernel X
6. suspend kernel X
7. resume kernel Y
8. suspend kernel Y
9. goto #5

You really have to close the logs and mark the disks clean
when you suspend. The problems here are similar the the ones
NFS faces. Between the suspend and resume, filesystems may be
modified in arbitrary ways.