Re: Linux kernel boot process

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 2012-08-04 21:15:15 (+0530), Sannu K <sannumail4foss@xxxxxxxxx> wrote:
> Is it possible to determine the reason for more time in hibernation
> compared to windows (or profile the resume time)? If possible I could
> do it in my machine and get some info which may be useful. Some one
> may jump to solve this (or there may be some magic tweak to get a
> better resume time) once it is profiled.
> 
Possibly. I haven't looked at the details of the Linux hibernation
subsystem. Take a look at Documentation/power/basic-pm-debugging.txt for
a basic introduction.

> >> Why should all the drivers be started again? Just we can load
> >> the disk driver and some essential part of the kernel, disk driver (or
> >> only few drivers necessary for reading the hibernate image) and use
> >> the drivers stored in the disk (from hibernation image) for rest of
> >> the devices.
> > When resuming from hibernation all devices were powered down. The kernel
> > needs to run through all of the initialisation code again. It needs to
> > upload firmware, set configuration registers, ...
> 
> That makes sense. Does that mean during hibernation the state of
> drivers will not be preserved? 

That's correct.

> Will the driver code be discarded
> without saving in hibernation image (as we are starting the driver
> again while resuming)?

Again, I'm not an expert, but I see no reason to preserve the driver
state (or perhaps even the rest of the kernel state). I believe the
kernel doesn't even distinguish between a normal boot and a resume from
hibernation until just before it starts userspace.

Regards,
Kristof


_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@xxxxxxxxxxxxxxxxx
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies


[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux