> From: virtio-dev@lists.oasis-open.org <virtio-dev@lists.oasis-open.org> On > Behalf Of Chen, Jiqian > Sent: Wednesday, August 2, 2023 8:51 AM > Hi all, > > Do you have any other comments on the modification of virtio-gpu S3? > Looking forward to your reply and comments. > I am not familiar with the GPU, so a dumb question is, why the S3 state is gpu specific? Can a transport specific suspend state be used and apply to all virtio devices? And can you please add both the rationale to the commit message?
> On 2023/7/20 20:18, Jiqian Chen wrote: > > v3: > > > > Hi all, > > Thanks for Gerd Hoffmann's advice. V3 makes below changes: > > * Use enum for freeze mode, so this can be extended with more > > modes in the future. > > * Rename functions and paratemers with "_S3" postfix. > > * Explain in more detail > > > > And latest version on QEMU and Linux kernel side: > > QEMU: https://lore.kernel.org/qemu-devel/20230720120816.8751-1- > jiqian.c...@amd.com > > Kernel: > > https://lore.kernel.org/lkml/20230720115805.8206-1-jiqian.c...@amd.com > > /T/#t > > > > Best regards, > > Jiqian Chen. > > > > > > v2: > > link, > > https://lists.oasis-open.org/archives/virtio-comment/202307/msg00160.h > > tml > > > > Hi all, > > Thanks to Gerd Hoffmann for his suggestions. V2 makes below changes: > > * Elaborate on the types of resources. > > * Add some descriptions for S3 and S4. > > > > > > v1: > > link, > > https://lists.oasis-open.org/archives/virtio-comment/202306/msg00595.h > > tml > > > > Hi all, > > I am working to implement virtgpu S3 function on Xen. > > > > Currently on Xen, if we start a guest through Qemu with enabling > > virtgpu, and then suspend and s3resume guest. We can find that the > > guest kernel comes back, but the display doesn't. It just shown a black > > screen. > > > > That is because when guest was during suspending, it called into Qemu > > and Qemu destroyed all resources and reset renderer. This made the > > display gone after guest resumed. > > > > So, I add a mechanism that when guest is suspending, it will notify > > Qemu, and then Qemu will not destroy resources. That can help guest's > > display come back. > > > > As discussed and suggested by Robert Beckett and Gerd Hoffmann on v1 > > qemu's mailing list. Due to that mechanism needs cooperation between > > guest and host. What's more, as virtio drivers by design paravirt > > drivers, it is reasonable for guest to accept some cooperation with > > host to manage suspend/resume. So I request to add a new feature flag, > > so that guest and host can negotiate whenever freezing is supported or not. > > > > Jiqian Chen (1): > > virtio-gpu: Add new feature flag VIRTIO_GPU_F_FREEZE_S3 > > > > device-types/gpu/description.tex | 42 > > ++++++++++++++++++++++++++++++++ > > 1 file changed, 42 insertions(+) > > > > -- > Best regards, > Jiqian Chen.