diff options
author | Jason Wessel <jason.wessel@windriver.com> | 2010-02-18 16:22:53 -0600 |
---|---|---|
committer | Jason Wessel <jason.wessel@windriver.com> | 2010-02-18 16:22:53 -0600 |
commit | 3d3ff14a88feaebe18fb4572ead17d53ebccdba1 (patch) | |
tree | 8ea47153094b3d5f356c541de81fff2ac5fbf835 /drivers/video | |
parent | dc2e660f63c2e059a6901b63b567da00735f47d6 (diff) |
kms,kdb: Force unblank a console device
The kgdboc pre exception handler must atomically save the state of the
existing VC console and activate it, if it is blanked.
Before restoring the kernel to a running state, the kgdboc post
exception handler will restore the state of the VC variables that got
changed while atomic.
CC: David Airlie <airlied@linux.ie>
CC: Jesse Barnes <jbarnes@virtuousgeek.org>
Signed-off-by: Jason Wessel <jason.wessel@windriver.com>
Diffstat (limited to 'drivers/video')
-rw-r--r-- | drivers/video/console/fbcon.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/video/console/fbcon.c b/drivers/video/console/fbcon.c index 3681c6a88212..6f2ed5a15e0c 100644 --- a/drivers/video/console/fbcon.c +++ b/drivers/video/console/fbcon.c @@ -75,6 +75,7 @@ #include <linux/init.h> #include <linux/interrupt.h> #include <linux/crc32.h> /* For counting font checksums */ +#include <linux/kgdb.h> #include <asm/fb.h> #include <asm/irq.h> #include <asm/system.h> @@ -2318,6 +2319,12 @@ static int fbcon_blank(struct vc_data *vc, int blank, int mode_switch) } } + if (in_dbg_master()) { + if (info->fbops->fb_blank) + info->fbops->fb_blank(blank, info); + return 0; + } + if (!fbcon_is_inactive(vc, info)) { if (ops->blank_state != blank) { ops->blank_state = blank; |