Re: Linux kernel boot process
> Hi Kumar, > > I will be glad to provide my support as much as possible. I don't have > much idea on how kernel power management subsystem works. So I may not > be up to your speed but I can help you for sure. What kind of research > you are planning to work on? I will send you personal mail regarding what all I am planning till end of the day. If any1 else is also interested can join with us for the work. -- Be Happy Always +919579650250 ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
Re: Linux kernel boot process
On Sat, Aug 4, 2012 at 11:20 PM, Kumar Sukhani wrote: > hey Sannu, > are you interested in doing some research in hibernation in linux? > because I am planning to work on linux hiberntion, if we can do some > improvement in that. > > > -- > Be Happy Always > +919579650250 > Hi Kumar, I will be glad to provide my support as much as possible. I don't have much idea on how kernel power management subsystem works. So I may not be up to your speed but I can help you for sure. What kind of research you are planning to work on? My best wishes for you. Thanks and Regards, Sannu K ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
Re: Linux kernel boot process
hey Sannu, are you interested in doing some research in hibernation in linux? because I am planning to work on linux hiberntion, if we can do some improvement in that. -- Be Happy Always +919579650250 ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
Re: Linux kernel boot process
On Sat, Aug 4, 2012 at 9:33 PM, Kristof Provost wrote: > On 2012-08-04 21:15:15 (+0530), Sannu K 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. Sure I will take a look. > >> >> 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. That's a new info I have got :) > > Regards, > Kristof > Thanks, Sannu K ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
Re: Linux kernel boot process
On 2012-08-04 21:15:15 (+0530), Sannu K 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@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
Re: Linux kernel boot process
On Sat, Aug 4, 2012 at 9:04 PM, Kristof Provost wrote: > On 2012-08-04 20:53:00 (+0530), Sannu K wrote: >> I had a doubt for long regarding hibernation. It takes a very long >> time to resume from hibernation in Linux compared to windows. >> > I don't actually have a windows machine to compare. It's quite possible > that this is true, but I can't say why it'd be the case. 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. >> 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? Will the driver code be discarded without saving in hibernation image (as we are starting the driver again while resuming)? Thanks, Sannu K > Regards, > Kristof > ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
Re: Linux kernel boot process
On 2012-08-04 20:53:00 (+0530), Sannu K wrote: > I had a doubt for long regarding hibernation. It takes a very long > time to resume from hibernation in Linux compared to windows. > I don't actually have a windows machine to compare. It's quite possible that this is true, but I can't say why it'd be the case. > 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, ... Regards, Kristof ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
Re: Linux kernel boot process
On Sat, Aug 4, 2012 at 7:53 PM, Kristof Provost wrote: > On 2012-08-04 10:56:38 (+0530), Kumar Sukhani wrote: >> I heard that windows 8 have change its boot process to a hybrid mood. In >> which it shutdowns the user applications and hibernates the kernel and >> device drivers[1]. > > The question "Why on earth would you want that?" comes to mind. > > I guess you get faster hibernation if you don't need to write all of > the memory state to disk, but still... > > Even then you only gain a little on core services startup. I'd infer > that they have serious architectural issues if this saves them a lot of > startup time. After all, hibernation (i.e. suspend to disk) means they > need to re-start the kernel and drivers completely anyway. I had a doubt for long regarding hibernation. It takes a very long time to resume from hibernation in Linux compared to windows. Why this happens? 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. Will this help in anyway? I guess this may reduce the resume time. P.S: I am a hard core fan of Linux and I am stating the limitation here so that it can be rectified and not anything against Linux developers - I too want to become a Linux kernel developer but it is still a long way. Thanks, Sannu K >> Can the same be introduce in Linux kernel? >> > I'm sure it's possible. In fact, I think you can probably script it with > a little help from consolekit/gnome or something like that. > > Mostly I don't see the point. > > Regards, > Kristof > > > ___ > Kernelnewbies mailing list > Kernelnewbies@kernelnewbies.org > http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
Re: Linux kernel boot process
On 2012-08-04 10:56:38 (+0530), Kumar Sukhani wrote: > I heard that windows 8 have change its boot process to a hybrid mood. In > which it shutdowns the user applications and hibernates the kernel and > device drivers[1]. The question "Why on earth would you want that?" comes to mind. I guess you get faster hibernation if you don't need to write all of the memory state to disk, but still... Even then you only gain a little on core services startup. I'd infer that they have serious architectural issues if this saves them a lot of startup time. After all, hibernation (i.e. suspend to disk) means they need to re-start the kernel and drivers completely anyway. > Can the same be introduce in Linux kernel? > I'm sure it's possible. In fact, I think you can probably script it with a little help from consolekit/gnome or something like that. Mostly I don't see the point. Regards, Kristof ___ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies