lkml.org 
[lkml]   [2007]   [Jul]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[2.6 patch] let SUSPEND select HOTPLUG_CPU
    On Thu, Jul 26, 2007 at 01:55:18PM -0700, Linus Torvalds wrote:
    >
    >
    > On Thu, 26 Jul 2007, Rafael J. Wysocki wrote:
    > >
    > > My point is we have ACPI dependent on PM, so if you want ACPI, you end
    > > up with all of the STR stuff built in, which is what you don't like (if I
    > > understand that correctly). If we have CONFIG_SUSPEND, you'll be able to
    > > choose ACPI alone. :-)
    >
    > Good point.
    >
    > Anyway, I think the ACPI problem really is as trivial as the following
    > three-liner removal fix. If the user doesn't want suspend, ACPI shouldn't
    > force it on him.
    >
    > A nicer fix might be to also make some of the ACPI helper routines depend
    > on whether they are needed or not (which in turn will depend on whether
    > suspend support has been compiled into the kernel), but quite frankly,
    > that's secondary at least for me.
    >
    > So if we have a few ACPI routines that will never get called (because we
    > don't even enable the interfaces that would *cause* them to be called), I
    > don't think that's a huge problem. It's a beauty wart, but nobody really
    > cares (and it's even something that we could get the compiler to optimize
    > away for us if we really cared).
    >
    > Linus
    >
    > ---
    > Don't force-enable suspend/hibernate support just for ACPI
    >
    > It's a totally independent decision for the user whether he wants
    > suspend and/or hibernation support, and ACPI shouldn't care.
    >
    > Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    > ---
    > drivers/acpi/Kconfig | 3 ---
    > 1 files changed, 0 insertions(+), 3 deletions(-)
    >
    > diff --git a/drivers/acpi/Kconfig b/drivers/acpi/Kconfig
    > index 251344c..22b401b 100644
    > --- a/drivers/acpi/Kconfig
    > +++ b/drivers/acpi/Kconfig
    > @@ -11,9 +11,6 @@ menuconfig ACPI
    > depends on PCI
    > depends on PM
    > select PNP
    > - # for sleep
    > - select HOTPLUG_CPU if X86 && SMP
    > - select SUSPEND_SMP if X86 && SMP
    > default y
    > ---help---
    > Advanced Configuration and Power Interface (ACPI) support for

    The dependency of SUSPEND_SMP on HOTPLUG_CPU is quite unintuitive, so
    what about something like the patch below?

    This should address a main issue behind Len's patch.

    cu
    Adrian


    <-- snip -->


    An implementation detail of the suspend code that is not intuitive for
    the user is the HOTPLUG_CPU dependency of SOFTWARE_SUSPEND if SMP.

    This patch changes SOFTWARE_SUSPEND if SMP to select HOTPLUG_CPU instead
    of depending on it.

    Signed-off-by: Adrian Bunk <bunk@stusta.de>

    ---

    kernel/power/Kconfig | 20 ++++++++++++++------
    1 file changed, 14 insertions(+), 6 deletions(-)

    --- a/kernel/power/Kconfig
    +++ b/kernel/power/Kconfig
    @@ -72,9 +72,22 @@ config PM_TRACE
    CAUTION: this option will cause your machine's real-time clock to be
    set to an invalid time after a resume.

    +config SUSPEND_SMP_POSSIBLE
    + bool
    + depends on (X86 && !X86_VOYAGER) || (PPC64 && (PPC_PSERIES || PPC_PMAC))
    + depends on SMP
    + default y
    +
    +config SUSPEND_SMP
    + bool
    + depends on SUSPEND_SMP_POSSIBLE && SOFTWARE_SUSPEND
    + select HOTPLUG_CPU
    + default y
    +
    config SOFTWARE_SUSPEND
    bool "Software Suspend (Hibernation)"
    - depends on PM && SWAP && (((X86 || PPC64_SWSUSP) && (!SMP || SUSPEND_SMP)) || ((FRV || PPC32) && !SMP))
    + depends on PM && SWAP
    + depends on ((X86 || PPC64_SWSUSP || FRV || PPC32) && !SMP) || SUSPEND_SMP_POSSIBLE
    ---help---
    Enable the suspend to disk (STD) functionality, which is usually
    called "hibernation" in user interfaces. STD checkpoints the
    @@ -132,11 +145,6 @@ config PM_STD_PARTITION
    suspended image to. It will simply pick the first available swap
    device.

    -config SUSPEND_SMP
    - bool
    - depends on HOTPLUG_CPU && (X86 || PPC64) && PM
    - default y
    -
    config APM_EMULATION
    tristate "Advanced Power Management Emulation"
    depends on PM && SYS_SUPPORTS_APM_EMULATION
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2007-07-28 00:27    [W:0.043 / U:90.876 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site