pkg upgrade quebrou o servidor X no FreeBSD ((II) NVIDIA (0): MetaModes validados: “NULL”)

2

Problema

Após uma atualização recente de pkg e cerca de 60 outros programas, meu servidor X quebrou.

Eu costumava iniciar o dwm com startx , mas recebi a seguinte mensagem de erro:

xauth: file /home/user/.serverauth.1323 does not exists  
xauth: (argv):1: bad display name "pc-freebsd:0" in "list" command  
xauth: (stdin):1: bad display name "pc-freebsd:0" in "add" command

Informações

  • Eu não posso fazer nada depois neste tty.

  • Eu sei que startx alcança .xinitrc porque meu ~/.xinitrc está configurado para emitir um bipe quando está sendo processado.

  • enable_xauth está definido como 1 em /usr/local/bin/startx .

Xorg.0.log

[   131.714] 
X.Org X Server 1.17.4
Release Date: 2015-10-28
[   131.714] X Protocol Version 11, Revision 0
[   131.714] Build Operating System: FreeBSD 10.1-RELEASE-p39 amd64 
[   131.714] Current Operating System: FreeBSD pc-freebsd 10.3-RELEASE-p4 FreeBSD 10.3-RELEASE-p4 #0: Sat May 28 12:23:44 UTC 2016     [email protected]:/usr/obj/usr/src/sys/GENERIC amd64
[   131.715] Build Date: 04 October 2016  06:28:38AM
[   131.715]  
[   131.715] Current version of pixman: 0.34.0
[   131.715]  Before reporting problems, check http://wiki.x.org
  to make sure that you have the latest version.
