[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