[PATCH] intel: update global_name before HASH_ADD

2017-01-15 Thread Dongwon Kim
bo->global_name should be updated first before a hash value for the entry is calculated with it by HASH_ADD macro. Signed-off-by: Dongwon Kim <dongwon@intel.com> --- intel/intel_bufmgr_gem.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/intel/intel_bufmg

[RFC PATCH 01/60] hyper_dmabuf: initial working version of hyper_dmabuf drv

2017-12-19 Thread Dongwon Kim
isting comm channels among VMs Signed-off-by: Dongwon Kim <dongwon@intel.com> Signed-off-by: Mateusz Polrola <mateuszx.potr...@intel.com> --- drivers/xen/Kconfig| 2 + drivers/xen/Makefile | 1 + drivers/xen/hy

[RFC PATCH 02/60] hyper_dmabuf: added a doc for hyper_dmabuf sharing

2017-12-19 Thread Dongwon Kim
High-level description of hyper_dmabuf driver has been added to "Documentation" directory. Signed-off-by: Dongwon Kim <dongwon@intel.com> --- Documentation/hyper-dmabuf-sharing.txt | 734 + 1 file changed, 734 insertions(+) create mode 1006

[RFC PATCH 04/60] hyper_dmabuf: new index, k for pointing a right n-th page

2017-12-19 Thread Dongwon Kim
Need a new index, k in hyper_dmabuf_extract_pgs function for picking up a correct n-th page in contigous memory space. Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/hyper_dmabuf_imp.c | 11 ++- 1 file changed, 6 insertions(+), 5 deletions(-) diff

[RFC PATCH 03/60] hyper_dmabuf: re-use dma_buf previously exported if exist

2017-12-19 Thread Dongwon Kim
n exported to the target domain. This patch also Includes changes in printk calles for debugging. Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/hyper_dmabuf_imp.c | 28 +-- drivers/xen/hyper_dmabuf/hyper_dmabuf_ioctl.c | 17 -

[RFC PATCH 07/60] hyper_dmabuf: message parsing done via workqueue

2017-12-19 Thread Dongwon Kim
Use workqueue mechanism to delay message parsing done after exiting from ISR to reduce ISR execution time. Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/hyper_dmabuf_drv.c| 13 ++ drivers/xen/hyper_dmabuf/hyper_dmabuf_drv.h| 5 + drive

[RFC PATCH 09/60] hyper_dmabuf: indirect DMA_BUF synchronization via shadowing

2017-12-19 Thread Dongwon Kim
of this is to get DMA_BUF synchronized eventually between the original creator of DMA_BUF and the end consumer of it running on the importer VM. Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/Makefile | 1 + drivers/xen/hyper_dmabuf/hyper_dmabuf

[RFC PATCH 05/60] hyper_dmabuf: skip creating a comm ch if exist for the VM

2017-12-19 Thread Dongwon Kim
hyper_dmabuf_importer_ring_setup creates new channel only if there is no existing downstream communication channel previously created for the exporter VM. Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/hyper_dmabuf_imp.c | 13 +++-- drive

Re: [RFC PATCH 01/60] hyper_dmabuf: initial working version of hyper_dmabuf drv

2017-12-19 Thread Dongwon Kim
I forgot to include this brief information about this patch series. This patch series contains the implementation of a new device driver, hyper_dmabuf, which provides a method for DMA-BUF sharing across different OSes running on the same virtual OS platform powered by a hypervisor. Detailed

[RFC PATCH 38/60] hyper_dmabuf: preventing self exporting of dma_buf

2017-12-19 Thread Dongwon Kim
Adding ID check to make sure a dma-buf is exported externally since hyper_dmabuf only allows to export a dmabuf to a different VM. Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/hyper_dmabuf_ioctl.c | 6 ++ 1 file changed, 6 insertions(+) diff

[RFC PATCH 44/60] hyper_dmabuf: proper handling of sgt_info->priv

2017-12-19 Thread Dongwon Kim
s some of export_remote_ioctl to make it more readable and compact. Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/hyper_dmabuf_ioctl.c | 110 ++--- drivers/xen/hyper_dmabuf/hyper_dmabuf_struct.h | 6 +- 2 files changed, 65 insertions(+),

[RFC PATCH 52/60] hyper_dmabuf: remove prefix 'hyper_dmabuf' from static func and backend APIs

2017-12-19 Thread Dongwon Kim
d warnings in hyper_dmabuf_list.c and hyper_dmabuf_list.h. Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/hyper_dmabuf_drv.c| 9 +- drivers/xen/hyper_dmabuf/hyper_dmabuf_event.c | 6 +- drivers/xen/hyper_dmabuf/hyper_dmabuf_id.c | 9 +- drivers/

[RFC PATCH 41/60] hyper_dmabuf: re-organize driver source

2017-12-19 Thread Dongwon Kim
) is also put in the a new file, 'hyper_dmabuf_sgt_proc.c'. hyper_dmabuf_imp.c and hyper_dmabuf_imp.h are removed as a result. 3. Header files and Makefile are also updated accordingly. Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/Makefile

[RFC PATCH 43/60] hyper_dmabuf: fixes on memory leaks in various places

2017-12-19 Thread Dongwon Kim
Make sure to free buffers before returning to prevent memory leaks Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/hyper_dmabuf_ioctl.c | 19 +++- drivers/xen/hyper_dmabuf/hyper_dmabuf_msg.c| 9 +++- drivers/xen/hyper_dmabuf/hyper_dmabuf

[RFC PATCH 34/60] hyper_dmabuf: extend DMA bitmask to 64-bits.

2017-12-19 Thread Dongwon Kim
From: Mateusz Polrola <mateuszx.potr...@intel.com> Extending DMA bitmask of hyper_dmabuf device to cover whole address space driver may access. Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/hyper_dmabuf_ioctl.c | 2 +- 1 file changed, 1 insertion(+)

[RFC PATCH 30/60] hyper_dmabuf: free already mapped pages when error happens

2017-12-19 Thread Dongwon Kim
From: Mateusz Polrola <mateuszx.potr...@intel.com> It is needed to freeing already-mapped pages if it gets error before finishing mapping all pages. Signed-off-by: Dongwon Kim <dongwon@intel.com> --- .../xen/hyper_dmabuf/xen/hyper_dmabuf_xen_shm.c| 43 ++

[RFC PATCH 56/60] hyper_dmabuf: add initialization and cleanup to bknd_ops

2017-12-19 Thread Dongwon Kim
From: Mateusz Polrola <mateuszx.potr...@intel.com> Introduced additional init and cleanup routines in the backend API structure that might be useful for hypervisors other than Xen. Signed-off-by: Mateusz Polrola <mateuszx.potr...@intel.com> Signed-off-by: Dongwon Kim <dongwo

[RFC PATCH 48/60] hyper_dmabuf: add query items for buffer private info.

2017-12-19 Thread Dongwon Kim
,where private data will be copied in case query item is 'HYPER_DMABUF_QUERY_PRIV_INFO'. Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/hyper_dmabuf_drv.c | 7 +- drivers/xen/hyper_dmabuf/hyper_dmabuf_event.c | 6 ++ drivers/xen/hyper_dmabuf/hyper_dmabuf_

[RFC PATCH 16/60] hyper_dmabuf: define hypervisor specific backend API

2017-12-19 Thread Dongwon Kim
a new hypervisor. Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/Makefile | 11 +- drivers/xen/hyper_dmabuf/hyper_dmabuf_conf.h | 1 - drivers/xen/hyper_dmabuf/hyper_dmabuf_drv.c| 33 +- drivers/xen/hyper_dmabuf/hyper_dmabuf_dr

[RFC PATCH 06/60] hyper_dmabuf: map shared pages only once when importing.

2017-12-19 Thread Dongwon Kim
From: Mateusz Polrola <mateuszx.potr...@intel.com> If shared pages of buffer were already mapped on importer side, do not map them again on next request to export fd. Signed-off-by: Mateusz Polrola <mateuszx.potr...@intel.com> Signed-off-by: Dongwon Kim <dongwon@intel.com>

[RFC PATCH 10/60] hyper_dmabuf: make sure to free memory to prevent leak

2017-12-19 Thread Dongwon Kim
an entry. Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/hyper_dmabuf_ioctl.c | 1 + drivers/xen/hyper_dmabuf/hyper_dmabuf_list.c | 2 ++ drivers/xen/hyper_dmabuf/xen/hyper_dmabuf_xen_comm.c | 2 ++ drivers/xen/h

[RFC PATCH 13/60] hyper_dmabuf: postponing cleanup of hyper_DMABUF

2017-12-19 Thread Dongwon Kim
added for tracking usage by importers. Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/hyper_dmabuf_imp.c| 37 ++-- drivers/xen/hyper_dmabuf/hyper_dmabuf_ioctl.c | 34 +++ drivers/xen/hyper_dmabuf/hyper_dmabuf_msg.c

[RFC PATCH 15/60] hyper_dmabuf: reusing previously released hyper_dmabuf_id

2017-12-19 Thread Dongwon Kim
Now, released hyper_dmabuf_ids are stored in a stack - (hyper_dmabuf_private.id_queue) for reuse. This is to prevent overflow of ids for buffers. We also limit maximum number for the id to 1000 for the stability and optimal performance. Signed-off-by: Dongwon Kim <dongwon@intel.

[RFC PATCH 21/60] hyper_dmabuf: exposing drv information using sysfs

2017-12-19 Thread Dongwon Kim
uf can be enabled by setting a new config option, "CONFIG_HYPER_DMABUF_SYSFS" to 'yes'. Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/Kconfig | 7 +++ drivers/xen/hyper_dmabuf/hyper_dmabuf_drv.c | 12 - drivers/xen/hyper_dmabuf/hy

[RFC PATCH 14/60] hyper_dmabuf: clean-up process based on file->f_count

2017-12-19 Thread Dongwon Kim
n sgt_info as an indicator for usage of buffer on the importer. 3. num of pages is added (nents) to hyper_dmabuf_sgt_info to keep the size info in EXPORT list. 3. more minor changes and clean-ups. Signed-off-by: Dongwon Kim <dongwon@intel.com> Signed-off-by: Mateusz Polrola <mateusz

[RFC PATCH 12/60] hyper_dmabuf: two different unexporting mechanisms

2017-12-19 Thread Dongwon Kim
ned by how "FORCED_UNEXPORING" is defined. Also, the word "destroy" in IOCTL commands and several functions have been modified to "unexport", which sounds more reasonable. Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/hyper_dma

[RFC PATCH 08/60] hyper_dmabuf: automatic comm channel initialization using xenstore

2017-12-19 Thread Dongwon Kim
le between two VMs. When upstream channel is removed (e.g. unloading driver), VM on the other side is notified and "xenstore watch" callback is invoked. Via this callback, VM can remove corresponding downstream channel. Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hy

[RFC PATCH 17/60] hyper_dmabuf: use dynamic debug macros for logging

