2009-09-11 18:11:30

by Anil kumar

[permalink] [raw]
Subject: hibernate takes long time with huge file transfers

Hi,

I am running a huge file transfer by using simple dd command. I see that the process state of this dd is "D" uninterruptible sleep. Now I hibernate the system.

what I observe is that hibernate takes long time to complete. Looks like its waiting for the "dd" command to complete.
My understanding is that since the process is in uninterruptible sleep, hibernate is not able to stop the task.

Question:
1. Does hibernation work this way wherein it waits for the process to complete and then hibernate. Especially if the process is in uninterruptible sleep state.
2. What if the process is not in uninterruptible sleep?
3. Does sync'ing also adds to longer durations?

Thanks in advance for the help.

With regards,
Anil



2009-09-12 16:55:00

by Robert Hancock

[permalink] [raw]
Subject: Re: hibernate takes long time with huge file transfers

On 09/11/2009 12:04 PM, Anil kumar wrote:
> Hi,
>
> I am running a huge file transfer by using simple dd command. I see that the process state of this dd is "D" uninterruptible sleep. Now I hibernate the system.
>
> what I observe is that hibernate takes long time to complete. Looks like its waiting for the "dd" command to complete.
> My understanding is that since the process is in uninterruptible sleep, hibernate is not able to stop the task.
>
> Question:
> 1. Does hibernation work this way wherein it waits for the process to complete and then hibernate. Especially if the process is in uninterruptible sleep state.
> 2. What if the process is not in uninterruptible sleep?

I don't imagine the fact it's in D state would have anything to do with
it, more likely that it's constantly generating writes and the
hibernation process does a sync, which may take a long time if something
is dirtying memory as fast it can be written out..

> 3. Does sync'ing also adds to longer durations?
>
> Thanks in advance for the help.
>
> With regards,
> Anil
>
>
>