Skip to content
This repository was archived by the owner on Oct 3, 2024. It is now read-only.
This repository was archived by the owner on Oct 3, 2024. It is now read-only.

Intel gvt-g with nvidia prime render offload causes several issues #162

@grazzolini

Description

@grazzolini

This comment was edited

I have started using intel gvt-g a few months ago and, at the time, I was also using nvidia prime render offload method for offloading to the nvidia card. I had issues getting gvt-g to work on any recent kernel (> 5.5), but I had success using the 5.4 lts branch on Arch Linux.

Very recently, however, with the advent of the version 5.4.51 of the lts kernel, as well the mesa 20.1.3 update, my vm with gvt-g would load normally and when X would get started, it would hang, causing 100% cpu usage on one of the hosts CPU's with a blank screen.

Reverting things to kernel 5.4.50 and previous mesa, didn't seem to work. This is where a recent nvidia update, 450.57 comes in. It was the responsible for this new behavior of making my VM to hang.

During my investigations, I've found out that, if using nvidia prime render offload, the VM using the virtualized intel card would work, up until the previously mentioned versions of the software, but, it would not display the mouse pointer properly and also, I would only be able to see the boot from early userspace onward, no POST, no bootloader, nothing.

So, I've done a few experiments with using bbswitch to keep the nvidia card not only powered off, but also to prevent nvidia modules to be loaded, making sure prime render offload is not used. That gave me garbled graphics as in #152. So, I have added the <qemu:env name="MESA_LOADER_DRIVER_OVERRIDE" value="i965"/> workaround. Not only the screen is not garbled anymore, but I can also see the POST messages.

Also, I'm able to run with gvt-g on the latest mainline kernel, 5.7.8, without any issues. As long as I'm not using the prime render offload method, everything works. I have no idea why this interferes with the virtualized card, but my bet is on some weird mesa/xorg issue.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions