qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Nikola Pavlica <pavlica.nikola@gmail.com>
To: qemu-devel@nongnu.org, qemu-devel@nongnu.com
Cc: r_qemu@t-online.de, philmd@redhat.com, kraxel@redhat.com,
	Nikola Pavlica <pavlica.nikola@gmail.com>
Subject: [PATCH 0/2] ui/gtk: run gd_monitor_update_interval on EGL as well
Date: Thu, 14 Jan 2021 14:45:55 +0100	[thread overview]
Message-ID: <20210114134557.292337-1-pavlica.nikola@gmail.com> (raw)

These patches regard the use-case of GPU-passthrough on QEMU for
 accelerated graphics.

Usually when people use GPU-passthrough on QEMU, they opt to have a
 physical seperate graphics card that gets passed through to QEMU
 using something called "PCIe passthrough". Since the display output
 is invisible to QEMU, the people who run these kinds of setups tend
 to view the display outputs by physically connecting a monitor to
 the "PCIe passthrough-ed" GPU in question.

However, on the Intel side of GPUs, there exists a technology that
 allows a user to pass through a "virtual GPU" using something called
 GVT-g.

Since virtual GPUs have no outputs, they rely soely on software trickery
 to get the image displayed on the host machine. In case of GVT-g it is
 done by DMA-ing the framebuffer to the GTK UIs display.

However, when using GTK outputs, there was a problem which caused the
 image to be updated at only 33Hz (or FPS). These issues were first
 discussed back in December 2019:
 https://lists.nongnu.org/archive/html/qemu-devel/2019-12/msg05514.html

There were a few other issues along the way, but those were fixed as well.

The focus of these patches is that when using GVT-g on QEMU, it must
 launch the GTK UI in OpenGL/EGL mode. This causes the code responsible
 for updating the refresh rate to never get executed. Which is why I added
 it to gtk-egl.c, to make sure updating the refresh rate works on EGL GTK
 UIs as well.

These patches were made in response to Volkers patches which dealt with
 cleaning up my previous code:
 https://www.mail-archive.com/qemu-devel@nongnu.org/msg766686.html
 and thus are meant to be merged after Volker's patches.

Hopefully, this commit message isn't too daunting ;)



             reply	other threads:[~2021-01-14 13:56 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-01-14 13:45 Nikola Pavlica [this message]
2021-01-14 13:45 ` [PATCH 1/2] ui/gtk: expose gd_monitor_update_interval Nikola Pavlica
2021-01-14 13:45 ` [PATCH 2/2] ui/gtk: update monitor interval on egl displays Nikola Pavlica
  -- strict thread matches above, loose matches on Subject: below --
2021-01-14 13:48 [PATCH 0/2] ui/gtk: run gd_monitor_update_interval on EGL as well Nikola Pavlica

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210114134557.292337-1-pavlica.nikola@gmail.com \
    --to=pavlica.nikola@gmail.com \
    --cc=kraxel@redhat.com \
    --cc=philmd@redhat.com \
    --cc=qemu-devel@nongnu.com \
    --cc=qemu-devel@nongnu.org \
    --cc=r_qemu@t-online.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).