[Bug 220562] [patch] x11-servers/xorg-server: fix terminal initialization in absence of xf86-input-keyboard driver

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Sat Jul 8 15:16:11 UTC 2017


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=220562

            Bug ID: 220562
           Summary: [patch] x11-servers/xorg-server: fix terminal
                    initialization in absence of xf86-input-keyboard
                    driver
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Keywords: patch
          Severity: Affects Some People
          Priority: ---
         Component: Individual Port(s)
          Assignee: x11 at FreeBSD.org
          Reporter: wulf at freebsd.org
          Assignee: x11 at FreeBSD.org
          Keywords: patch
             Flags: maintainer-feedback?(x11 at FreeBSD.org)

Created attachment 184182
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=184182&action=edit
x11-servers.xorg-server.patch

Xorg-server is the program that shares framebuffer with the kernel terminal
emulator. To avoid interference it must disable terminal output on start and
restore on finish.
Currently it is done partially by xorg-server itself, partially by and
xf86-input-keyboard driver. Switching to xf86-input-evdev or
xf86-input-libinput as keyboard events source disables xf86-input-keyboard and
broke terminal handling.
Attached patch fixes terminal initialization with copy-pasting missing chunks
of code from xf86-input-keyboard to xorg-server. Similar changes are already
done in Linux-specific parts of xorg-server (See
hw/xfree86/os-support/linux/lnx_init.c).

Attached patch:
1. Disables processing of special keys (CTRL-C, ALT-Fn) by switching terminal
keyboard to K_RAW mode.
2. Turns off annoying bell on input queue overflow.
3. Disables terminal echoing.

It is believed that switching terminal to KD_GRAPHICS mode should do #3, but
that is wrong at least on VT consoles.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-x11 mailing list