2017-12-19 Thread Dongwon Kim
From: Mateusz Polrola <mateuszx.potr...@intel.com> Replaces printk to debug macros Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/hyper_dmabuf_drv.c| 4 +- drivers/xen/hyper_dmabuf/hyper_dmabuf_drv.h| 4 ++ drivers/xen/

[RFC PATCH 45/60] hyper_dmabuf: adding poll/read for event generation

2017-12-19 Thread Dongwon Kim
hyper_dmabuf driver on importing domain now generates event every time new hyper_dmabuf is available (visible) to the importer. Each event comes with 128 byte private data, which can contain any meta data or user data specific to the originator of DMA BUF. Signed-off-by: Dongwon Kim <dong

[RFC PATCH 51/60] hyper_dmabuf: missing mutex_unlock and move spinlock

2017-12-19 Thread Dongwon Kim
modifications, changing type of function calls to static and correcting some of error code. Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/hyper_dmabuf_drv.c | 38 +-- drivers/xen/hyper_dmabuf/hyper_dmabuf_event.c | 15 +-- d

[RFC PATCH 58/60] hyper_dmabuf: move device node out of /dev/xen/

2017-12-19 Thread Dongwon Kim
; Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/hyper_dmabuf_drv.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/xen/hyper_dmabuf/hyper_dmabuf_drv.c b/drivers/xen/hyper_dmabuf/hyper_dmabuf_drv.c index f2731bf..bbb3414 100644

[RFC PATCH 53/60] hyper_dmabuf: define fastpath_export for exporting existing buffer

2017-12-19 Thread Dongwon Kim
To make hyper_dmabuf_export_remote_ioctl more compact and readable, a new function call, 'fastpath_export' is created to replace a routine in hyper_dmabuf_export_remote_ioctl for the case requested buffer for exporting is already in the LIST (exported previously). Signed-off-by: Dongwon Kim

[RFC PATCH 47/60] hyper_dmabuf: fix issues with event-polling

2017-12-19 Thread Dongwon Kim
-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/hyper_dmabuf_drv.c | 23 ++--- drivers/xen/hyper_dmabuf/hyper_dmabuf_event.c| 8 +-- drivers/xen/hyper_dmabuf/hyper_dmabuf_event.h| 2 +- drivers/xen/hyper_dmabuf/hyper_dmabuf_ioctl.c

[RFC PATCH 54/60] hyper_dmabuf: 'backend_ops' reduced to 'bknd_ops' and 'ops' to 'bknd_ops'

2017-12-19 Thread Dongwon Kim
To make type's name compact, *_backend_ops is changed to '*_bknd_ops'. Also 'ops' is now changed to 'bknd_ops' to clarify it is a data structure with entry points of 'backend' operations. Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/hyper_dmabuf

[RFC PATCH 55/60] hyper_dmabuf: fixed wrong send_req call

2017-12-19 Thread Dongwon Kim
From: Mateusz Polrola <mateuszx.potr...@intel.com> Wrong vmid is used in case of sending HYPER_DMABUF_EXPORT_FD_FAILED message. Instead of vmid, hypder dmabuf id is being used. Signed-off-by: Mateusz Polrola <mateuszx.potr...@intel.com> Signed-off-by: Dongwon Kim <dongwo

[RFC PATCH 27/60] hyper_dmabuf: use proper error codes

2017-12-19 Thread Dongwon Kim
Cleaned up and corrected error codes and condition in various error check routines. Also added proper err messages when func returns error. Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/hyper_dmabuf_drv.c| 14 +++-- drivers/xen/hyper_

[RFC PATCH 19/60] hyper_dmabuf: fix the case with sharing a buffer with 2 pages

2017-12-19 Thread Dongwon Kim
From: Mateusz Polrola <mateuszx.potr...@intel.com> Checking whether buffer has more than two pages should be done by evaluating nents > 1 instead of i > 1 to properly cover the case when nents == 2. Signed-off-by: Dongwon Kim <dongwon@intel.com> --- driver

[RFC PATCH 26/60] hyper_dmabuf: add mutexes to prevent several race conditions

2017-12-19 Thread Dongwon Kim
cation channel to prevent req_pending override by another caller. Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/hyper_dmabuf_drv.c | 2 ++ drivers/xen/hyper_dmabuf/hyper_dmabuf_drv.h | 1 + drivers/xen/hyper_dmabuf/hyper_dmabuf_ioctl.c

[RFC PATCH 22/60] hyper_dmabuf: configure license

2017-12-19 Thread Dongwon Kim
Set the license of the driver to "GPL and MIT-X dual" and owner to "Intel". Also attached license term to all source and header files Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/hyper_dmabuf_conf.h | 26 ++

[RFC PATCH 20/60] hyper_dmabuf: optimized loop with less condition check

2017-12-19 Thread Dongwon Kim
Redefined nents_last, which means # of gref in the last page of lvl2 table in any situation even if it is same as REFS_PER_PAGE. With this, loop can be simplified with less condition check. Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/xen/hyper_dmabuf_xen

[RFC PATCH 59/60] hyper_dmabuf: freeing hy_drv_priv when drv init fails (v2)

2017-12-19 Thread Dongwon Kim
From: Kai Chen <kai.c...@intel.com> Make sure hy_drv_priv is freed before exiting in several places in hyper_dmabuf_drv_init. v2: unlocking mutex before freeing hy_drv_priv when bknd_ops->init fails Signed-off-by: Kai Chen <kai.c...@intel.com> Signed-off-by: Dongwon Kim <don

[RFC PATCH 46/60] hyper_dmabuf: delay auto initialization of comm_env

