Commit f7b8988f authored by Rafael J. Wysocki's avatar Rafael J. Wysocki Committed by Linus Torvalds

[PATCH] swsusp: do not change log level during suspend/resume

Prevent the kernel from setting the log level to 10 unconditionally during
suspend/resume which was needed in the past for debugging, but generally is
undesirable.
Signed-off-by: default avatarRafael J. Wysocki <rjw@sisk.pl>
Acked-by: default avatarPavel Machek <pavel@suse.cz>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent a8183ebb
...@@ -9,18 +9,11 @@ ...@@ -9,18 +9,11 @@
#include <linux/console.h> #include <linux/console.h>
#include "power.h" #include "power.h"
static int new_loglevel = 10;
static int orig_loglevel;
#ifdef SUSPEND_CONSOLE #ifdef SUSPEND_CONSOLE
static int orig_fgconsole, orig_kmsg; static int orig_fgconsole, orig_kmsg;
#endif
int pm_prepare_console(void) int pm_prepare_console(void)
{ {
orig_loglevel = console_loglevel;
console_loglevel = new_loglevel;
#ifdef SUSPEND_CONSOLE
acquire_console_sem(); acquire_console_sem();
orig_fgconsole = fg_console; orig_fgconsole = fg_console;
...@@ -41,18 +34,15 @@ int pm_prepare_console(void) ...@@ -41,18 +34,15 @@ int pm_prepare_console(void)
} }
orig_kmsg = kmsg_redirect; orig_kmsg = kmsg_redirect;
kmsg_redirect = SUSPEND_CONSOLE; kmsg_redirect = SUSPEND_CONSOLE;
#endif
return 0; return 0;
} }
void pm_restore_console(void) void pm_restore_console(void)
{ {
console_loglevel = orig_loglevel;
#ifdef SUSPEND_CONSOLE
acquire_console_sem(); acquire_console_sem();
set_console(orig_fgconsole); set_console(orig_fgconsole);
release_console_sem(); release_console_sem();
kmsg_redirect = orig_kmsg; kmsg_redirect = orig_kmsg;
#endif
return; return;
} }
#endif
...@@ -42,8 +42,13 @@ static struct subsys_attribute _name##_attr = { \ ...@@ -42,8 +42,13 @@ static struct subsys_attribute _name##_attr = { \
extern struct subsystem power_subsys; extern struct subsystem power_subsys;
#ifdef SUSPEND_CONSOLE
extern int pm_prepare_console(void); extern int pm_prepare_console(void);
extern void pm_restore_console(void); extern void pm_restore_console(void);
#else
static int pm_prepare_console(void) { return 0; }
static void pm_restore_console(void) {}
#endif
/* References to section boundaries */ /* References to section boundaries */
extern const void __nosave_begin, __nosave_end; extern const void __nosave_begin, __nosave_end;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment