On Wed, 28 Sep 2005, Rafael J. Wysocki wrote: > > That's what it should do when resuming from disk. > > > > But that's not what it should do when it's being resumed just after the > > memory image was created, in order to write out the image. In this case > > the device is known to be in FREEZE, not SUSPEND, and to save time we > > would like the driver not to go through a full resume procedure. > > > > The problem is that currently the driver has no way to tell the difference > > between the two types of resume. What's needed is a way for driver to > > tell, and that can be added easily enough. > > Yes, I've been thinking about it for some time. It seems to me we could do > this with the help of an additional field in pm_message_t. The problem that no pm_message_t is passed to resume routines. Another solution would be to create a globally-available subroutine, something like: int resuming_from_disk(void) which would return 1 during the image resume and 0 at other times. It wouldn't hurt to have another routine available, int temporary_boot_kernel(void) That one may be harder to arrange. Alan Stern