2017-12-19 Thread Dongwon Kim
). Only limitation is it currently checks domain ID 0 to 10. We could increase this range if needed. With this patch, we don't have to call comm channel setup IOCTL on importer side anymore. For example, we can remove ioctl call in init_hyper_dmabuf from vmdisplay. Signed-off-by: Dongwon Kim <dong

[RFC PATCH 37/60] hyper_dmabuf: implementation of query ioctl

2017-12-19 Thread Dongwon Kim
, DMABUF_QUERY_UNEXPORTED, DMABUF_QUERY_DELAYED_UNEXPORTED, }; Also, actual querying part of the function is moved to hyper_dmabuf_query.c Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/Makefile | 1 + drive

[RFC PATCH 36/60] hyper_dmabuf: error handling when share_pages fails

2017-12-19 Thread Dongwon Kim
From: Mateusz Polrola <mateuszx.potr...@intel.com> When error occurs while sharing pages, all pages already shared needs to be un-shared and proper error code has to be returned. Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/hyper_dmabuf_ioctl

[RFC PATCH 23/60] hyper_dmabuf: use CONFIG_HYPER_DMABUF_XEN instead of CONFIG_XEN

2017-12-19 Thread Dongwon Kim
Now, use CONFIG_HYPER_DMABUF_XEN as a configuration option for building hyper_dmabuf for Xen hypervisor. Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/hyper_dmabuf_drv.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drive

[RFC PATCH 28/60] hyper_dmabuf: address several synchronization issues

2017-12-19 Thread Dongwon Kim
erface under include/uapi/xen/ Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/hyper_dmabuf_imp.c| 21 ++--- drivers/xen/hyper_dmabuf/hyper_dmabuf_ioctl.c | 17 +++- drivers/xen/hyper_dmabuf/hyper_dmabuf_ioctl.h | 74 +

[RFC PATCH 29/60] hyper_dmabuf: make sure to release allocated buffers when exiting

2017-12-19 Thread Dongwon Kim
rt" routine, that is executed automatically when all of file pointers opened for accessing hyper_dmabuf driver are closed. Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/hyper_dmabuf_drv.c| 6 ++- drivers/xen/hyper_dmabuf/hype

[RFC PATCH 35/60] hyper_dmabuf: 128bit hyper_dmabuf_id with random keys

2017-12-19 Thread Dongwon Kim
rng_key[3]; } hyper_dmabuf_id_t; Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/hyper_dmabuf_drv.c| 2 +- drivers/xen/hyper_dmabuf/hyper_dmabuf_drv.h| 3 +- drivers/xen/hyper_dmabuf/hyper_dmabuf_id.c | 57 -- drive

[RFC PATCH 24/60] hyper_dmabuf: waits for resp only if WAIT_AFTER_SYNC_REQ == 1

2017-12-19 Thread Dongwon Kim
in func names in the backend. 3. some minor clean-ups Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/hyper_dmabuf_conf.h | 2 - drivers/xen/hyper_dmabuf/hyper_dmabuf_imp.c| 91 +++--- drivers/xen/hyper_dmabuf/hyper_dmabuf

[RFC PATCH 25/60] hyper_dmabuf: introduced delayed unexport

2017-12-19 Thread Dongwon Kim
r is still valid (not unexported) on expoter VM's side before importer VM starts to use it. "delayed_ms" attribute is added to unexport ioctl, used for hardcoding delay from userspace. Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/hyper_dmabuf_imp.c|

[RFC PATCH 39/60] hyper_dmabuf: correcting DMA-BUF clean-up order

2017-12-19 Thread Dongwon Kim
Reordering clean-up procedure Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/hyper_dmabuf_ioctl.c | 37 +-- 1 file changed, 24 insertions(+), 13 deletions(-) diff --git a/drivers/xen/hyper_dmabuf/hyper_dmabuf_ioctl.c b/drive

[RFC PATCH 40/60] hyper_dmabuf: do not use 'private' as field name

2017-12-19 Thread Dongwon Kim
From: Mateusz Polrola <mateuszx.potr...@intel.com> Using a word, 'private' is not recommended because of conflict with language keyword when compiling with C++. So changing those to 'priv'. Signed-off-by: Dongwon Kim <dongwon@intel.com> --- drivers/xen/hyper_dmabuf/hyper_dmabuf

Re: [Xen-devel][RFC 3/3] xen/gntdev: Add support for Linux dma buffers

2018-05-21 Thread Dongwon Kim
Still need more time to review the whole code changes but I noticed one thing. We've been using the term "hyper_dmabuf" for hypervisor-agnostic linux dmabuf solution and we are planning to call any of our future solution for other hypervisors the same name. So having same name for this

Re: [PATCH 1/8] xen/grant-table: Make set/clear page private code shared

2018-05-30 Thread Dongwon Kim
On Fri, May 25, 2018 at 06:33:24PM +0300, Oleksandr Andrushchenko wrote: > From: Oleksandr Andrushchenko > > Make set/clear page private code shared and accessible to > other kernel modules which can re-use these instead of open-coding. > > Signed-off-by: Oleksandr Andrushchenko > --- >

Re: [PATCH 6/8] xen/gntdev: Implement dma-buf export functionality

2018-05-30 Thread Dongwon Kim
On Fri, May 25, 2018 at 06:33:29PM +0300, Oleksandr Andrushchenko wrote: > From: Oleksandr Andrushchenko > > 1. Create a dma-buf from grant references provided by the foreign >domain. By default dma-buf is backed by system memory pages, but >by providing GNTDEV_DMA_FLAG_XXX flags it can

Re: [Xen-devel] [PATCH v2 9/9] xen/gntdev: Expose gntdev's dma-buf API for in-kernel use

2018-06-06 Thread Dongwon Kim
On Wed, Jun 06, 2018 at 05:51:38PM -0400, Boris Ostrovsky wrote: > On 06/06/2018 08:46 AM, Oleksandr Andrushchenko wrote: > > On 06/05/2018 01:36 AM, Boris Ostrovsky wrote: > >> On 06/01/2018 07:41 AM, Oleksandr Andrushchenko wrote: > >>> From: Oleksandr Andrushchenko > >>> > >>> Allow creating

Re: [Xen-devel] [PATCH 0/1] drm/xen-zcopy: Add Xen zero-copy helper DRM driver

2018-04-30 Thread Dongwon Kim
On Wed, Apr 25, 2018 at 08:12:08AM +0200, Juergen Gross wrote: > On 24/04/18 22:35, Dongwon Kim wrote: > > Had a meeting with Daniel and talked about bringing out generic > > part of hyper-dmabuf to the userspace, which means we most likely > > reuse IOCTLs defined in xen-z

Re: [Xen-devel] [RFC PATCH 01/60] hyper_dmabuf: initial working version of hyper_dmabuf drv

2018-01-10 Thread Dongwon Kim
Yes, I will post a test application. Thanks On Wed, Dec 20, 2017 at 10:38:08AM +0200, Oleksandr Andrushchenko wrote: > > On 12/20/2017 01:27 AM, Dongwon Kim wrote: > >This patch series contains the implementation of a new device driver, > >hyper_dmabuf, which provides a

Re: [Xen-devel] [RFC PATCH 01/60] hyper_dmabuf: initial working version of hyper_dmabuf drv

2018-01-10 Thread Dongwon Kim
On Wed, Dec 20, 2017 at 09:17:07AM +0100, Juergen Gross wrote: > On 20/12/17 00:27, Dongwon Kim wrote: > > I forgot to include this brief information about this patch series. > > > > This patch series contains the implementation of a new device driver, > > hyper_dmab

Re: [RFC PATCH 01/60] hyper_dmabuf: initial working version of hyper_dmabuf drv

2018-01-10 Thread Dongwon Kim
On Wed, Dec 20, 2017 at 10:59:57AM +0100, Daniel Vetter wrote: > On Tue, Dec 19, 2017 at 03:27:31PM -0800, Dongwon Kim wrote: > > I forgot to include this brief information about this patch series. > > > > This patch series contains the implementation of a new device dri

[RFC PATCH v2 1/9] hyper_dmabuf: initial upload of hyper_dmabuf drv core framework

2018-02-13 Thread Dongwon Kim
r exporter hyper_DMABUF include/uapi/linux/hyper_dmabuf.h - Contains definition of data types and structures referenced by user application to interact with driver Signed-off-by: Dongwon Kim <dongwon@intel.com> Signed-off-by: Mateusz Polrola <mateuszx.potr...@intel.com> --- dr

[RFC PATCH v2 9/9] hyper_dmabuf: threaded interrupt in Xen-backend

2018-02-13 Thread Dongwon Kim
Use threaded interrupt intead of regular one because most part of ISR is time-critical and possibly sleeps Signed-off-by: Dongwon Kim <dongwon@intel.com> --- .../hyper_dmabuf/backends/xen/hyper_dmabuf_xen_comm.c | 19 +++ 1 file changed, 11 insertions(+), 8 deletions(-)

[RFC PATCH v2 4/9] hyper_dmabuf: user private data attached to hyper_DMABUF

2018-02-13 Thread Dongwon Kim
Define a private data (e.g. meta data for the buffer) attached to each hyper_DMABUF structure. This data is provided by userapace via export_remote IOCTL and its size can be up to 192 bytes. Signed-off-by: Dongwon Kim <dongwon@intel.com> Signed-off-by: Mateusz Polrola <mate

[RFC PATCH v2 6/9] hyper_dmabuf: hyper_DMABUF synchronization across VM

2018-02-13 Thread Dongwon Kim
and so on) will be mimicked on this shadowed DMA-BUF for tracking and synchronization purpose (e.g. +-reference count to check the status). Signed-off-by: Dongwon Kim <dongwon@intel.com> Signed-off-by: Mateusz Polrola <mateuszx.potr...@intel.com> --- drivers/dma-buf/hyper_dma

[RFC PATCH v2 0/9] hyper_dmabuf: Hyper_DMABUF driver

2018-02-13 Thread Dongwon Kim
15-rc2 https://github.com/downor/linux_hyper_dmabuf.git hyper_dmabuf_integration_v4 Dongwon Kim, Mateusz Polrola (9): hyper_dmabuf: initial upload of hyper_dmabuf drv core framework hyper_dmabuf: architecture specification and reference guide MAINTAINERS: adding Hyper_DMABUF dri

[RFC PATCH v2 3/9] MAINTAINERS: adding Hyper_DMABUF driver section in MAINTAINERS

2018-02-13 Thread Dongwon Kim
Hyper_DMABUF DRIVER M: Dongwon Kim <dongwon@intel.com> M: Mateusz Polrola <mateuszx.potr...@intel.com> L: linux-ker...@vger.kernel.org L: xen-de...@lists.xenproject.org S: Maintained F: drivers/dma-buf/hyper_dmabuf* F: include/uapi/linux/hype

[RFC PATCH v2 8/9] hyper_dmabuf: event-polling mechanism for detecting a new hyper_DMABUF

