diff mbox

[01/11] Do not cause spice-server to clean our objects

Message ID 1432721046-4418-2-git-send-email-fziglio@redhat.com (mailing list archive)
State New, archived
Headers show

Commit Message

Frediano Ziglio May 27, 2015, 10:03 a.m. UTC
If objects are moved back from system memory to VRAM (and spice id
created again) memory is already initialized so we need to set flag
to not clear memory.
If you don't do it after a while using desktop many images turns to
black or transparents.

Signed-off-by: Frediano Ziglio <fziglio@redhat.com>
---
 qxl/qxl_cmd.c | 1 +
 1 file changed, 1 insertion(+)

Comments

Dave Airlie May 28, 2015, 3:08 a.m. UTC | #1
On 27 May 2015 at 20:03, Frediano Ziglio <fziglio@redhat.com> wrote:
> If objects are moved back from system memory to VRAM (and spice id
> created again) memory is already initialized so we need to set flag
> to not clear memory.
> If you don't do it after a while using desktop many images turns to
> black or transparents.

Good point,

Reviewed-by: Dave Airlie <airlied@redhat.com>
>
> Signed-off-by: Frediano Ziglio <fziglio@redhat.com>
> ---
>  qxl/qxl_cmd.c | 1 +
>  1 file changed, 1 insertion(+)
>
> diff --git a/qxl/qxl_cmd.c b/qxl/qxl_cmd.c
> index bd5404e..85ed5dc 100644
> --- a/qxl/qxl_cmd.c
> +++ b/qxl/qxl_cmd.c
> @@ -502,6 +502,7 @@ int qxl_hw_surface_alloc(struct qxl_device *qdev,
>
>         cmd = (struct qxl_surface_cmd *)qxl_release_map(qdev, release);
>         cmd->type = QXL_SURFACE_CMD_CREATE;
> +       cmd->flags = QXL_SURF_FLAG_KEEP_DATA;
>         cmd->u.surface_create.format = surf->surf.format;
>         cmd->u.surface_create.width = surf->surf.width;
>         cmd->u.surface_create.height = surf->surf.height;
> --
> 2.1.0
>
> _______________________________________________
> Spice-devel mailing list
> Spice-devel@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/spice-devel
diff mbox

Patch

diff --git a/qxl/qxl_cmd.c b/qxl/qxl_cmd.c
index bd5404e..85ed5dc 100644
--- a/qxl/qxl_cmd.c
+++ b/qxl/qxl_cmd.c
@@ -502,6 +502,7 @@  int qxl_hw_surface_alloc(struct qxl_device *qdev,
 
 	cmd = (struct qxl_surface_cmd *)qxl_release_map(qdev, release);
 	cmd->type = QXL_SURFACE_CMD_CREATE;
+	cmd->flags = QXL_SURF_FLAG_KEEP_DATA;
 	cmd->u.surface_create.format = surf->surf.format;
 	cmd->u.surface_create.width = surf->surf.width;
 	cmd->u.surface_create.height = surf->surf.height;