From: "Rafael J. Wysocki" <rjw@sisk.pl>
To: Raj Kumar <rajkumar278@hotmail.com>
Cc: linux-pm@lists.linux-foundation.org
Subject: Re: Question about hibernation
Date: Thu, 14 Oct 2010 11:51:05 +0200 [thread overview]
Message-ID: <201010141151.05297.rjw@sisk.pl> (raw)
In-Reply-To: <BLU102-W872C7E1EAB60632556F43EB560@phx.gbl>
On Thursday, October 14, 2010, Raj Kumar wrote:
>
> Hi Rafael,
>
> 1) I have question on system resume that e.g. in device driver let us say for example structure is defined global,
> e.g.
>
> struct dev
> {
> int a;
>
> } dev_t;
>
>
> this structure is global. Now during system suspend, suppose the value of
>
> dev_t.a =2;
>
> So when the resume happens, will the dev_t.a will remain the same i.e. 2?
Yes, it will. For hibernation, the contents of all memory from before the image
was created is restored during resume.
> 2) During the system suspend, if the system hibernates, then the message sent from power management core to all drivers is
> PMSG_HIBERNATE and if system suspends to ram, then message sent from power management core to all drivers is PMSG_SUSPEND.
That was in the old model, which isn't recommended any more.
Currently, it is recommended that drivers implement callbacks in struct dev_pm_ops,
as described in Documentation/power/devices.txt and Documentation/power/pci.txt.
Thanks,
Rafael
> > From: rjw@sisk.pl
> > To: rajkumar278@hotmail.com
> > Subject: Re: Question about hibernation
> > Date: Fri, 8 Oct 2010 21:31:48 +0200
> > CC: linux-pm@lists.linux-foundation.org
> >
> > On Friday, October 08, 2010, you wrote:
> > >
> > > Hi Rafael,
> >
> > Hi,
> >
> > > I am working on device driver whose some part is user space and some part is kernel space. So the user space part
> > > of the driver provides interface to user space applications.
> > > 1) Now, Suppose some user space is application is going on which is accessing the user space driver and user space driver
> > > scheduled some jobs to kernel space, Now suppose system hibernation start, since it freezes all the user space processes
> > > so suppose jobs are not completed yet which are scheduled to kernel space by user space.
> > >
> > > when the kernel space device driver completes the jobs and gives the notification to user space driver, since user space
> > > process is already frozen, so there will be problem if we suspend the driver using suspend and resume.
> > >
> > > right?
> >
> > Yes, there's going to be a problem if the driver is not prepared to handle such situations.
> >
> > Depending of the particular case, one possible approach is to use a PM notifier
> > as described in Documentation/power/notifiers.txt.
> >
> > > 2) The other point I was seeing, when the power management core freezes all the processes before suspending and resuming
> > > devices, it will take some time for freezing and after that if some device driver refuses to suspend, then it will again resume
> > > the whole processes, so latency time be more. right?
> >
> > Yes, it works as described.
> >
> > > 3) Next question is regarding the kernel space threads, when these are frozen during suspend/hibernation?
> >
> > They are frozen immediately after user space has been frozen, but only a
> > handful of kernel threads are frozen.
> >
> > Thanks,
> > Rafael
>
next prev parent reply other threads:[~2010-10-14 9:51 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <mailman.23.1286318684.6175.linux-pm@lists.linux-foundation.org>
2010-10-08 10:32 ` Question about hibernation Raj Kumar
2010-10-08 19:31 ` Rafael J. Wysocki
2010-10-14 8:20 ` Raj Kumar
2010-10-14 9:51 ` Rafael J. Wysocki [this message]
2010-10-14 11:47 ` Raj Kumar
2010-10-14 18:59 ` Rafael J. Wysocki
2011-01-04 21:14 Question about timers during system suspend Raj Kumar
2011-01-04 23:05 ` Rafael J. Wysocki
2011-01-04 23:57 ` Raj Kumar
2011-01-05 8:27 ` Rafael J. Wysocki
2011-03-18 13:45 ` Question about hibernation Raj Kumar
2011-03-18 14:09 ` Oliver Neukum
2011-03-19 23:47 ` Raj Kumar
[not found] <BLU102-W1030ED196ED7B94722F2A7EB830@phx.gbl>
[not found] ` <Pine.LNX.4.44L0.1008241029000.1652-100000@iolanthe.rowland.org>
2010-08-24 15:17 ` Runtime power management during system resume Raj Kumar
2010-08-25 13:27 ` Raj Kumar
2010-08-26 13:40 ` Raj Kumar
2010-09-18 11:49 ` (no subject) Raj Kumar
2010-10-05 21:40 ` Question about hibernation Raj Kumar
2010-10-05 22:43 ` Rafael J. Wysocki
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=201010141151.05297.rjw@sisk.pl \
--to=rjw@sisk.pl \
--cc=linux-pm@lists.linux-foundation.org \
--cc=rajkumar278@hotmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox