qemu-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-commits] [qemu/qemu] abd7f0: display: virtio-gpu-3d: check virgl c


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] abd7f0: display: virtio-gpu-3d: check virgl capabilities m...
Date: Thu, 05 Jan 2017 03:00:05 -0800

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: abd7f08b2353f43274b785db8c7224f082ef4d31
      
https://github.com/qemu/qemu/commit/abd7f08b2353f43274b785db8c7224f082ef4d31
  Author: Prasad J Pandit <address@hidden>
  Date:   2016-12-20 (Tue, 20 Dec 2016)

  Changed paths:
    M hw/display/virtio-gpu-3d.c

  Log Message:
  -----------
  display: virtio-gpu-3d: check virgl capabilities max_size

Virtio GPU device while processing 'VIRTIO_GPU_CMD_GET_CAPSET'
command, retrieves the maximum capabilities size to fill in the
response object. It continues to fill in capabilities even if
retrieved 'max_size' is zero(0), thus resulting in OOB access.
Add check to avoid it.

Reported-by: Zhenhao Hong <address@hidden>
Signed-off-by: Prasad J Pandit <address@hidden>
Message-id: address@hidden
Signed-off-by: Gerd Hoffmann <address@hidden>


  Commit: 9b7621bca2f70dc1a9815d50f05261296a8ae932
      
https://github.com/qemu/qemu/commit/9b7621bca2f70dc1a9815d50f05261296a8ae932
  Author: Gerd Hoffmann <address@hidden>
  Date:   2016-12-20 (Tue, 20 Dec 2016)

  Changed paths:
    M hw/display/virtio-gpu.c
    M include/hw/virtio/virtio-gpu.h

  Log Message:
  -----------
  virtio-gpu: track and limit host memory allocations

This patch makes virtio-gpu track host memory allocations for ressources
and applies a limit (configurable 256M by default).  When exceeding the
limit virtio-gpu throws VIRTIO_GPU_RESP_ERR_OUT_OF_MEMORY errors (like
it already does today when pixman image allocations fail).

This patch covers 2d mode only.  For 3d mode we have to figure how we
are going to handle this best.  qemu doesn't track resources in case
virglrenderer is used, so I guess we should extend virglrenderer to
allow setting a limit, then let qemu set the limit and catch
virgl_renderer_resource_create failures.

Cc: Marc-André Lureau <address@hidden>
Cc: Dave Airlie <address@hidden>
Cc: 李强 <address@hidden>
Signed-off-by: Gerd Hoffmann <address@hidden>
Message-id: address@hidden


  Commit: b8e23926c568f2e963af39028b71c472e3023793
      
https://github.com/qemu/qemu/commit/b8e23926c568f2e963af39028b71c472e3023793
  Author: Li Qiang <address@hidden>
  Date:   2017-01-03 (Tue, 03 Jan 2017)

  Changed paths:
    M hw/display/virtio-gpu.c

  Log Message:
  -----------
  virtio-gpu: call cleanup mapping function in resource destroy

If the guest destroy the resource before detach banking, the 'iov'
and 'addrs' field in resource is not freed thus leading memory
leak issue. This patch avoid this.

Signed-off-by: Li Qiang <address@hidden>
Reviewed-by: Marc-André Lureau <address@hidden>
Message-id: address@hidden
Signed-off-by: Gerd Hoffmann <address@hidden>


  Commit: 33243031dad02d161225ba99d782616da133f689
      
https://github.com/qemu/qemu/commit/33243031dad02d161225ba99d782616da133f689
  Author: Li Qiang <address@hidden>
  Date:   2017-01-03 (Tue, 03 Jan 2017)

  Changed paths:
    M hw/display/virtio-gpu-3d.c

  Log Message:
  -----------
  virtio-gpu-3d: fix memory leak in resource attach backing

If the virgl_renderer_resource_attach_iov function fails the
'res_iovs' will be leaked. Add check of the return value to
free the 'res_iovs' when failing.

Signed-off-by: Li Qiang <address@hidden>
Reviewed-by: Marc-André Lureau <address@hidden>
Message-id: address@hidden
Signed-off-by: Gerd Hoffmann <address@hidden>


  Commit: 204f01b30975923c64006f8067f0937b91eea68b
      
https://github.com/qemu/qemu/commit/204f01b30975923c64006f8067f0937b91eea68b
  Author: Li Qiang <address@hidden>
  Date:   2017-01-03 (Tue, 03 Jan 2017)

  Changed paths:
    M hw/display/virtio-gpu.c

  Log Message:
  -----------
  virtio-gpu: fix memory leak in resource attach backing

In the resource attach backing function, everytime it will
allocate 'res->iov' thus can leading a memory leak. This
patch avoid this.

Signed-off-by: Li Qiang <address@hidden>
Message-id: address@hidden
Signed-off-by: Gerd Hoffmann <address@hidden>


  Commit: 12597061b3fd71f8f97c18acf508241f290d55d5
      
https://github.com/qemu/qemu/commit/12597061b3fd71f8f97c18acf508241f290d55d5
  Author: Peter Maydell <address@hidden>
  Date:   2017-01-05 (Thu, 05 Jan 2017)

  Changed paths:
    M hw/display/virtio-gpu-3d.c
    M hw/display/virtio-gpu.c
    M include/hw/virtio/virtio-gpu.h

  Log Message:
  -----------
  Merge remote-tracking branch 'remotes/kraxel/tags/pull-vga-20170103-1' into 
staging

virtio-gpu: misc bugfixes.

# gpg: Signature made Tue 03 Jan 2017 14:48:04 GMT
# gpg:                using RSA key 0x4CB6D8EED3E87138
# gpg: Good signature from "Gerd Hoffmann (work) <address@hidden>"
# gpg:                 aka "Gerd Hoffmann <address@hidden>"
# gpg:                 aka "Gerd Hoffmann (private) <address@hidden>"
# Primary key fingerprint: A032 8CFF B93A 17A7 9901  FE7D 4CB6 D8EE D3E8 7138

* remotes/kraxel/tags/pull-vga-20170103-1:
  virtio-gpu: fix memory leak in resource attach backing
  virtio-gpu-3d: fix memory leak in resource attach backing
  virtio-gpu: call cleanup mapping function in resource destroy
  virtio-gpu: track and limit host memory allocations
  display: virtio-gpu-3d: check virgl capabilities max_size

Signed-off-by: Peter Maydell <address@hidden>


Compare: https://github.com/qemu/qemu/compare/dbe2b65566e7...12597061b3fd

reply via email to

[Prev in Thread] Current Thread [Next in Thread]