[   131.715] Markers: (--) probed, (**) from config file, (==) default setting,
  (++) from command line, (!!) notice, (II) informational,
  (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[   131.715] (==) Log file: "/var/log/Xorg.0.log", Time: Mon Oct 10 23:11:24 2016
[   131.759] (==) Using config file: "/etc/X11/xorg.conf"
[   131.760] (==) ServerLayout "X.org Configured"
[   131.760] (**) |-->Screen "Screen0" (0)
[   131.760] (**) |   |-->Monitor "Monitor0"
[   131.760] (**) |   |-->Device "Card0"
[   131.761] (**) |-->Input Device "Mouse0"
[   131.761] (**) |-->Input Device "Keyboard0"
[   131.761] (==) Automatically adding devices
[   131.761] (==) Automatically enabling devices
[   131.761] (==) Not automatically adding GPU devices
[   131.851] (**) FontPath set to:
  /usr/local/share/fonts/misc/,
  /usr/local/share/fonts/TTF/,
  /usr/local/share/fonts/OTF/,
  /usr/local/share/fonts/Type1/,
  /usr/local/share/fonts/100dpi/,
  /usr/local/share/fonts/75dpi/,
  /usr/local/share/fonts/misc/,
  /usr/local/share/fonts/TTF/,
  /usr/local/share/fonts/OTF/,
  /usr/local/share/fonts/Type1/,
  /usr/local/share/fonts/100dpi/,
  /usr/local/share/fonts/75dpi/
[   131.851] (**) ModulePath set to "/usr/local/lib/xorg/modules"
[   131.851] (WW) Hotplugging is on, devices using drivers 'kbd', 'mouse' or 'vmmouse' will be disabled.
[   131.851] (WW) Disabling Mouse0
[   131.851] (WW) Disabling Keyboard0
[   131.851] (II) Loader magic: 0x801510
[   131.851] (II) Module ABI versions:
[   131.851]  X.Org ANSI C Emulation: 0.4
[   131.851]  X.Org Video Driver: 19.0
[   131.851]  X.Org XInput driver : 21.0
[   131.851]  X.Org Server Extension : 9.0
[   131.852] (--) PCI:*(0:1:0:0) 10de:0dd6:1028:04b7 rev 161, Mem @ 0xd4000000/16777216, 0xc0000000/268435456, 0xd0000000/33554432, I/O @ 0x00004000/128, BIOS @ 0x????????/65536
[   131.852] (II) "glx" will be loaded. This was enabled by default and also specified in the config file.
[   131.852] (II) LoadModule: "glx"
[   131.885] (II) Loading /usr/local/lib/xorg/modules/extensions/libglx.so
[   132.263] (II) Module glx: vendor="NVIDIA Corporation"
[   132.264]  compiled for 4.0.2, module version = 1.0.0
[   132.264]  Module class: X.Org Server Extension
[   132.264] (II) NVIDIA GLX Module  367.44  Wed Aug 17 22:01:17 PDT 2016
[   132.273] (II) LoadModule: "nvidia"
[   132.273] (II) Loading /usr/local/lib/xorg/modules/drivers/nvidia_drv.so
[   132.329] (II) Module nvidia: vendor="NVIDIA Corporation"
[   132.329]  compiled for 4.0.2, module version = 1.0.0
[   132.329]  Module class: X.Org Video Driver
[   132.336] (II) NVIDIA dlloader X Driver  367.44  Wed Aug 17 21:41:06 PDT 2016
[   132.336] (II) NVIDIA Unified Driver for all Supported NVIDIA GPUs
[   132.337] (--) Using syscons driver with X support (version 0.x)
[   132.337] (--) using VT number 9

[   132.359] (II) Loading sub module "fb"
[   132.359] (II) LoadModule: "fb"
[   132.359] (II) Loading /usr/local/lib/xorg/modules/libfb.so
[   132.374] (II) Module fb: vendor="X.Org Foundation"
[   132.374]  compiled for 1.17.4, module version = 1.0.0
[   132.374]  ABI class: X.Org ANSI C Emulation, version 0.4
[   132.374] (II) Loading sub module "wfb"
[   132.374] (II) LoadModule: "wfb"
[   132.374] (II) Loading /usr/local/lib/xorg/modules/libwfb.so
[   132.380] (II) Module wfb: vendor="X.Org Foundation"
[   132.380]  compiled for 1.17.4, module version = 1.0.0
[   132.380]  ABI class: X.Org ANSI C Emulation, version 0.4
[   132.381] (II) Loading sub module "ramdac"
[   132.381] (II) LoadModule: "ramdac"
[   132.381] (II) Module "ramdac" already built-in
[   132.383] (WW) VGA arbiter: cannot open kernel arbiter, no multi-card support
[   132.383] (==) NVIDIA(0): Depth 24, (==) framebuffer bpp 32
[   132.383] (==) NVIDIA(0): RGB weight 888
[   132.383] (==) NVIDIA(0): Default visual is TrueColor
[   132.383] (==) NVIDIA(0): Using gamma correction (1.0, 1.0, 1.0)
[   132.385] (**) NVIDIA(0): Enabling 2D acceleration
[   133.170] (II) NVIDIA(0): NVIDIA GPU GeForce GT 550M (GF106) at PCI:1:0:0 (GPU-0)
[   133.170] (--) NVIDIA(0): Memory: 1048576 kBytes
[   133.170] (--) NVIDIA(0): VideoBIOS: 70.06.32.00.04
[   133.170] (II) NVIDIA(0): Detected PCI Express Link width: 16X
[   133.182] (II) NVIDIA(0): Validated MetaModes:
[   133.182] (II) NVIDIA(0):     "NULL"
[   133.182] (II) NVIDIA(0): Virtual screen size determined to be 640 x 480
[   133.182] (WW) NVIDIA(0): Unable to get display device for DPI computation.
[   133.182] (==) NVIDIA(0): DPI set to (75, 75); computed from built-in default
[   133.182] (--) Depth 24 pixmap format is 32 bpp
[   133.182] (II) NVIDIA: Reserving 12288.00 MB of virtual memory for indirect memory
[   133.182] (II) NVIDIA:     access.
[   133.322] (II) NVIDIA(0): Built-in logo is bigger than the screen.
[   133.323] (II) NVIDIA(0): Setting mode "NULL"
[   133.375] (==) NVIDIA(0): Disabling shared memory pixmaps
[   133.375] (==) NVIDIA(0): Backing store enabled
[   133.375] (==) NVIDIA(0): Silken mouse enabled
[   133.389] (==) NVIDIA(0): DPMS enabled
[   133.389] (II) Loading sub module "dri2"
[   133.389] (II) LoadModule: "dri2"
[   133.389] (II) Module "dri2" already built-in
[   133.389] (II) NVIDIA(0): [DRI2] Setup complete
[   133.389] (II) NVIDIA(0): [DRI2]   VDPAU driver: nvidia
[   133.390] (--) RandR disabled
[   133.406] (II) Initializing extension GLX
[   133.406] (II) Indirect GLX disabled.
[   134.137] (II) config/devd: probing input devices...
[   134.137] (II) config/devd: adding input device (null) (/dev/kbdmux)
[   134.137] (II) LoadModule: "kbd"
[   134.149] (II) Loading /usr/local/lib/xorg/modules/input/kbd_drv.so
[   134.154] (II) Module kbd: vendor="X.Org Foundation"
[   134.154]  compiled for 1.17.4, module version = 1.8.1
[   134.154]  Module class: X.Org XInput Driver
[   134.154]  ABI class: X.Org XInput driver, version 21.0
[   134.154] (II) Using input driver 'kbd' for 'kbdmux'
[   134.154] (**) kbdmux: always reports core events
[   134.154] (**) kbdmux: always reports core events
[   134.154] (**) Option "Protocol" "standard"
[   134.154] (**) Option "XkbRules" "base"
[   134.154] (**) Option "XkbModel" "pc105"
[   134.154] (**) Option "XkbLayout" "us"
[   134.154] (**) Option "config_info" "devd:kbdmux"
[   134.154] (II) XINPUT: Adding extended input device "kbdmux" (type: KEYBOARD, id 6)
[   134.161] (II) config/devd: kbdmux is enabled, ignoring device ukbd0
[   134.161] (II) config/devd: kbdmux is enabled, ignoring device ukbd1
[   134.161] (II) config/devd: kbdmux is enabled, ignoring device atkbd0
[   134.161] (II) config/devd: adding input device (null) (/dev/sysmouse)
[   134.161] (II) LoadModule: "mouse"
[   134.161] (II) Loading /usr/local/lib/xorg/modules/input/mouse_drv.so
[   134.162] (II) Module mouse: vendor="X.Org Foundation"
[   134.162]  compiled for 1.17.4, module version = 1.9.1
[   134.162]  Module class: X.Org XInput Driver
[   134.162]  ABI class: X.Org XInput driver, version 21.0
[   134.162] (II) Using input driver 'mouse' for 'sysmouse'
[   134.162] (**) sysmouse: always reports core events
[   134.162] (**) Option "Device" "/dev/sysmouse"
[   134.162] (==) sysmouse: Protocol: "Auto"
[   134.162] (**) sysmouse: always reports core events
[   134.162] (==) sysmouse: Emulate3Buttons, Emulate3Timeout: 50
[   134.162] (**) sysmouse: ZAxisMapping: buttons 4 and 5
[   134.162] (**) sysmouse: Buttons: 5
[   134.162] (**) Option "config_info" "devd:sysmouse"
[   134.162] (II) XINPUT: Adding extended input device "sysmouse" (type: MOUSE, id 7)
[   134.162] (**) sysmouse: (accel) keeping acceleration scheme 1
[   134.162] (**) sysmouse: (accel) acceleration profile 0
[   134.162] (**) sysmouse: (accel) acceleration factor: 2.000
[   134.162] (**) sysmouse: (accel) acceleration threshold: 4
[   134.162] (II) sysmouse: SetupAuto: hw.iftype is 4, hw.model is 0
[   134.162] (II) sysmouse: SetupAuto: protocol is SysMouse
[   134.163] (II) config/devd: device /dev/ums0 already opened
[   134.163] (II) config/devd: device /dev/ums1 already opened
[   134.163] (II) config/devd: device /dev/ums2 already opened
[   134.163] (II) config/devd: device /dev/psm0 already opened

O que eu já tentei

Mate o processo e execute startx novamente

  1. Alterar tty.
  2. Faça login como root.
  3. Executar ps :

    1337 v0 S 1:00:00 /usr/local/bin/X :0 -auth /home/user/.serverauth1323 (Xorg)
    
  4. Mate o processo com kill -9 .

  5. Mude o tty de volta para onde o usuário está logado.

    O usuário pode usar o prompt de comando novamente agora.

    Existe outra mensagem do xauth:

    xauth: (argv):1:  bad display name "pc-freebsd:0" in "remove" command
    
  6. Execute startx .

Não resolve meu problema.

Remover os arquivos /home/user/.serverauth.*

Eu removi todos esses arquivos, mas não ajudou.

Tente o servidor X como root

  1. Faça login como root.
  2. Executar startx .

    O interessante é que, embora eu tenha recebido as mesmas mensagens de erro de xauth e tive que mudar o tty desde que o atual congelou, muitos processos adicionais começaram:

    • xinit
    • xterm (na verdade 3 deles)
    • twm
    • xclock

    Eu tentei matar todos esses processos, mas quando eu corri pkill xclock , a máquina inteira congelou e eu tive que usar o botão liga / desliga.

Defina enable_xauth para 0 em /usr/local/bin/startx .

De acordo com esta discussão em forums.freebsd.org (link) , uma solução hacky pode ser definindo enable_xauth para 0 em /usr/local/bin/startx .

Não funcionou para mim no entanto. As mensagens xauth desapareceram, mas dwm também não começou.

Reinstalar todos os pacotes

Eu decidi tentar reinstalar todos os pacotes com pkg upgrade -f (inspiração: este segmento (link) ).

Após a reinicialização, executei startx e, após um segundo, toda a tela ficou em branco, com apenas um bloco de cursor bem grande no canto superior esquerdo da tela (parece que a fonte ficou maior).

Quando eu alterno o tty e, em seguida, imediatamente retorno, vejo um fluxo de usage: sleeps seconds sendo impresso o tempo todo.

Desconecte a tela remota

A máquina é Dell L702X. Eu uso um monitor externo em vez da tela padrão do laptop. Meu ~/.xinitrc contém as seguintes linhas que desabilitam a tela padrão e transmitem o vídeo para o monitor externo (conectado via HDMI).

xrandr --output DP-1 --off --output HDMI-0 --auto
xrandr --output HDMI-0 --rotate left

Infelizmente, não desconectar o monitor nem comentar essas linhas resolve o problema.

    
por Mateusz Piotrowski 07.10.2016 / 13:36

1 resposta

0

Aparentemente, teve pouco a ver com xauth .

Eu deveria ter lido /usr/ports/UPDATING antes de atualizar.

O problema estava relacionado a essas mensagens de Xorg.0.log :

[   133.182] (II) NVIDIA(0): Validated MetaModes:
[   133.182] (II) NVIDIA(0):     "NULL"

Como podemos ler em /usr/ports/UPDATING :

20160829: AFFECTS: users of x11/nvidia-driver AUTHOR: [email protected]

The NVidia driver has been updated to version 367.35. Starting with version 358.09, new kernel module was added, nvidia-modeset.ko. This new driver component works in conjunction with the nvidia.ko kernel module to program the display engine of the GPU.

Users that experience hangs when starting X11 server, or observe

(II) NVIDIA(0): Validated MetaModes:  (II) NVIDIA(0):     "NULL"

messages in their /var/log/Xorg.0.log file should replace nvidia with nvidia-modeset in /boot/loader.conf or /etc/rc.conf files, depending on how they prefer to load NVidia driver kernel module.

Então, depois que mudei nvidia_load="YES" para nvidia-modeset_load="YES" em /boot/loader.conf , consegui entrar em uma sessão de dwm.

Enquanto isso, eu fiz uma atualização do sistema para o FreeBSD 11.0, então não tenho certeza se é tudo que você precisa para resolver o problema.

    
por 11.10.2016 / 01:36