Hi. On Thu, 2008-11-06 at 10:54 +0900, KAMEZAWA Hiroyuki wrote: > On Thu, 06 Nov 2008 12:43:07 +1100 > Nigel Cunningham <ncunningham@xxxxxxxxxxx> wrote: > > > Hi. > > > > On Thu, 2008-11-06 at 10:17 +0900, KAMEZAWA Hiroyuki wrote: > > > On Thu, 6 Nov 2008 09:14:41 +0900 > > > KAMEZAWA Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx> wrote: > > > > > > > Ok, please consider "when memory hotplug happens." > > > > > > > > In general, it happens when > > > > 1. memory is inserted to slot. > > > > 2. the firmware notifes the system to enable already inserted memory. > > > > > > > > To trigger "1", you have to open cover of server/pc. Do you open pc while the system > > > > starts hibernation ? for usual people, no. > > > > > > > > To trigger "2", the user have special console to tell firmware "enable this memory". > > > > Such firmware console or users have to know "the system works well." And, more important, > > > > when the system is suspended, the firmware can't do hotplug because the kernel is sleeping. > > > > So, such firmware console or operator have to know the system status. > > > > > > > > Am I missing some ? Current linux can know PCI/USB hotplug while the system is suspended ? > > > > > > > *OFFTOPIC* > > > > > > I hear following answer from my friend. > > > > > > - hibernate the system > > > => plug USB memory > > > => wake up the system > > > => panic. > > > - hibernate the system > > > => unplug USB memory > > > => wake up the sytem > > > => panic. > > > > We currently check that the number of physical pages is the same when > > starting to load the image, so neither of these issues cause real > > problems. > > > Hmm? this doesn't come from lost of hotplug interrupt ? > the memory plugged while the system is sleeping can be recognized when the system wakes up ? Remember that when we hibernate (assuming we don't then suspend to ram), the power is fully off. Resuming starts off like a fresh boot. > My point is the firmware/operator has to know "the system is sleeping or not" to do *any* hotplug. > (I'm not sure but removing a cpu while the system is under hibernation may cause panic, too.) > In my point of view, this is operator's problem, not hibernation's. If a cpu is removed while we're hibernated, that's okay. We use hotplugging and can therefore cope quite happily with cpus going away while the system is powered down. > If you want to fix the small race really, please add(or export) some mutex or notifier. like > > NOTIFY_HIBERNATION_START > NOTIFY_HIBERNATION_END > NOTIFY_HIBERNATION_RESUME > > other pepole will make use of this. > I think __add_memory called by interrupt can be executed in some kernel thread. > > Thanks, > -Kame There are notifier chains for hibernation already (PM_HIBERNATION_PREPARE, PM_RESTORE_PREPARE, PM_POST_RESTORE and PM_POST_HIBERNATION). Regards, Nigel _______________________________________________ linux-pm mailing list linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/linux-pm