¿Por qué mi sistema se congela cuando bash desconectar la GPU de Radeon?

En este momento estoy tratando de lograr esto: http://arseniyshestakov.com/2016/03/31/how-to-pass-gpu-to-vm-and-back-without-x-restart/

He conseguido todo en el host para trabajar. DRI_PRIME funciona correctamente como se muestra a continuación:

$ DRI_PRIME=1 glxinfo | grep "renderer string" OpenGL renderer string: Gallium 0.4 on AMD HAWAII (DRM 2.43.0, LLVM 3.7.1) $ glxinfo | grep "renderer string" OpenGL renderer string: Mesa DRI Intel(R) Sandybridge Server 

El problema es que el sistema se congela por completo cuando bash mover la GPU de radeon a vfio-pci usando este script:

 #!/bin/bash set -x echo "1002 67b1" > /sys/bus/pci/drivers/vfio-pci/new_id echo "0000:01:00.0" > /sys/bus/pci/devices/0000:01:00.0/driver/unbind echo "0000:01:00.0" > /sys/bus/pci/drivers/vfio-pci/bind echo "1002 67b1" > /sys/bus/pci/drivers/vfio-pci/remove_id echo "1002 aac8" > /sys/bus/pci/drivers/vfio-pci/new_id echo "0000:01:00.1" > /sys/bus/pci/devices/0000:01:00.1/driver/unbind echo "0000:01:00.1" > /sys/bus/pci/drivers/vfio-pci/bind echo "1002 aac8" > /sys/bus/pci/drivers/vfio-pci/remove_id set +x 

Se congela en la línea: echo "0000: 01: 00.0"> /sys/bus/pci/devices/0000:01:00.0/driver/unbind y lo único que puedo hacer es apagar el sistema con el button de encendido.

Revisé journalctl y noté que esto sucedía después de que el sistema se congeló:

 Apr 02 11:13:12 joey-arch-pc kernel: WARNING: CPU: 1 PID: 7293 at drivers/gpu/drm/radeon/radeon_gart.c:246 radeon_gart_unbind+0xca/0xe0 [radeon]() Apr 02 11:13:12 joey-arch-pc kernel: trying to unbind memory from uninitialized GART ! 

Aquí está el rest de los posts de journalctl con seguimiento de llamadas: http://pastebin.com/L0asXS16

Encontré una buena cantidad de informes de errores similares a través de google, pero eran bastante viejos. Había una gran variedad de parches diferentes que encontré relacionados con problemas similares, pero como no tengo experiencia con este tipo de cosas, no estaba exactamente seguro de cuál sería el mejor parche para usar. Intenté el hotplug: Propagar el ajuste "ignorar hotplug" al parche para el parche bug # 61891, pero no funcionó. Podría probar un par de parches diferentes, pero pensé que sería más lógico publicar aquí y ver si alguien tiene una solución antes de perder el time intentando ciegamente un montón de parches.

Editar: Me acabo de dar count de que antes de los posts sobre el GART recibo este post:

 Apr 02 11:13:12 joey-arch-pc kernel: radeon 0000:01:00.0: Userspace still has active objects ! 

Además, una actualización: planeo probar el kernel más reciente así como los controlleres AMDGPU (para CI, de manera experimental) y ver cómo funciona eso. Aparte de eso, no se ha progresado.