[PATCH v2 0/6] DRM: VMA Access Management and Render Nodes

Christian König christian.koenig at amd.com
Fri Aug 23 04:28:05 PDT 2013


Hi David,

Am 23.08.2013 13:13, schrieb David Herrmann:
> Hi
>
> I reduced the vma access-management patches to a minimum. I now do filp*
> tracking in gem unconditionally and force drm_gem_mmap() to check this. Hence,
> all gem drivers are safe now. For TTM drivers, I now use the already available
> verify_access() callback to get access to the underlying gem-object. Pretty
> simple.. Why hadn't I thought of that before?
>
> Long story short: All drivers using GEM are safe now. This leaves vmwgfx.. But
> they do their own access-management, anyway.
>
> The 3 patches on top implement render-nodes. I added a "drm_rnodes" module
> parameter to core drm. You need to pass "drm.rnodes=1" on the kernel
> command-line or via sysfs _before_ loading a driver. Otherwise, render nodes
> will not be created.
>
> This allows us to test render-nodes and play with the API. I added FLINK for
> now so we can better test it. Not sure whether we should allow it in the end,
> though.
>
> Maybe we can get this into 3.11?

A bit unlikely, but 3.12 should work fine.

I'm working on a project that can make good use of this, so if Alex 
doesn't mind like to add the necessary radeon flags (should be only a 
few one liners anyway).

Cheers,
Christian.

> Regards
> David
>
> David Herrmann (4):
>    drm/vma: add access management helpers
>    drm/gem: implement vma access management
>    drm: verify vma access in TTM+GEM drivers
>    drm: implement experimental render nodes
>
> Kristian Høgsberg (1):
>    drm/i915: Support render nodes
>
> Martin Peres (1):
>    drm/nouveau: Support render nodes
>
>   Documentation/DocBook/drm.tmpl        |  71 ++++++++++++++++
>   drivers/gpu/drm/ast/ast_ttm.c         |   4 +-
>   drivers/gpu/drm/cirrus/cirrus_ttm.c   |   4 +-
>   drivers/gpu/drm/drm_drv.c             |  15 ++--
>   drivers/gpu/drm/drm_fops.c            |  14 +--
>   drivers/gpu/drm/drm_gem.c             |  18 ++++
>   drivers/gpu/drm/drm_pci.c             |   9 ++
>   drivers/gpu/drm/drm_platform.c        |   9 ++
>   drivers/gpu/drm/drm_stub.c            |  10 +++
>   drivers/gpu/drm/drm_usb.c             |   9 ++
>   drivers/gpu/drm/drm_vma_manager.c     | 155 ++++++++++++++++++++++++++++++++++
>   drivers/gpu/drm/i915/i915_dma.c       |  36 ++++----
>   drivers/gpu/drm/i915/i915_drv.c       |   3 +-
>   drivers/gpu/drm/mgag200/mgag200_ttm.c |   4 +-
>   drivers/gpu/drm/nouveau/nouveau_bo.c  |   4 +-
>   drivers/gpu/drm/nouveau/nouveau_drm.c |  24 +++---
>   drivers/gpu/drm/qxl/qxl_ttm.c         |   4 +-
>   drivers/gpu/drm/radeon/radeon_ttm.c   |   4 +-
>   include/drm/drmP.h                    |   9 ++
>   include/drm/drm_vma_manager.h         |  21 ++++-
>   20 files changed, 373 insertions(+), 54 deletions(-)
>




More information about the dri-devel mailing list