2018-02-13 Thread Dongwon Kim
N". Signed-off-by: Dongwon Kim <dongwon@intel.com> Signed-off-by: Mateusz Polrola <mateuszx.potr...@intel.com> --- drivers/dma-buf/hyper_dmabuf/Kconfig | 20 +++ drivers/dma-buf/hyper_dmabuf/Makefile | 1 + drivers/dma-buf/hyper_d

[RFC PATCH v2 5/9] hyper_dmabuf: default backend for XEN hypervisor

2018-02-13 Thread Dongwon Kim
_rbuf, .init_tx_ch = xen_be_init_tx_rbuf, .send_req = xen_be_send_req, }; A section for Hypervisor Backend has been added to "Documentation/hyper-dmabuf-sharing.txt" accordingly Signed-off-by: Dongwon Kim <dongwon@intel.com> Signed-off-by: Mateusz Polrola <mateuszx.potr...

[RFC PATCH v2 7/9] hyper_dmabuf: query ioctl for retreiving various hyper_DMABUF info

2018-02-13 Thread Dongwon Kim
till valid but will be unexported soon) HYPER_DMABUF_QUERY_PRIV_INFO_SIZE - size of private information (given by user application on exporter's side) attached to hyper_DMABUF HYPER_DMABUF_QUERY_PRIV_INFO - private information attached to hyper_DMABUF Signed-off-by: Dongwon Kim <dongwon@intel.co

[RFC PATCH v2 2/9] hyper_dmabuf: architecture specification and reference guide

2018-02-13 Thread Dongwon Kim
Reference document for hyper_DMABUF driver Documentation/hyper-dmabuf-sharing.txt Signed-off-by: Dongwon Kim <dongwon@intel.com> --- Documentation/hyper-dmabuf-sharing.txt | 734 + 1 file changed, 734 insertions(+) create mode 100644 Documentation

Re: [RFC PATCH 01/60] hyper_dmabuf: initial working version of hyper_dmabuf drv

2018-02-14 Thread Dongwon Kim
: comm ch management and ISRs for incoming messages. > > hyper_dmabuf/xen/hyper_dmabuf_xen_comm_list.c > : Database (linked-list) for keeping information about > existing comm channels among VMs > > Signed-off-by: Dongwon Kim <dongwon@intel.com> > Signed-off-by: Mat

Re: [Xen-devel] [RFC PATCH v2 2/9] hyper_dmabuf: architecture specification and reference guide

2018-02-23 Thread Dongwon Kim
Thanks for your comment, Roger I will try to polish this doc and resubmit. (I put some comments below as well.) On Fri, Feb 23, 2018 at 04:15:00PM +, Roger Pau Monné wrote: > On Tue, Feb 13, 2018 at 05:50:01PM -0800, Dongwon Kim wrote: > > Reference document for hyper_DMAB

Re: [RFC PATCH v2 0/9] hyper_dmabuf: Hyper_DMABUF driver

2018-02-21 Thread Dongwon Kim
On Mon, Feb 19, 2018 at 06:01:29PM +0100, Daniel Vetter wrote: > On Tue, Feb 13, 2018 at 05:49:59PM -0800, Dongwon Kim wrote: > > This patch series contains the implementation of a new device driver, > > hyper_DMABUF driver, which provides a way to expand the boundary of > >

Re: [RfC PATCH] Add udmabuf misc device

2018-04-06 Thread Dongwon Kim
On Fri, Apr 06, 2018 at 03:36:03PM +0300, Oleksandr Andrushchenko wrote: > On 04/06/2018 02:57 PM, Gerd Hoffmann wrote: > > Hi, > > > >>>I fail to see any common ground for xen-zcopy and udmabuf ... > >>Does the above mean you can assume that xen-zcopy and udmabuf > >>can co-exist as two

Re: [RfC PATCH] Add udmabuf misc device

2018-04-10 Thread Dongwon Kim
On Tue, Apr 10, 2018 at 09:37:53AM +0300, Oleksandr Andrushchenko wrote: > On 04/06/2018 09:57 PM, Dongwon Kim wrote: > >On Fri, Apr 06, 2018 at 03:36:03PM +0300, Oleksandr Andrushchenko wrote: > >>On 04/06/2018 02:57 PM, Gerd Hoffmann wrote: > >>> Hi, > &g

buffer sharing across VMs - xen-zcopy and hyper_dmabuf discussion

2018-04-12 Thread Dongwon Kim
(changed subject and decoupling from udmabuf thread) On Wed, Apr 11, 2018 at 08:59:32AM +0300, Oleksandr Andrushchenko wrote: > On 04/10/2018 08:26 PM, Dongwon Kim wrote: > >On Tue, Apr 10, 2018 at 09:37:53AM +0300, Oleksandr Andrushchenko wrote: > >>On 04/06/2018 09:57 PM,

Re: [Xen-devel] [PATCH 0/1] drm/xen-zcopy: Add Xen zero-copy helper DRM driver

2018-04-18 Thread Dongwon Kim
inal Message- > >>>>From: Xen-devel [mailto:xen-devel-boun...@lists.xenproject.org] On Behalf > >>>>Of Roger Pau Monné > >>>>Sent: 18 April 2018 11:11 > >>>>To: Oleksandr Andrushchenko <andr2...@gmail.com> > >>>>Cc: jg

Re: [PATCH 0/1] drm/xen-zcopy: Add Xen zero-copy helper DRM driver

2018-04-18 Thread Dongwon Kim
On Wed, Apr 18, 2018 at 09:38:39AM +0300, Oleksandr Andrushchenko wrote: > On 04/17/2018 11:57 PM, Dongwon Kim wrote: > >On Tue, Apr 17, 2018 at 09:59:28AM +0200, Daniel Vetter wrote: > >>On Mon, Apr 16, 2018 at 12:29:05PM -0700, Dongwon Kim wrote: > >>>Yeah,

Re: [PATCH 0/1] drm/xen-zcopy: Add Xen zero-copy helper DRM driver

2018-04-16 Thread Dongwon Kim
Yeah, I definitely agree on the idea of expanding the use case to the general domain where dmabuf sharing is used. However, what you are targetting with proposed changes is identical to the core design of hyper_dmabuf. On top of this basic functionalities, hyper_dmabuf has driver level

Re: [PATCH 0/1] drm/xen-zcopy: Add Xen zero-copy helper DRM driver

2018-04-19 Thread Dongwon Kim
On Thu, Apr 19, 2018 at 11:14:02AM +0300, Oleksandr Andrushchenko wrote: > On 04/18/2018 08:01 PM, Dongwon Kim wrote: > >On Wed, Apr 18, 2018 at 09:38:39AM +0300, Oleksandr Andrushchenko wrote: > >>On 04/17/2018 11:57 PM, Dongwon Kim wrote: > >>>On Tue, Apr 17, 20

Re: [Xen-devel] [PATCH 0/1] drm/xen-zcopy: Add Xen zero-copy helper DRM driver

2018-04-24 Thread Dongwon Kim
Had a meeting with Daniel and talked about bringing out generic part of hyper-dmabuf to the userspace, which means we most likely reuse IOCTLs defined in xen-zcopy for our use-case if we follow his suggestion. So assuming we use these IOCTLs as they are, Several things I would like you to

Re: [PATCH 0/1] drm/xen-zcopy: Add Xen zero-copy helper DRM driver

2018-04-17 Thread Dongwon Kim
On Tue, Apr 17, 2018 at 09:59:28AM +0200, Daniel Vetter wrote: > On Mon, Apr 16, 2018 at 12:29:05PM -0700, Dongwon Kim wrote: > > Yeah, I definitely agree on the idea of expanding the use case to the > > general domain where dmabuf sharing is used. However, what you are

Re: [Xen-devel] [PATCH 0/1] drm/xen-zcopy: Add Xen zero-copy helper DRM driver

2018-04-25 Thread Dongwon Kim
On Wed, Apr 25, 2018 at 08:34:55AM +0200, Daniel Vetter wrote: > On Wed, Apr 25, 2018 at 09:07:07AM +0300, Oleksandr Andrushchenko wrote: > > On 04/24/2018 11:35 PM, Dongwon Kim wrote: > > > Had a meeting with Daniel and talked about bringing out generic > > > part of hy

Re: [PATCH] udmabuf: Add support for mapping hugepages (v3)

2021-06-08 Thread Dongwon Kim
rd and DW) > > Cc: Gerd Hoffmann > Signed-off-by: Vivek Kasireddy > Signed-off-by: Dongwon Kim > --- > drivers/dma-buf/udmabuf.c | 51 +-- > 1 file changed, 44 insertions(+), 7 deletions(-) > > diff --git a/drivers/dma-buf/udmabuf.c b/

