aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/vt.h
diff options
context:
space:
mode:
authorAri Entlich <atrigent@ccs.neu.edu>2010-02-19 09:37:55 -0500
committerGreg Kroah-Hartman <gregkh@suse.de>2010-03-02 17:43:23 -0500
commiteec9fe7d1ab4a0dfac4cb43047a7657fffd0002f (patch)
treeba6b4a517aaacbfde6e5496d02f97e6c9b491c2e /include/linux/vt.h
parentd9661adfb8e53a7647360140af3b92284cbe52d4 (diff)
tty: Add a new VT mode which is like VT_PROCESS but doesn't require a VT_RELDISP ioctl call
This new VT mode (VT_PROCESS_AUTO) does everything that VT_PROCESS does except that it doesn't wait for a VT_RELDISP ioctl before switching away from a VT with that mode. If the X server eventually uses this new mode, debugging and crash recovery should become easier. This is because even when currently in the VT of a frozen X server it would still be possible to switch out by doing SysRq-r and then CTRL-<number of a text vt>, sshing in and doing chvt <number of a text vt>, or any other method of VT switching. The general concensus on #xorg-devel seems to be that it should be safe to use this with X now that we have KMS. This also moves the VT_ACKACQ define to a more appropriate place, for clarity's sake. Signed-off-by: Ari Entlich <atrigent@ccs.neu.edu> Acked-by: Alan Cox <alan@linux.intel.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'include/linux/vt.h')
-rw-r--r--include/linux/vt.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/include/linux/vt.h b/include/linux/vt.h
index d5dd0bc408fd..778b7b2a47d4 100644
--- a/include/linux/vt.h
+++ b/include/linux/vt.h
@@ -27,7 +27,7 @@ struct vt_mode {
27#define VT_SETMODE 0x5602 /* set mode of active vt */ 27#define VT_SETMODE 0x5602 /* set mode of active vt */
28#define VT_AUTO 0x00 /* auto vt switching */ 28#define VT_AUTO 0x00 /* auto vt switching */
29#define VT_PROCESS 0x01 /* process controls switching */ 29#define VT_PROCESS 0x01 /* process controls switching */
30#define VT_ACKACQ 0x02 /* acknowledge switch */ 30#define VT_PROCESS_AUTO 0x02 /* process is notified of switching */
31 31
32struct vt_stat { 32struct vt_stat {
33 unsigned short v_active; /* active vt */ 33 unsigned short v_active; /* active vt */
@@ -38,6 +38,7 @@ struct vt_stat {
38#define VT_SENDSIG 0x5604 /* signal to send to bitmask of vts */ 38#define VT_SENDSIG 0x5604 /* signal to send to bitmask of vts */
39 39
40#define VT_RELDISP 0x5605 /* release display */ 40#define VT_RELDISP 0x5605 /* release display */
41#define VT_ACKACQ 0x02 /* acknowledge switch */
41 42
42#define VT_ACTIVATE 0x5606 /* make vt active */ 43#define VT_ACTIVATE 0x5606 /* make vt active */
43#define VT_WAITACTIVE 0x5607 /* wait for vt active */ 44#define VT_WAITACTIVE 0x5607 /* wait for vt active */