WSL2-Linux-Kernel/drivers/gpu/drm
Christian Koenig c20dc3698d drm/radeon: fix & improve ih ring handling v3
The spinlock was actually there to protect the
rptr, but rptr was read outside of the locked area.

Also we don't really need a spinlock here, an
atomic should to quite fine since we only need to
prevent it from being reentrant.

v2: Keep the spinlock....
v3: Back to an atomic again after finding & fixing the real bug.

Signed-off-by: Christian Koenig <christian.koenig@amd.com>
2012-06-21 09:38:48 +02:00
..
ast drm: update ast/cirrus/mgag200 for change in TTM api 2012-05-23 14:08:41 +01:00
cirrus drm/cirrus: kick out conflicting framebuffers earlier 2012-06-01 11:11:09 +01:00
exynos drm/exynos: fixed blending for hdmi graphic layer 2012-06-05 13:25:18 +09:00
gma500 drm: Constify drm_mode_config_funcs pointer 2012-05-22 10:35:07 +01:00
i2c
i810 i810: switch to vm_mmap() 2012-05-30 21:04:54 -04:00
i915 Merge tag 'drm-intel-next-2012-06-04' of git://people.freedesktop.org/~danvet/drm-intel into drm-core-next 2012-06-20 19:17:08 +01:00
mga
mgag200 drm/mgag200: kick off conflicting framebuffers earlier. 2012-06-01 11:12:39 +01:00
nouveau nouveau: add vmap support to nouveau prime support 2012-05-31 14:14:00 +01:00
r128
radeon drm/radeon: fix & improve ih ring handling v3 2012-06-21 09:38:48 +02:00
savage drm: checking the wrong variable in savage_do_init_bci() 2012-05-17 11:42:27 +01:00
sis drm sis: initialize object_idr 2012-06-16 11:18:53 +01:00
tdfx
ttm drm/ttm: Fix buffer object metadata accounting regression v2 2012-06-12 15:57:47 +01:00
udl drm/udl: only bind to the video devices on the hub. 2012-06-16 11:09:58 +01:00
via drm via: initialize object_idr 2012-06-16 11:18:38 +01:00
vmwgfx drm/vmwgfx: Fix nasty write past alloced memory area 2012-06-01 17:00:20 +01:00
Kconfig drm/kms: driver for virtual cirrus under qemu 2012-05-17 11:02:24 +01:00
Makefile drm/kms: driver for virtual cirrus under qemu 2012-05-17 11:02:24 +01:00
README.drm
ati_pcigart.c
drm_agpsupport.c
drm_auth.c
drm_buffer.c
drm_bufs.c VM: add "vm_mmap()" helper function 2012-04-20 17:29:13 -07:00
drm_cache.c Merge branch 'drm-intel-next' of git://people.freedesktop.org/~danvet/drm-intel into drm-core-next 2012-04-12 10:27:01 +01:00
drm_context.c drm: Unify and fix idr error handling 2012-04-24 09:50:20 +01:00
drm_crtc.c drm: Use stdint types for consistency 2012-05-29 11:07:09 +01:00
drm_crtc_helper.c drm: Don't initialize local ret variable when not needed 2012-05-22 10:32:58 +01:00
drm_debugfs.c
drm_dma.c
drm_dp_i2c_helper.c
drm_drv.c drm: add generic ioctls to get/set properties on any object 2012-05-17 11:11:22 +01:00
drm_edid.c drm/edid: Make the header fixup threshold tunable 2012-06-01 17:00:23 +01:00
drm_edid_load.c drm: Don't initialize local ret variable when not needed 2012-05-22 10:32:58 +01:00
drm_edid_modes.h drm: replace open-coded ARRAY_SIZE with macro 2012-04-20 13:12:16 +01:00
drm_encoder_slave.c
drm_fb_helper.c drm: Make the CRTC gamma_set operation optional 2012-05-22 10:35:15 +01:00
drm_fops.c drm: Releasing FBs before releasing GEM objects during drm_release 2012-04-19 14:40:41 +01:00
drm_gem.c drm/prime: add exported buffers to current fprivs imported buffer list (v2) 2012-05-23 10:46:03 +01:00
drm_global.c
drm_hashtab.c
drm_info.c
drm_ioc32.c
drm_ioctl.c drm/prime: expose capability flags for userspace. 2012-05-18 11:12:16 +01:00
drm_irq.c drm: Don't initialize local ret variable when not needed 2012-05-22 10:32:58 +01:00
drm_lock.c drm: Don't initialize local ret variable when not needed 2012-05-22 10:32:58 +01:00
drm_memory.c
drm_mm.c
drm_modes.c
drm_pci.c
drm_platform.c
drm_prime.c drm/prime: add exported buffers to current fprivs imported buffer list (v2) 2012-05-23 10:46:03 +01:00
drm_proc.c
drm_scatter.c
drm_stub.c drm: Don't initialize local ret variable when not needed 2012-05-22 10:32:58 +01:00
drm_sysfs.c drm: Miscellaneous typo fixes and documentation updates 2012-05-22 10:34:33 +01:00
drm_trace.h
drm_trace_points.c
drm_usb.c drm/usb: fix module license on drm/usb layer. 2012-04-19 09:33:32 +01:00
drm_vm.c drm: pass dev to drm_vm_{open,close}_locked() 2012-05-11 17:37:46 +01:00

README.drm

************************************************************
* For the very latest on DRI development, please see:      *
*     http://dri.freedesktop.org/                          *
************************************************************

The Direct Rendering Manager (drm) is a device-independent kernel-level
device driver that provides support for the XFree86 Direct Rendering
Infrastructure (DRI).

The DRM supports the Direct Rendering Infrastructure (DRI) in four major
ways:

    1. The DRM provides synchronized access to the graphics hardware via
       the use of an optimized two-tiered lock.

    2. The DRM enforces the DRI security policy for access to the graphics
       hardware by only allowing authenticated X11 clients access to
       restricted regions of memory.

    3. The DRM provides a generic DMA engine, complete with multiple
       queues and the ability to detect the need for an OpenGL context
       switch.

    4. The DRM is extensible via the use of small device-specific modules
       that rely extensively on the API exported by the DRM module.


Documentation on the DRI is available from:
    http://dri.freedesktop.org/wiki/Documentation
    http://sourceforge.net/project/showfiles.php?group_id=387
    http://dri.sourceforge.net/doc/

For specific information about kernel-level support, see:

    The Direct Rendering Manager, Kernel Support for the Direct Rendering
    Infrastructure
    http://dri.sourceforge.net/doc/drm_low_level.html

    Hardware Locking for the Direct Rendering Infrastructure
    http://dri.sourceforge.net/doc/hardware_locking_low_level.html

    A Security Analysis of the Direct Rendering Infrastructure
    http://dri.sourceforge.net/doc/security_low_level.html