mirror of
https://github.com/xemu-project/xemu.git
synced 2024-11-23 19:49:43 +00:00
virtio-gpu: move fields to struct VirtIOGPUGL
Move two virglrenderer state variables to struct VirtIOGPUGL. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Message-id: 20210430113547.1816178-1-kraxel@redhat.com Message-Id: <20210430113547.1816178-14-kraxel@redhat.com>
This commit is contained in:
parent
49afbca3b0
commit
eff6fa1735
@ -51,9 +51,10 @@ static void virtio_gpu_gl_update_cursor_data(VirtIOGPU *g,
|
|||||||
static void virtio_gpu_gl_flushed(VirtIOGPUBase *b)
|
static void virtio_gpu_gl_flushed(VirtIOGPUBase *b)
|
||||||
{
|
{
|
||||||
VirtIOGPU *g = VIRTIO_GPU(b);
|
VirtIOGPU *g = VIRTIO_GPU(b);
|
||||||
|
VirtIOGPUGL *gl = VIRTIO_GPU_GL(b);
|
||||||
|
|
||||||
if (g->renderer_reset) {
|
if (gl->renderer_reset) {
|
||||||
g->renderer_reset = false;
|
gl->renderer_reset = false;
|
||||||
virtio_gpu_virgl_reset(g);
|
virtio_gpu_virgl_reset(g);
|
||||||
}
|
}
|
||||||
virtio_gpu_process_cmdq(g);
|
virtio_gpu_process_cmdq(g);
|
||||||
@ -62,15 +63,16 @@ static void virtio_gpu_gl_flushed(VirtIOGPUBase *b)
|
|||||||
static void virtio_gpu_gl_handle_ctrl(VirtIODevice *vdev, VirtQueue *vq)
|
static void virtio_gpu_gl_handle_ctrl(VirtIODevice *vdev, VirtQueue *vq)
|
||||||
{
|
{
|
||||||
VirtIOGPU *g = VIRTIO_GPU(vdev);
|
VirtIOGPU *g = VIRTIO_GPU(vdev);
|
||||||
|
VirtIOGPUGL *gl = VIRTIO_GPU_GL(vdev);
|
||||||
struct virtio_gpu_ctrl_command *cmd;
|
struct virtio_gpu_ctrl_command *cmd;
|
||||||
|
|
||||||
if (!virtio_queue_ready(vq)) {
|
if (!virtio_queue_ready(vq)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!g->renderer_inited) {
|
if (!gl->renderer_inited) {
|
||||||
virtio_gpu_virgl_init(g);
|
virtio_gpu_virgl_init(g);
|
||||||
g->renderer_inited = true;
|
gl->renderer_inited = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
cmd = virtqueue_pop(vq, sizeof(struct virtio_gpu_ctrl_command));
|
cmd = virtqueue_pop(vq, sizeof(struct virtio_gpu_ctrl_command));
|
||||||
@ -89,12 +91,13 @@ static void virtio_gpu_gl_handle_ctrl(VirtIODevice *vdev, VirtQueue *vq)
|
|||||||
static void virtio_gpu_gl_reset(VirtIODevice *vdev)
|
static void virtio_gpu_gl_reset(VirtIODevice *vdev)
|
||||||
{
|
{
|
||||||
VirtIOGPU *g = VIRTIO_GPU(vdev);
|
VirtIOGPU *g = VIRTIO_GPU(vdev);
|
||||||
|
VirtIOGPUGL *gl = VIRTIO_GPU_GL(vdev);
|
||||||
|
|
||||||
virtio_gpu_reset(vdev);
|
virtio_gpu_reset(vdev);
|
||||||
|
|
||||||
if (g->renderer_inited) {
|
if (gl->renderer_inited) {
|
||||||
if (g->parent_obj.renderer_blocked) {
|
if (g->parent_obj.renderer_blocked) {
|
||||||
g->renderer_reset = true;
|
gl->renderer_reset = true;
|
||||||
} else {
|
} else {
|
||||||
virtio_gpu_virgl_reset(g);
|
virtio_gpu_virgl_reset(g);
|
||||||
}
|
}
|
||||||
|
@ -151,8 +151,6 @@ struct VirtIOGPU {
|
|||||||
uint64_t hostmem;
|
uint64_t hostmem;
|
||||||
|
|
||||||
bool processing_cmdq;
|
bool processing_cmdq;
|
||||||
bool renderer_inited;
|
|
||||||
bool renderer_reset;
|
|
||||||
QEMUTimer *fence_poll;
|
QEMUTimer *fence_poll;
|
||||||
QEMUTimer *print_stats;
|
QEMUTimer *print_stats;
|
||||||
|
|
||||||
@ -177,6 +175,9 @@ struct VirtIOGPUClass {
|
|||||||
|
|
||||||
struct VirtIOGPUGL {
|
struct VirtIOGPUGL {
|
||||||
struct VirtIOGPU parent_obj;
|
struct VirtIOGPU parent_obj;
|
||||||
|
|
||||||
|
bool renderer_inited;
|
||||||
|
bool renderer_reset;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct VhostUserGPU {
|
struct VhostUserGPU {
|
||||||
|
Loading…
Reference in New Issue
Block a user