Re: [linux-pm] Re: [PATCH 1/23] Add missing device_suspsend(PMSG_FREEZE) calls.

From: david-b
Date: Wed Jul 27 2005 - 21:23:29 EST


> And there is of course the puzzle of why there exists simultaneously
> driver shutdown() and suspend(PMSG_FREEZE) methods as I believed they
> are defined to do exactly the same thing.

No puzzle; that's not how they're defined. Both of them cause the
device to quiesce that device's activity. But:

- shutdown() is a "dirty shutdown OK" heads-up for some level
of restart/reboot; hardware will be completely re-initialized
later, normally with hardware level resets and OS rebooting.

- freeze() is a "clean shutdown only" that normally sees hardware
state preserved, and is followed by suspend() or resume().

Or so I had understood. That does suggest why having FREEZE in the
reboot path could be trouble: you could be rebooting because that
hardware won't do a clean shutdown!

- Dave

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/