User Tag List

Resultados 1 al 4 de 4

Tema: Salida gráfica de las TTY congelada al cargar VFIO.

  1. #1
    Torneos ganados: 1

    Fecha de ingreso
    Jul 2005
    Ubicación
    Avilés
    Mensajes
    6,167
    Mencionado
    58 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    766
    Agradecer Thanks Received 
    770
    Thanked in
    Agradecido 458 veces en [ARG:2 UNDEFINED] posts

    Salida gráfica de las TTY congelada al cargar VFIO.

    A ver, que vuelvo a dar la chapa con un problema del que no encuentro solución (y he estado buscando días pero nada):

    Cuando arranco la máquina virtual de Windows, a la que le paso la tarjeta gráfica que tengo solo para ella, la salida gráfica de las TTY se cuelga, y no actualizan imagen (funcionar siguen funcionando que se puede ejecutar un reboot now por ejemplo).

    Si ejecuto sudo dmesg | grep -C2 [Cc]onsole, se puede ver que cambia el dispositivo de la consola:

    Código:
    [    0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
    [    0.000000] spurious 8259A interrupt: IRQ7.
    [    0.000000] Console: colour dummy device 80x25
    [    0.000000] printk: console [tty0] enabled
    [    0.000000] ACPI: Core revision 20220331
    [    0.000000] clocksource: hpet: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 133484873504 ns
    
    -- (Esto supongo que será al aplicar las opciones puestas en grub)
    
    [    0.752897] vesafb: Truecolor: size=8:8:8:8, shift=24:16:8:0
    [    0.752905] vesafb: framebuffer at 0xd1000000, mapped to 0x000000000dc4ae28, using 8128k, total 8128k
    [    0.778178] Console: switching to colour frame buffer device 240x67
    [    0.803377] fb0: VESA VGA frame buffer device
    [    0.811792] NET: Registered PF_INET6 protocol family
    --
    [    9.235681] systemd[1]: auth-rpcgss-module.service - Kernel Module supporting RPCSEC_GSS was skipped because of an unmet condition check (ConditionPathExists=/etc/krb5.keytab).
    [    9.235778] systemd[1]: Finished blk-availability.service - Availability of block devices.
    [    9.255942] systemd[1]: Starting keyboard-setup.service - Set the console keyboard layout...
    [    9.261126] RPC: Registered named UNIX socket transport module.
    [    9.261128] RPC: Registered udp transport module.
    
    -- (Al arrancar la máquina virtual)
    
    [  187.840303] xpad 5-4.4:1.0: xpad_try_sending_next_out_packet - usb_submit_urb failed with result -19
    [  187.969051] xhci_hcd 0000:12:00.3: USB bus 5 deregistered
    [  187.969747] Console: switching to colour dummy device 80x25
    [  187.969839] vfio-pci 0000:11:00.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=io+mem:owns=none
    [  188.292035] virbr0: port 1(vnet0) entered blocking state
    De hecho, si aíslo la gráfica en el arranque mediante el archivo etc/modprobe.d/vfio.conf poniendo (1002:73df,1002:ab28 son la GPU y su controladora de audio ):

    Código:
    options vfio-pci ids=1002:73df,1002:ab28
    ya sucede que se cuelga la salida gráfica justo en el momento que carga vfio-pci (y en cuanto el gestor de inicio de sesión se puede continuar con normalidad).

    He estado buscando la forma de evitarlo o, por lo menos, cambiar el dispositivo de salida de forma manual y nada, a lo único que he llegado es a ver que, en el momento que se carga vfio-pci, desaparece el archivo /dev/fb0.

    "Toda opinión vertida por este usuario intentá estar en concordancia con la física y matemáticas vigentes. En caso de no aceptar ambas, en parte o su totalidad, por favor, abstengase de iniciar una discusión dado que los sistemas son incompatibles".

  2. #2
    Torneos ganados: 1

    Fecha de ingreso
    Jul 2005
    Ubicación
    Avilés
    Mensajes
    6,167
    Mencionado
    58 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    766
    Agradecer Thanks Received 
    770
    Thanked in
    Agradecido 458 veces en [ARG:2 UNDEFINED] posts
    Es muy de nicho la pregunta por meter lo de VFIO, pero solo ¿para solo lo último?
    ¿Hay forma de controlar el hardware del framebuffer (o lo que sea exactamente que llama "Console" el registro de linux)?

    Me pongo a buscar y lo que me aparece es relacionado con la consola virtual en sí, no con el control sobre el hardware que la dibuja.

    "Toda opinión vertida por este usuario intentá estar en concordancia con la física y matemáticas vigentes. En caso de no aceptar ambas, en parte o su totalidad, por favor, abstengase de iniciar una discusión dado que los sistemas son incompatibles".

  3. #3

    Fecha de ingreso
    Mar 2007
    Ubicación
    Barna
    Mensajes
    10,349
    Mencionado
    93 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    371
    Agradecer Thanks Received 
    1,791
    Thanked in
    Agradecido 947 veces en [ARG:2 UNDEFINED] posts
    Vaya cosas raras que haces

    Aquí creo que te explican un poco qué puede estar pasando: https://passthroughpo.st/explaining-...-gpu-manually/ Ell fb de vesa está funcionando hasta que se carga el módulo de vfio, que entonces le cede el control a la tarjeta gráfica real. Pero en ese momento, el kernel de Linux ya está a top ede escalope con vesa y le haces el lío. La solución parece ser desactivar los fb clásicos vesa y efifb desde el inicio del kernel, añadiento las opciones correspondientes al arranque del propio kernel

    En /etc/default/grub o directamente en el menú de carga de grub, el que aparece al inicio pulsando "o", por si quieres probar cosas pero sin cambiar nada hasta definir bien el comando (tendrás que hacerlo para cada arranque así que acabarás modificando el archivo)

    Código:
    GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on video=efifb:off,vesafb:off"
    Si has escogido modificar el archivo de configuración en vez de cambiar las opciones en el menú de arranque, ejecuta:

    Código:
    sudo grub-mkconfig -o /boot/grub/grub.cfg
    Por supuesto, guarda snapshot de esa máquina virtual por si nos equivocamos

    Ya te he contado todo lo que sé así que si esto no funciona, ni idea. Los parámetros del framebuffer se configuran con el comando fbset (https://manpages.ubuntu.com/manpages...1/fbset.1.html) pero he entendido que tu dispositivo /dev/fb0 desaparece así que de poco te servirá.

    -----Actualizado-----

    ah, espera, que he entendido justo al revés.

    Tu máquina host es Linux, y la máquina guest es un Windows. Cuando el Windows se inicia y toma el control de su tarjeta gráfica dedicada, la consola del host Linux deja de responderte. ¿Es así?

    Pues ni idea.
    "Todo es absolutamente falso, salvo alguna cosa"

  4. #4
    Torneos ganados: 1

    Fecha de ingreso
    Jul 2005
    Ubicación
    Avilés
    Mensajes
    6,167
    Mencionado
    58 Post(s)
    Tagged
    0 Tema(s)
    Agradecer Thanks Given 
    766
    Agradecer Thanks Received 
    770
    Thanked in
    Agradecido 458 veces en [ARG:2 UNDEFINED] posts
    Cita Iniciado por juanvvc Ver mensaje
    Vaya cosas raras que haces
    Hasta que proton no vaya al 100%, o una alternativa, es la mejor forma para jugar a juegos "desde" linux .

    Cita Iniciado por juanvvc Ver mensaje
    Ya te he contado todo lo que sé así que si esto no funciona, ni idea. Los parámetros del framebuffer se configuran con el comando fbset (https://manpages.ubuntu.com/manpages...1/fbset.1.html) pero he entendido que tu dispositivo /dev/fb0 desaparece así que de poco te servirá.
    Sí, probé a a ver si cambiaba algo con el fbset, pero una vez que arranca la máquina y desaparece fb0 ya no hay tu tía para modificar nada.

    Cita Iniciado por juanvvc Ver mensaje
    Tu máquina host es Linux, y la máquina guest es un Windows. Cuando el Windows se inicia y toma el control de su tarjeta gráfica dedicada, la consola del host Linux deja de responderte. ¿Es así?

    Pues ni idea.
    Exáctamente.

    Gracias por intentar ayudarme. Si no sabes tú de esto ya me rindo .

    "Toda opinión vertida por este usuario intentá estar en concordancia con la física y matemáticas vigentes. En caso de no aceptar ambas, en parte o su totalidad, por favor, abstengase de iniciar una discusión dado que los sistemas son incompatibles".

Permisos de publicación

  • No puedes crear nuevos temas
  • No puedes responder temas
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •