xfs-masters
[Top] [All Lists]

[xfs-masters] Re: freeze vs freezer

To: Pavel Machek <pavel@xxxxxx>
Subject: [xfs-masters] Re: freeze vs freezer
From: Nigel Cunningham <nigel@xxxxxxxxxxxxxxxxxx>
Date: Thu, 03 Jan 2008 08:30:00 +1100
Cc: Kyle Moffett <mrmacman_g4@xxxxxxx>, "Rafael J. Wysocki" <rjw@xxxxxxx>, Matthew Garrett <mjg59@xxxxxxxxxxxxx>, David Chinner <dgc@xxxxxxx>, Jeremy Fitzhardinge <jeremy@xxxxxxxx>, xfs-masters@xxxxxxxxxxx, Linux Kernel Mailing List <linux-kernel@xxxxxxxxxxxxxxx>
In-reply-to: <20080102160234.GA17070@xxxxxx>
References: <4744FD87.7010301@xxxxxxxx> <200711262253.35420.rjw@xxxxxxx> <20071127053846.GA28884@xxxxxxxxxxxxx> <200711271840.24825.rjw@xxxxxxx> <8B00F353-983F-40E7-931B-EA73CCD32F0A@xxxxxxx> <20080102160234.GA17070@xxxxxx>
Reply-to: xfs-masters@xxxxxxxxxxx
Sender: xfs-masters-bounce@xxxxxxxxxxx
User-agent: Thunderbird 2.0.0.6 (X11/20071022)
Hi.

Pavel Machek wrote:
> Hi!
> 
>>>>>> So how do you handle threads that are blocked on I/O or a lock  
>>>>>> during the system freeze process, then?
>>>>> We wait until they can continue.
>>>> So if I have a process blocked on an unavilable NFS mount, I can't
>>>> suspend?
>>> That's correct, you can't.
>>>
>>> [And I know what you're going to say. ;-)]
>> Why exactly does suspend/hibernation depend on "TASK_INTERRUPTIBLE"  
>> instead of a zero preempt_count()?  Really what we should do is just  
>> iterate over all of the actual physical devices and tell each one  
>> "Block new IO requests preemptably, finish pending DMA, put the  
>> hardware in low-power mode, and prepare for suspend/hibernate".  As  
>> long as each driver knows how to do those simple things we can have  
>> an entirely consistent kernel image for both suspend and for  
>> hibernation.
> 
> "each driver" means this is a lot of work. But yes, that is probably
> way to go, and patch would be welcome.

Yes, that does work. It's what I've done in my (preliminary) support for
fuse.

Regards,

Nigel


<Prev in Thread] Current Thread [Next in Thread>