Re: [PATCH] drm: set DRM_RENDER_ALLOW flag on DRM_IOCTL_MODE_CREATE/DESTROY_DUMB ioctls

2021-06-11 Thread Dongwon Kim
should look into kmsro to make the client app to get the render buffer from ro-device instead. Thanks On Fri, Jun 11, 2021 at 11:39:46AM +0100, Emil Velikov wrote: > On Fri, 11 Jun 2021 at 10:47, Daniel Vetter wrote: > > > > On Thu, Jun 10, 2021 at 02:36:59PM -0700, Dongwon Kim wrot

[PATCH] udmabuf: configurable list_limit and size_limit_mb

2021-06-11 Thread Dongwon Kim
_mb are now defined as module parameters so that those can be optionally configured by root with proper values to remove these constraints. Cc: Gerd Hoffmann Signed-off-by: Dongwon Kim --- drivers/dma-buf/udmabuf.c | 9 +++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/drivers/

[PATCH] drm: set DRM_RENDER_ALLOW flag on DRM_IOCTL_MODE_CREATE/DESTROY_DUMB ioctls

2021-06-10 Thread Dongwon Kim
Render clients should be able to create/destroy dumb object to import and use it as render buffer in case the default DRM device is different from the render device (i.e. kmsro). Signed-off-by: Dongwon Kim --- drivers/gpu/drm/drm_ioctl.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions

[RFC PATCH v2 0/1] fence per plane state

2023-10-02 Thread Dongwon Kim
ing on Intel 12th Gen. Guest: Ubuntu VM running Xorg w/ 2~3 virtual displays using blob scanouts Dongwon Kim (1): drm/virtio: new fence for every plane update drivers/gpu/drm/virtio/virtgpu_drv.h | 7 +++ drivers/gpu/drm/virtio/virtgpu_plane.c | 66 +- 2 files c

[RFC PATCH v2 1/1] drm/virtio: new fence for every plane update

2023-10-02 Thread Dongwon Kim
ate does the same. Cc: Dmitry Osipenko Cc: Gerd Hoffmann Cc: Vivek Kasireddy Signed-off-by: Dongwon Kim --- drivers/gpu/drm/virtio/virtgpu_drv.h | 7 +++ drivers/gpu/drm/virtio/virtgpu_plane.c | 66 +- 2 files changed, 51 insertions(+), 22 deletions(-) diff --git a/

