uterm: vt: keep graphics mode during VT switch
If we open a VT, we assume that we are the only user on it. Therefore, we put it into graphics mode _once_ and keep it this way. Resetting it to text mode is useless, as there is no other user and every VT has its own modes. This also fixes page-flip issues during VT-switches which caused the text-mode fbdev layer to claim one vertical-sync for their own page-flip only for us to override it immediately after it is done. Signed-off-by: David Herrmann <dh.herrmann@googlemail.com>
This commit is contained in:
parent
8e837167c5
commit
614fe3dc81
@ -204,9 +204,6 @@ static void real_sig_enter(struct uterm_vt *vt, struct signalfd_siginfo *info)
|
||||
|
||||
log_debug("enter VT %d %p due to VT signal", vt->real_num, vt);
|
||||
ioctl(vt->real_fd, VT_RELDISP, VT_ACKACQ);
|
||||
if (ioctl(vt->real_fd, KDSETMODE, KD_GRAPHICS))
|
||||
log_warn("cannot set graphics mode on vt %p (%d): %m", vt,
|
||||
errno);
|
||||
vt_call_activate(vt);
|
||||
}
|
||||
|
||||
@ -246,8 +243,6 @@ static void real_sig_leave(struct uterm_vt *vt, struct signalfd_siginfo *info)
|
||||
return;
|
||||
}
|
||||
ioctl(vt->real_fd, VT_RELDISP, 1);
|
||||
if (ioctl(vt->real_fd, KDSETMODE, KD_TEXT))
|
||||
log_warn("cannot set text mode on vt %p (%d): %m", vt, errno);
|
||||
}
|
||||
|
||||
static void real_vt_input(struct ev_fd *fd, int mask, void *data)
|
||||
|
Loading…
x
Reference in New Issue
Block a user