'nvidia-settings' recibió un error del sistema X Window (el error fue 'BadValue (parámetro entero fuera de rango para la operación)').

'nvidia-settings' recibió un error del sistema X Window (el error fue 'BadValue (parámetro entero fuera de rango para la operación)').

Desde apt-get dist-upgradeesta mañana, comencé a ver nvidia-settingsfallas cuando intento configurar algo con el siguiente error:

$ The program 'nvidia-settings' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadValue (integer parameter out of range for operation)'.
  (Details: serial 666 error_code 2 request_code 139 minor_code 25)
  (Note to programmers: normally, X errors are reported asynchronously;
   that is, you will receive the error a while after causing it.
   To debug your program, run it with the --sync command line
   option to change this behavior. You can then get a meaningful
   backtrace from your debugger if you break on the gdk_x_error() function.)

Después de pasar algunas horas, probé varias cosas a continuación y no tuve suerte:

  • Cambiar nombre ~/.nvidia-settings-rc--> Se creó un nuevo archivo en algún momento, no estoy seguro.
  • Cambiar nombre /etc/X11/xorg.conf--> No se ha generado el nuevo archivo.
  • Instalar bumblebee--> Tuve la misma situación coneste boletoy se rindió. Desinstalado.
  • Intenté instalar y/o eliminar nvidialas bibliotecas (versiones probadas: 304, 319, 331 que yo recuerde)

Ya que parece elEl último controlador nvidia 331.20 se lanzó esta mañana temprano, Sospecho que la biblioteca recién instalada contiene un malhechor. ¿Pero alguien tiene una idea para solucionar este problema?

Registros del sistema:

$ cat /etc/issue
Ubuntu 12.04.4 LTS \n \l

$ uname -a
Linux 130s-serval 3.2.0-58-generic #88-Ubuntu SMP Tue Dec 3 17:37:58 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

$ for keyword in baseboard-manufacturer baseboard-product-name baseboard-version system-manufacturer system-product-name system-version bios-vendor bios-version bios-release-date; done
>     printf "%-22s: " "$keyword";
>     sudo dmidecode -s "$keyword";
> done
System76, Inc.                            
baseboard-product-name: Serval Professional
baseboard-version     : serp7                    
system-manufacturer   : System76, Inc.                          
system-product-name   : Serval Professional
system-version        : serp7                    
bios-vendor           : American Megatrends Inc.
bios-version          : 4.6.4
bios-release-date     : 06/01/2011

$ dpkg -p nvidia-settings |grep Version
Version: 331.20-0ubuntu0.0.1

¡Gracias!

Respuesta1

Vi el mismo problema ayer. La degradación de 331.20 a 304.88 funcionó para mí:

wget https://launchpad.net/~ubuntu-security/+archive/ppa/+build/4479926/+files/nvidia-settings_304.88-0ubuntu0.2_amd64.deb
sudo dpkg -i nvidia-settings_304.88-0ubuntu0.2_amd64.deb

Respuesta2

Sí, como sugirió @Eric, la degradación a 304.88 funciona. Como estaba encendido i386y me faltaban algunas dependencias, tuve que seguir algunos pasos más. Lo siguiente debería resolverlo para las personas que usan i386.

Primero descargue el paquete i386

wget http://http.us.debian.org/debian/pool/contrib/n/nvidia-settings/nvidia-settings_304.88-1_i386.deb

El paquete tiene algunas dependencias, las necesitamos instaladas antes de dpkgejecutar el paquete anterior. (En mi caso me faltaba nvidia-installer-cleanupy libxnvctrl0):

wget http://http.us.debian.org/debian/pool/contrib/n/nvidia-support/nvidia-installer-cleanup_20131102+1_i386.deb
wget http://http.us.debian.org/debian/pool/contrib/n/nvidia-settings/libxnvctrl0_319.72-1_i386.deb

Para dpkg- nvidia-installer-cleanup, necesitamos hacer una pequeña limpieza.

sudo apt-get remove nvidia-current nvidia-current-updates nvidia-common

Una vez que se hayan eliminado los paquetes anteriores, podrá dpkgdescargar los paquetes uno por uno.

sudo -i
dpkg nvidia-installer-cleanup_20131102+1_i386.deb
dpkg libxnvctrl0
dpkg nvidia-settings_304.88-1_i386.deb

Una vez que haya regresado a la versión 304.88 y no desee que se actualice, puede bloquear la versión de la siguiente manera:

echo “nvidia-settings-304 hold” | dpkg --set-selections

En el futuro, si deseas eliminar la retención, puedes hacer lo siguiente:

echo “nvidia-settings-304 install” | dpkg --set-selections

NOTA: También puede utilizar el synapticadministrador de paquetes. Simplemente seleccione su paquete y, en el menú del paquete, seleccione Lock Version.

información relacionada