Re: -mm: PM=y, VT=n doesn't compile

From: Andrew Morton
Date: Sat Mar 18 2006 - 14:52:29 EST


"Rafael J. Wysocki" <rjw@xxxxxxx> wrote:
>
> --- linux-2.6.16-rc6-mm2.orig/drivers/base/power/suspend.c
> +++ linux-2.6.16-rc6-mm2/drivers/base/power/suspend.c
> @@ -8,6 +8,9 @@
> *
> */
>
> +#include <linux/vt_kern.h>
> +#include <linux/kbd_kern.h>
> +#include <linux/console.h>
> #include <linux/device.h>
> #include <linux/kallsyms.h>
> #include <linux/pm.h>
> @@ -65,6 +68,17 @@ int suspend_device(struct device * dev,
> return error;
> }
>
> +#ifdef CONFIG_VT
> +static inline int is_suspend_console_safe(void)
> +{
> + /* It is unsafe to suspend devices while X has control of the
> + * hardware. Make sure we are running on a kernel-controlled console.
> + */
> + return vc_cons[fg_console].d->vc_mode == KD_TEXT;
> +}

Please implement this inside the vt subsystem, not the pm subsystem. That way

a) It gets to be called "console_is_in_text_mode()", or
"vt_not_running_X()" or something, which is something someone else might
want to know.

b) People who work on vt code don't need to keep an eye on a hunk of pm
code at the same time.

c) You won't need all those includes.

> +#else
> +#define is_suspend_console_safe() 1

And this can go in console.h

> +#endif
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/