Hi, On Thursday, 7 of April 2005 22:00, Alan Stern wrote: > On Thu, 7 Apr 2005, Rafael J. Wysocki wrote: ]--snip--[ > > > If that means waiting more than 10 seconds or so, you should just give up. > > > Return an error and put a message in the log saying something like "Can't > > > suspend because process XXX is busy". > > > > OK, that's what we do now. Except that IMO we should clear the PF_FREEZE flag > > for this process and do recalc_sigpending() for it after we give up, because > > otherwise it will enter the refrigerator sooner or later and it will stay there. > > Alternatively, we can disable the "freezing loop" in refrigerator() as soon as > > thaw_processes() is started. Also, we can avoid setting PF_FREEZE for > > processes in TASK_UNINTERRUPTIBLE, but count them as "freezable". Etc. > > Yes, all the necessary cleanup steps should be taken. Pavel, which approach do you like most? Rafael -- - Would you tell me, please, which way I ought to go from here? - That depends a good deal on where you want to get to. -- Lewis Carroll "Alice's Adventures in Wonderland"