lkml.org 
[lkml]   [2017]   [Oct]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    SubjectRe: [PATCH v15 6/7] drm/i915: Introduce GEM proxy
    From
    Date
    On Tue, 2017-10-10 at 17:50 +0800, Tina Zhang wrote:
    > GEM proxy is a kind of GEM, whose backing physical memory is pinned
    > and produced by guest VM and is used by host as read only. With GEM
    > proxy, host is able to access guest physical memory through GEM object
    > interface. As GEM proxy is such a special kind of GEM, a new flag
    > I915_GEM_OBJECT_IS_PROXY is introduced to ban host from changing the
    > backing storage of GEM proxy.
    >
    > v14:
    > - return -ENXIO when gem proxy object is banned by ioctl.
    > (Chris) (Daniel)
    >
    > v13:
    > - add comments to GEM proxy. (Chris)
    > - don't ban GEM proxy in i915_gem_sw_finish_ioctl. (Chris)
    > - check GEM proxy bar after finishing i915_gem_object_wait. (Chris)
    > - remove GEM proxy bar in i915_gem_madvise_ioctl.
    >
    > v6:
    > - add gem proxy barrier in the following ioctls. (Chris)
    > i915_gem_set_caching_ioctl
    > i915_gem_set_domain_ioctl
    > i915_gem_sw_finish_ioctl
    > i915_gem_set_tiling_ioctl
    > i915_gem_madvise_ioctl
    >
    > Signed-off-by: Tina Zhang <tina.zhang@intel.com>
    > Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
    > Cc: Chris Wilson <chris@chris-wilson.co.uk>
    > Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>

    <SNIP>

    > +++ b/drivers/gpu/drm/i915/i915_gem_object.h
    > @@ -39,6 +39,7 @@ struct drm_i915_gem_object_ops {
    > unsigned int flags;
    > #define I915_GEM_OBJECT_HAS_STRUCT_PAGE BIT(0)
    > #define I915_GEM_OBJECT_IS_SHRINKABLE BIT(1)
    > +#define I915_GEM_OBJECT_IS_PROXY BIT(2)

    Please fix the indent to match. Do convert the above two lines to use
    TAB character too.

    <SNIP>

    > @@ -1690,7 +1704,7 @@ i915_gem_mmap_ioctl(struct drm_device *dev, void *data,
    > */
    > if (!obj->base.filp) {
    > i915_gem_object_put(obj);
    > - return -EINVAL;
    > + return -ENXIO;
    > }

    This still needs to be a separate patch.

    With those fixes, this is;

    Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>

    Regards, Joonas
    --
    Joonas Lahtinen
    Open Source Technology Center
    Intel Corporation

    \
     
     \ /
      Last update: 2017-10-10 12:59    [W:3.191 / U:24.384 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site