ui/console: new dmabuf.h and dmabuf.c for QemuDmaBuf struct and helpers
authorDongwon Kim <dongwon.kim@intel.com>
Wed, 8 May 2024 17:53:59 +0000 (10:53 -0700)
committerMarc-André Lureau <marcandre.lureau@redhat.com>
Tue, 14 May 2024 13:14:12 +0000 (17:14 +0400)
commit6e6ae491dad9a7ba813c7f1e70ce972c35c2d4ab
tree5bb2bb1729ce040f07eefc20f926f3c0b7b017e8
parente4e62514e3cc2fc9dbae44af8b80f61c730beab4
ui/console: new dmabuf.h and dmabuf.c for QemuDmaBuf struct and helpers

New header and source files are added for containing QemuDmaBuf struct
definition and newly introduced helpers for creating/freeing the struct
and accessing its data.

v10: Change the license type for both dmabuf.h and dmabuf.c from MIT to
     GPL to be in line with QEMU's default license

v11: -- Added new helpers, qemu_dmabuf_close for closing dmabuf->fd,
        qemu_dmabuf_dup_fd for duplicating dmabuf->fd
        (Daniel P. Berrangé <berrange@redhat.com>)

     -- Let qemu_dmabuf_fee to call qemu_dmabuf_close before freeing
        the struct to make sure fd is closed.
        (Daniel P. Berrangé <berrange@redhat.com>)

v12: Not closing fd in qemu_dmabuf_free because there are cases fd
     should still be available even after the struct is destroyed
     (e.g. virtio-gpu: res->dmabuf_fd).

Suggested-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Cc: Philippe Mathieu-Daudé <philmd@linaro.org>
Cc: Daniel P. Berrangé <berrange@redhat.com>
Cc: Vivek Kasireddy <vivek.kasireddy@intel.com>
Signed-off-by: Dongwon Kim <dongwon.kim@intel.com>
Message-Id: <20240508175403.3399895-3-dongwon.kim@intel.com>
include/ui/console.h
include/ui/dmabuf.h [new file with mode: 0644]
ui/dmabuf.c [new file with mode: 0644]
ui/meson.build