intel / gvt-linux

Other
511 stars 95 forks source link

linux guest after host suspended to ram #140

Open civic9 opened 4 years ago

civic9 commented 4 years ago

I work on notebook with two gvt-g guests: Linux (Arch) and Windows 10. I use dmabuf output.

When the host resumes from suspend to ram Windows 10 is working fine. But on Linux guest looks like it is working for a second or two (at least I can see moving cursor, I am not sure about the rest) and then graphics output freezes. In the guest logs: kernel: Asynchronous wait on fence i915:kwin_x11[1840]:34fda timed out (hint:intel_atomic_commit_ready+0x0/0x50 [i915])

host: i7-8850H, kernel 5.4.7, qemu 4.2 guest: kernel 5.4.11

Is it known issue or is this something on my side? what should I check?

Is it possible to do something like vgpu reset on the guest side to restore graphics without restarting the guest?

hyuan3 commented 4 years ago

Host S3 support is not implemented yet in GVT. It needs GVT to save and restore GGTT entries and some registers. The patches will be submitted after full testing.

springl0aded commented 4 years ago

When the host resumes from suspend to ram Windows 10 is working fine.

Did you have to do anything special to Windows 10 to get this to work? Which version of 10 and which Intel driver? I wasn't able to get hibernate or suspend to ram to work in my case, it was always in a crash state when resuming. Thanks.

civic9 commented 4 years ago

@springl0aded Nothing special. Microsoft Windows [Version 10.0.18363.592]. Intel driver 26.20.100.7261. Resolution (3840x2070) set by CRU. I am not using it intensively - so I am not sure if it always work, just tried it a few times to compare with linux guest. Host kernel: 5.5.0-rc6-1-mainline (afair with 5.4.7 was fine too).

springl0aded commented 4 years ago

@civic9 Thanks. I'll have to look at this a bit closer. I haven't had much luck with Windows or linux. Curious what commands you use to hibernate and restore your VM, I'm starting to think that may be a piece of the puzzle I'm missing.