summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKrzysztof Helt <krzysztof.h1@wp.pl>2008-06-06 07:46:33 +0200
committerLinus Torvalds <torvalds@linux-foundation.org>2008-06-06 20:29:11 +0200
commit10732c35dff6c2e15e413e7806a7114a2faa0ecf (patch)
tree1c20e99e6918fc0c4b9202b3d9dc1309139c75a5
parentkeys: remove unused key_alloc_sem (diff)
downloadlinux-10732c35dff6c2e15e413e7806a7114a2faa0ecf.tar.xz
linux-10732c35dff6c2e15e413e7806a7114a2faa0ecf.zip
fbcon: fix wrong vmode bits copied on console switch
The interlaced and double line mode bits should not be copied to new console when the console is switched. Otherwise, the new console may be set to incorrect refresh rate. Also, the x and y offsets does not need to be copied. Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--drivers/video/console/fbcon.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/drivers/video/console/fbcon.c b/drivers/video/console/fbcon.c
index 5fa8b76673cb..97aff8db10bf 100644
--- a/drivers/video/console/fbcon.c
+++ b/drivers/video/console/fbcon.c
@@ -2275,9 +2275,7 @@ static int fbcon_switch(struct vc_data *vc)
* in fb_set_var()
*/
info->var.activate = var.activate;
- var.yoffset = info->var.yoffset;
- var.xoffset = info->var.xoffset;
- var.vmode = info->var.vmode;
+ var.vmode |= info->var.vmode & ~FB_VMODE_MASK;
fb_set_var(info, &var);
ops->var = info->var;