Re: [PATCH v2 2/2] drm/virtio: fence created per cursor/plane update

2022-06-14 Thread Dongwon Kim
On Thu, Jun 09, 2022 at 06:24:43AM +0200, Gerd Hoffmann wrote: > On Fri, Jun 03, 2022 at 02:18:49PM -0700, Dongwon Kim wrote: > > Having one fence for a vgfb would cause conflict in case there are > > multiple planes referencing the same vgfb (e.g. Xorg screen covering > > two

[PATCH v2 1/2] drm/virtio: .release ops for virtgpu fence release

2022-06-03 Thread Dongwon Kim
virtio_gpu_fence_release is added to free virtio-gpu-fence upon release of dma_fence. Cc: Gurchetan Singh Cc: Gerd Hoffmann Cc: Vivek Kasireddy Signed-off-by: Dongwon Kim --- drivers/gpu/drm/virtio/virtgpu_fence.c | 8 1 file changed, 8 insertions(+) diff --git a/drivers/gpu/drm

[PATCH v2 2/2] drm/virtio: fence created per cursor/plane update

2022-06-03 Thread Dongwon Kim
oid uninitialzed ptr problem (Reported by Dan Carpenter/kernel-test-robot) Reported-by: kernel test robot Reported-by: Dan Carpenter Cc: Gurchetan Singh Cc: Gerd Hoffmann Cc: Vivek Kasireddy Signed-off-by: Dongwon Kim --- drivers/gpu/drm/virtio/virtgpu_drv.h | 1 - drivers/gpu/drm/vir

[PATCH v2 0/2] drm/virtio: fence handling in case of multi scanouts

2022-06-03 Thread Dongwon Kim
which adds device specific release ops is for making the virtio_gpu fence freed upon the last dma_fence_put call. The 2nd patch "drm/virtio: fence created per cursor/plane update" contains the main implementation of per-plane fence. Dongwon Kim (2): drm/virtio: .release ops for virtgpu

[PATCH 2/3] drm/virtio: fence created per cursor/plane update

2022-05-10 Thread Dongwon Kim
nce is not required anymore with the suggested code change so both prepare_fb and cleanup_fb are removed since only fence creation/ freeing are done in there. Cc: Gurchetan Singh Cc: Gerd Hoffmann Cc: Vivek Kasireddy Signed-off-by: Dongwon Kim --- drivers/gpu/drm/virtio/virtgpu_drv.h | 1 - driv

[PATCH 3/3] drm/virtio: use the fence for every plane update

2022-05-10 Thread Dongwon Kim
Trying to use the fence to make plane update to wait for the host to consume the buffer for better synchronization in all cases Cc: Gurchetan Singh Cc: Gerd Hoffmann Cc: Vivek Kasireddy Signed-off-by: Dongwon Kim --- drivers/gpu/drm/virtio/virtgpu_plane.c | 7 +-- 1 file changed, 1

[PATCH 1/3] drm/virtio: .release ops for virtgpu fence release

2022-05-10 Thread Dongwon Kim
virtio_gpu_fence_release is added to free virtio-gpu-fence upon release of dma_fence. Cc: Gurchetan Singh Cc: Gerd Hoffmann Cc: Vivek Kasireddy Signed-off-by: Dongwon Kim --- drivers/gpu/drm/virtio/virtgpu_fence.c | 8 1 file changed, 8 insertions(+) diff --git a/drivers/gpu/drm

[RFC PATCH 2/3] drm/virtio: new fence for every plane update

2022-09-26 Thread Dongwon Kim
flushed again consecutively. Cc: Gurchetan Singh Cc: Gerd Hoffmann Cc: Vivek Kasireddy Signed-off-by: Dongwon Kim --- drivers/gpu/drm/virtio/virtgpu_drv.h | 7 +++ drivers/gpu/drm/virtio/virtgpu_plane.c | 76 +++--- 2 files changed, 51 insertions(+), 32 deletions(-) dif

[RFC PATCH 3/3] drm/virtio: drm_gem_plane_helper_prepare_fb for obj synchronization

2022-09-26 Thread Dongwon Kim
This helper is needed for framebuffer synchronization. Old framebuffer data is often displayed on the guest display without this helper. Cc: Gurchetan Singh Cc: Gerd Hoffmann Cc: Vivek Kasireddy Signed-off-by: Dongwon Kim --- drivers/gpu/drm/virtio/virtgpu_plane.c | 4 1 file changed, 4

[RFC PATCH 1/3] drm/virtio: .release ops for virtgpu fence release

2022-09-26 Thread Dongwon Kim
virtio_gpu_fence_release is added to free virtio-gpu-fence upon release of dma_fence. Cc: Gurchetan Singh Cc: Gerd Hoffmann Cc: Vivek Kasireddy Signed-off-by: Dongwon Kim --- drivers/gpu/drm/virtio/virtgpu_fence.c | 8 1 file changed, 8 insertions(+) diff --git a/drivers/gpu/drm

[PFC PATCH 0/3] drm/virtio: synchronous guest framebuffer update

2022-09-26 Thread Dongwon Kim
This series is for fixing some issues regarding scanout synchronization with host (e.g. QEMU/KVM) that uses virtio-gpu. This series replaces the previously submitted one, "[PATCH v2 0/2] drm/virtio: fence handling in case of multi scanouts". Dongwon Kim (3): drm/virtio: .release ops f

  1   2   >