summaryrefslogtreecommitdiffstats
path: root/sys/dev/vt/vt.h
diff options
context:
space:
mode:
authoremaste <emaste@FreeBSD.org>2014-09-03 14:00:37 +0000
committeremaste <emaste@FreeBSD.org>2014-09-03 14:00:37 +0000
commit41ee2454d86a5d5d93966dd7badebc8a999ed5ba (patch)
tree03c385e91a0992f0d5eadfddee2bac1026443912 /sys/dev/vt/vt.h
parenta8ec7c36a31697d414a0126c83fea550ce6e0be5 (diff)
downloadFreeBSD-src-41ee2454d86a5d5d93966dd7badebc8a999ed5ba.zip
FreeBSD-src-41ee2454d86a5d5d93966dd7badebc8a999ed5ba.tar.gz
MFC r270280 by dumbbell: vt(4): Pause the flush timer while swithing window
This fixes bad looking refresh when switching window: squares instead of text, flashing screen, and so on. In the worst case, vt_flush() came at a very inappropriate timing and the screen was not refreshed at all (leaving squares all over the place). This doesn't fix the flickering of the screen with vt_vga, because the sync signal is temporarily stopped and the video memory is cleared. Sponsored by: The FreeBSD Foundation
Diffstat (limited to 'sys/dev/vt/vt.h')
-rw-r--r--sys/dev/vt/vt.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/dev/vt/vt.h b/sys/dev/vt/vt.h
index 7f19b0f..c4e1ed7 100644
--- a/sys/dev/vt/vt.h
+++ b/sys/dev/vt/vt.h
@@ -128,6 +128,7 @@ struct vt_device {
struct mtx vd_lock; /* Per-device lock. */
struct cv vd_winswitch; /* (d) Window switch notify. */
struct callout vd_timer; /* (d) Display timer. */
+ volatile unsigned int vd_timer_armed;/* (?) Display timer started.*/
int vd_flags; /* (d) Device flags. */
#define VDF_TEXTMODE 0x01 /* Do text mode rendering. */
#define VDF_SPLASH 0x02 /* Splash screen active. */
OpenPOWER on IntegriCloud