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@xxxxxxxxxxxxxxxxxxxx> > --- > 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@xxxxxxxxx> --- 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-acpi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html