On Thu, Jan 10, 2013 at 2:47 PM, Daniel Vetter <daniel.vetter@xxxxxxxx> wrote: > Hi all, > > Concurrent EDID reads and pageflips ftw! > > Changes since the rfc: > - radeon/ttm/exynos prep patches/fixes merged. > - arm driver patches at least compile-tested. > - error handling fixed in a few cases, all spotted by Richard Wilbur, > - radeon/nouveau tested on one card each, didn't blow up right away. > - i-g-t extended to cover the corner-cases, seems to hold up. > - DocBook updated as a new patch on top. > - one more patch to teach the fb helpers manners and not interfere so much with > i-g-t tests. > > Imo this is ready for inclusion, so (especially driver maintainers) please > review and test. I've read through the series.. I'll have to make a few little updates vs the dss/kms rewrite patch in omapdrm which should hopefully be merged soon, but that shouldn't be a big deal. Reviewed-by: Rob Clark <rob@xxxxxx> > Yours, Daniel > > Daniel Vetter (35): > drm: review locking rules in drm_crtc.c > drm/doc: integrate drm_crtc.c kerneldoc > drm/<drivers>: reorder framebuffer init sequence > drm/vmwgfx: reorder framebuffer init sequence > drm/gma500: move fbcon restore to lastclose > drm/nouveau: protect evo_wait/evo_kick sections with a channel mutex > drm/nouveau: try to protect nbo->pin_refcount > drm/<drivers>: Unified handling of unimplemented fb->create_handle > drm: encapsulate crtc->set_config calls > drm: add drm_modeset_lock|unlock_all > drm/i915: use drm_modeset_lock_all > drm/gma500: use drm_modeset_lock_all > drm/ast: use drm_modeset_lock_all > drm/shmobile: use drm_modeset_lock_all > drm/vmgfx: use drm_modeset_lock_all > drm: add per-crtc locks > drm: only take the crtc lock for ->cursor_set > drm: only take the crtc lock for ->cursor_move > drm: revamp locking around fb creation/destruction > drm: create drm_framebuffer_lookup > drm: revamp framebuffer cleanup interfaces > drm: reference framebuffers which are on the idr > drm: nest modeset locks within fpriv->fbs_lock > drm: push modeset_lock_all into ->fb_create driver callbacks > drm: don't take modeset locks in getfb ioctl > drm: fb refcounting for dirtyfb_ioctl > drm: refcounting for sprite framebuffers > drm: refcounting for crtc framebuffers > drm/i915: dump refcount into framebuffer debugfs file > drm/vmwgfx: add proper framebuffer refcounting > drm: optimize drm_framebuffer_remove > drm: only grab the crtc lock for pageflips > drm: don't hold crtc mutexes for connector ->detect callbacks > drm/doc: updates for new framebuffer lifetime rules > drm/fb_helper: check whether fbcon is bound > > Documentation/DocBook/drm.tmpl | 63 ++- > drivers/gpu/drm/ast/ast_drv.c | 4 +- > drivers/gpu/drm/ast/ast_drv.h | 2 + > drivers/gpu/drm/ast/ast_fb.c | 1 + > drivers/gpu/drm/ast/ast_main.c | 12 +- > drivers/gpu/drm/cirrus/cirrus_fbdev.c | 1 + > drivers/gpu/drm/cirrus/cirrus_main.c | 12 +- > drivers/gpu/drm/drm_crtc.c | 792 +++++++++++++++++------------ > drivers/gpu/drm/drm_fb_cma_helper.c | 15 +- > drivers/gpu/drm/drm_fb_helper.c | 65 ++- > drivers/gpu/drm/drm_fops.c | 1 + > drivers/gpu/drm/exynos/exynos_drm_fbdev.c | 4 +- > drivers/gpu/drm/gma500/framebuffer.c | 29 +- > drivers/gpu/drm/gma500/psb_device.c | 8 +- > drivers/gpu/drm/gma500/psb_drv.c | 14 +- > drivers/gpu/drm/i2c/ch7006_drv.c | 2 +- > drivers/gpu/drm/i915/i915_debugfs.c | 15 +- > drivers/gpu/drm/i915/intel_display.c | 21 +- > drivers/gpu/drm/i915/intel_dp.c | 2 + > drivers/gpu/drm/i915/intel_fb.c | 5 +- > drivers/gpu/drm/i915/intel_lvds.c | 4 +- > drivers/gpu/drm/i915/intel_overlay.c | 14 +- > drivers/gpu/drm/i915/intel_sprite.c | 8 +- > drivers/gpu/drm/mgag200/mgag200_fb.c | 1 + > drivers/gpu/drm/mgag200/mgag200_main.c | 16 +- > drivers/gpu/drm/nouveau/nouveau_bo.c | 22 +- > drivers/gpu/drm/nouveau/nouveau_bo.h | 2 + > drivers/gpu/drm/nouveau/nouveau_display.c | 10 +- > drivers/gpu/drm/nouveau/nouveau_fbcon.c | 1 + > drivers/gpu/drm/nouveau/nv04_display.c | 2 +- > drivers/gpu/drm/nouveau/nv17_tv.c | 2 +- > drivers/gpu/drm/nouveau/nv50_display.c | 10 + > drivers/gpu/drm/radeon/radeon_cursor.c | 8 +- > drivers/gpu/drm/radeon/radeon_display.c | 2 +- > drivers/gpu/drm/radeon/radeon_fb.c | 2 + > drivers/gpu/drm/shmobile/shmob_drm_drv.c | 4 +- > drivers/gpu/drm/udl/udl_fb.c | 4 +- > drivers/gpu/drm/vmwgfx/vmwgfx_drv.c | 2 +- > drivers/gpu/drm/vmwgfx/vmwgfx_ioctl.c | 38 +- > drivers/gpu/drm/vmwgfx/vmwgfx_kms.c | 87 ++-- > drivers/staging/omapdrm/omap_debugfs.c | 2 + > drivers/staging/omapdrm/omap_fb.c | 16 +- > drivers/staging/omapdrm/omap_fbdev.c | 8 +- > include/drm/drmP.h | 13 + > include/drm/drm_crtc.h | 30 ++ > 45 files changed, 830 insertions(+), 546 deletions(-) > > -- > 1.7.10.4 > > _______________________________________________ > dri-devel mailing list > dri-devel@xxxxxxxxxxxxxxxxxxxxx > http://lists.freedesktop.org/mailman/listinfo/dri-devel _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel