[RFC] [Maverick] UBUNTU: SAUCE: pm: Config option to disable handling of console during suspend/resume

Amit Kucheria amit.kucheria at canonical.com
Wed Jun 16 20:18:11 UTC 2010



On 10 Jun 16, Leann Ogasawara wrote:
> Hi Amit,
> 
> We've got a bug report [1] from Phillip (CC'd) that when resuming from
> suspend on Maverick his display never comes back out of power save mode
> with the latest 2.6.35 Maverick kernels.  He tested yesterday's 2.6.35
> daily mainline build and could not reproduce the issue.  He was able to
> narrow it down to the CONFIG_PM_DISABLE_CONSOLE option being enabled.
> This config option originates from an Ubuntu SAUCE patch (inlined below)
> which was authored by yourself a few years ago.  Is it still necessary
> that we carry this patch?  I'm inclined to drop it, or at least disable
> the config option, especially since it appears to be causing issues.
> Your thoughts? 
> 

I think PM is in a lot better shape than 2 years ago. I'd forgotten about it.
Drop it.

It might be worth creating a test kernel with that patch dropped for Lucid
too and posting it to suspend-related bugs.

/Amit

> [1] https://bugs.edge.launchpad.net/ubuntu/+source/linux/+bug/594885
> 
> >From 6063b4dc3721a63d70f81522fa130372ded60b45 Mon Sep 17 00:00:00 2001
> From: Amit Kucheria <amit.kucheria at ubuntu.com>
> Date: Fri, 23 May 2008 11:43:45 +0300
> Subject: [PATCH] UBUNTU: SAUCE: pm: Config option to disable handling of console during suspend/resume
> 
> Signed-off-by: Amit Kucheria <amit.kucheria at ubuntu.com>
> 
> Signed-off-by: Ben Collins <ben.collins at canonical.com>
> ---
>  kernel/power/Kconfig   |   15 +++++++++++++++
>  kernel/power/console.c |    4 ++++
>  2 files changed, 19 insertions(+), 0 deletions(-)
> 
> diff --git a/kernel/power/Kconfig b/kernel/power/Kconfig
> index 5c36ea9..e829331 100644
> --- a/kernel/power/Kconfig
> +++ b/kernel/power/Kconfig
> @@ -133,6 +133,21 @@ config SUSPEND_FREEZER
>  config HIBERNATION_NVS
>  	bool
>  
> +config PM_DISABLE_CONSOLE
> +	bool "Disable Power Management messing with the active console"
> +	depends on PM
> +	default n
> +	---help---
> +	  By default, PM will take over the active console (generally, this means
> +	  switching to the console when suspending from X). This can at times cause
> +	  problems, especially if userspace suspend scripts try to do things with
> +	  the console before or after suspending (e.g. calling vbestate).
> +
> +	  To work around this, enable this option so that PM will not handle the
> +	  console.
> +
> +	  If unsure, say N.
> +
>  config HIBERNATION
>  	bool "Hibernation (aka 'suspend to disk')"
>  	depends on PM && SWAP && ARCH_HIBERNATION_POSSIBLE
> diff --git a/kernel/power/console.c b/kernel/power/console.c
> index 218e5af..5b254ba 100644
> --- a/kernel/power/console.c
> +++ b/kernel/power/console.c
> @@ -17,19 +17,23 @@ static int orig_fgconsole, orig_kmsg;
>  
>  int pm_prepare_console(void)
>  {
> +#ifndef CONFIG_PM_DISABLE_CONSOLE
>  	orig_fgconsole = vt_move_to_console(SUSPEND_CONSOLE, 1);
>  	if (orig_fgconsole < 0)
>  		return 1;
>  
>  	orig_kmsg = vt_kmsg_redirect(SUSPEND_CONSOLE);
> +#endif
>  	return 0;
>  }
>  
>  void pm_restore_console(void)
>  {
> +#ifndef CONFIG_PM_DISABLE_CONSOLE
>  	if (orig_fgconsole >= 0) {
>  		vt_move_to_console(orig_fgconsole, 0);
>  		vt_kmsg_redirect(orig_kmsg);
>  	}
> +#endif
>  }
>  #endif
> -- 
> 1.7.0.4
> 
> 
> 
> 
> 

-- 
----------------------------------------------------------------------
Amit Kucheria, Kernel Engineer || amit.kucheria at canonical.com
----------------------------------------------------------------------




More information about the kernel-team mailing list