Re: [PATCH 2/6] Container Freezer: Make refrigerator always available
From: Rafael J. Wysocki
Date: Sat Aug 02 2008 - 10:32:22 EST
On Saturday, 2 of August 2008, Matt Helsley wrote:
>
> On Sat, 2008-08-02 at 00:53 +-0200, Rafael J. Wysocki wrote:
> > On Friday, 1 of August 2008, Matt Helsley wrote:
> > >
> > > On Fri, 2008-08-01 at 16:27 +-0200, Thomas Petazzoni wrote:
> > > > Hi,
> > > >
> > > > Le Thu, 31 Jul 2008 22:07:01 -0700,
> > > > Matt Helsley <matthltc@xxxxxxxxxx> a +AOk-crit :
> > > >
> > > > > --- a/kernel/Makefile
> > > > > +-+-+- b/kernel/Makefile
> > > > > @@ -5,7 +-5,7 @@
> > > > > obj-y = sched.o fork.o exec_domain.o panic.o printk.o +AFw
> > > > > cpu.o exit.o itimer.o time.o softirq.o resource.o +AFw
> > > > > sysctl.o capability.o ptrace.o timer.o user.o +AFw
> > > > > - signal.o sys.o kmod.o workqueue.o pid.o +AFw
> > > > > +- signal.o sys.o kmod.o workqueue.o pid.o freezer.o +AFw
> > > >
> > > > I have the impression that the code in kernel/power/process.c was
> > > > compiled only if CONFIG_PM_SLEEP was set. Now that the code has been
> > > > moved to kernel/freezer.c, it is unconditionnaly compiled in every
> > > > kernel. Is that correct ?
> > > >
> > > > If so, is it possible to put this new feature under some
> > > > CONFIG_SOMETHING option, for people who care about the kernel size ?
> > >
> > > How about making it depend on a combination of CONFIG variables?
> > > Here's an RFC PATCH. Completely untested.
> > >
> > > Signed-off-by: Matt Helsley <matthltc@xxxxxxxxxx>
> >
> > Can you please also make the contents of include/linux/freezer.h depend on
> > CONFIG_FREEZER instead of CONFIG_PM_SLEEP?
>
> Good point -- I'll add that to this patch and repost.
>
> > Also, I'm not really sure if kernel/power/Kconfig is the right place to define
> > CONFIG_FREEZER.
>
> There's no nice place to put it since we're dealing with CONFIG_
> variables in two different Kconfig files. I put it in
> kernel/power/Kconfig because I wasn't certain Kbuild would do the right
> thing if I referenced PM_SLEEP from init/Kconfig.
>
> > Perhaps we should even move freezer.c from kernel/power to kernel
>
> It's already there.
Yes, sorry.
> Perhaps you meant something else (kernel/power/process.c?)?
Well, I'll have to actually apply the patches and look at the modified code.
> > and define CONFIG_FREEZER in Kconfig in there. Andrew, what do you think?
>
> The Kconfig files in kernel/ are Kconfig.hz and Kconfig.preemt which
> don't seem appropriate. I suppose we could add another (perhaps
> Kconfig.cgroup).
Either that, or Kconfig.freezer maybe? After all, it will also be used for
PM_SLEEP, at least for some time.
> Thanks for the review!
You're welcome.
Thanks,
Rafael
7mNó łn Š7mNó p4o 0¾g A pą Ą©Mó Š7mNó 5o Š7mNó łn Š7mNó `5o 5o Ń pą Ą©Mó Š7mNó 5o Š7mNó łn Š7mNó P6o p6o a pą Ą©Mó Š7mNó 6o Š7mNó łn Š7mNó @7o `7o ń pą Ą©Mó Š7mNó 7o Š7mNó łn Š7mNó 08o P8o pą Ą©Mó Š7mNó p8o Š7mNó łn Š7mNó 9o @9o pą Ą©Mó Š7mNó `9o Š7mNó łn Š7mNó :o 0:o ” pą Ą©Mó Š7mNó P:o Š7mNó łn Š7mNó ;o ;o 1 pą Ą©Mó Š7mNó @;o Š7mNó łn Š7mNó š;o <o Į pą Ą©Mó Š7mNó 0<o Š7mNó łn Š7mNó ą<o =o Q pą Ą©Mó Š7mNó =o Š7mNó łn Š7mNó Š=o š=o į pą Ą©Mó Š7mNó >o Š7mNó łn Š7mNó Ą>o ą>o q pą Ą©Mó Š7mNó ?o Š7mNó łn Š7mNó °?o Š?o pą Ą©Mó Š7mNó š?o Š7mNó łn Š7mNó @o Ą@o pą Ą©Mó Š7mNó ą@o Š7mNó łn Š7mNó Ao °Ao ! pą Ą©Mó Š7mNó ŠAo Š7mNó łn Š7mNó Bo Bo ± pą Ą©Mó Š7mNó ĄBo Š7mNó łn Š7mNó pCo Co A pą Ą©Mó Š7mNó °Co Š7mNó łn Š7mNó `Do Do Ń
pą Ą©Mó Š7mNó Do Š7mNó łn Š7mNó PEo pEo a
pą Ą©Mó Š7mNó Eo Š7mNó łn Š7mNó @Fo `Fo ń pą Ą©Mó Š7mNó Fo Š7mNó łn Š7mNó 0Go PGo pą Ą©Mó Š7mNó pGo Š7mNó łn Š7mNó Ho @Ho pą Ą©Mó Š7mNó `Ho Š7mNó łn Š7mNó Io 0Io ” pą Ą©Mó Š7mNó 4o Š7mNó łn Š7mNó ąIo ¾g 1 pą Ą©Mó Š7mNó Jo Š7mNó łn Š7mNó ŠJo šJo Į
pą Ą©Mó Š7mNó Ąo Š7mNó łn Š7mNó ĄKo ąKo Q
pą Ą©Mó Š7mNó Lo Š7mNó łn Š7mNó °Lo ŠLo į pą Ą©Mó Š7mNó šLo Š7mNó łn Š7mNó Mo ĄMo q pą Ą©Mó Š7mNó pNo Š7mNó @!o Š7mNó ąMo pą Ą©Mó Š7mNó @Oo Š7mNó @!o Š7mNó Oo Oo pą Ą©Mó Š7mNó ĄOo Š7mNó @!o Š7mNó pPo Po ! pą Ą©Mó Š7mNó °Po Š7mNó @!o Š7mNó `Qo Qo ± pą Ą©Mó Š7mNó Qo Š7mNó @!o Š7mNó PRo pRo A pą Ą©Mó Š7mNó Ro Š7mNó @!o Š7mNó @So `So Ń pą Ą©Mó Š7mNó So Š7mNó @!o Š7mNó 0To PTo a pą Ą©Mó Š7mNó pTo Š7mNó @!o Š7mNó Uo @Uo ń pą Ą©Mó Š7mNó `Uo Š7mNó @!o Š7mNó Vo 0Vo pą Ą©Mó Š7mNó PVo Š7mNó @!o Š7mNó Wo Wo pą Ą©Mó Š7mNó @Wo Š7mNó @!o Š7mNó šWo Xo ” pą Ą©Mó Š7mNó 0Xo Š7mNó @!o Š7mNó ąXo Yo 1 pą Ą©Mó Š7mNó Yo Š7mNó @!o Š7mNó ŠYo šYo Į pą Ą©Mó Š7mNó °No Š7mNó @!o Š7mNó Zo [o Q pą Ą©Mó ` Š7mNó ąZo Š7mNó @!o Š7mNó Ą[o ą[o į pą Ą©Mó Š7mNó \o Š7mNó @!o Š7mNó °\o Š\o q pą Ą©Mó Š7mNó š\o Š7mNó @!o Š7mNó ]o Ą]o pą Ą©Mó @ Š7mNó ą]o Š7mNó @!o Š7mNó ^o °^o pą Ą©Mó ` Š7mNó Š^o Š7mNó @!o Š7mNó _o čŗ{.nĒ+·®+%Ėlzwm
ébė§²ęģrøzX§»®w„{ayŗŹŚė,j¢f£¢·hąz¹®w„¢ø¢·¦j:+vØwčjŲm¶’¾«źēzZ+łŻ¢j"ś!¶iOę¬z·vŲ^¶m§’šĆnĘąžY&