X-Git-Url: http://git.rot13.org/?a=blobdiff_plain;f=kernel%2Fpower%2Fconsole.c;h=89bcf4973ee51cb8cc8028c6a3cf6a2272367b0a;hb=b257bc051f06607beb3004d9a1c297085e728bec;hp=579d239d129fd5dd03458f8889577400b3b56aa1;hpb=f7b8988ff50d99c99746f65f420364e91362c065;p=powerpc.git diff --git a/kernel/power/console.c b/kernel/power/console.c index 579d239d12..89bcf4973e 100644 --- a/kernel/power/console.c +++ b/kernel/power/console.c @@ -9,7 +9,9 @@ #include #include "power.h" -#ifdef SUSPEND_CONSOLE +#if defined(CONFIG_VT) && defined(CONFIG_VT_CONSOLE) +#define SUSPEND_CONSOLE (MAX_NR_CONSOLES-1) + static int orig_fgconsole, orig_kmsg; int pm_prepare_console(void) @@ -25,7 +27,15 @@ int pm_prepare_console(void) return 1; } - set_console(SUSPEND_CONSOLE); + if (set_console(SUSPEND_CONSOLE)) { + /* + * We're unable to switch to the SUSPEND_CONSOLE. + * Let the calling function know so it can decide + * what to do. + */ + release_console_sem(); + return 1; + } release_console_sem(); if (vt_waitactive(SUSPEND_CONSOLE)) {