Revision 31a55cf145f2e3d74a7488e86bd0b33b64250fce authored by Dave Airlie on 19 March 2015, 04:01:42 UTC, committed by Dave Airlie on 19 March 2015, 04:01:42 UTC
   Some urgent regression fixes to booting failures Exynos DRM occured.

   Summary:
   - Fix two urgent null pointer dereference bugs in case of enabling
     or disabling IOMMU. There was two cases to these issues.
     One is that plane->crtc is accessed by exynos_disable_plane()
     when device tree binding is broken so device driver tries
     to release, which means that the mode set operation isn't invoked yet
     so plane->crtc is still NULL and exynos_disable_plane() will access
     NULL pointer. This issue is fixed by checking if the plane->crtc
     is NULL or not in exynos_disable_plane()

     Other is that fimd_wait_for_vblank() is called to avoid from page fault
     with IOMMU before the ctx object is created. At this time,
     fimd_wait_for_vblank() tries to access ctx->crtc but the ctx->crtc
     is still NULL because exynos_drm_crtc_create() isn't called yet.
     This issue is fixed by creating a crtc object and setting it to
     ctx->crtc prior to fimd_wait_for_vblank() call.

     For more details, you can refer to below an e-mail thread,
     http://www.spinics.net/lists/linux-samsung-soc/msg42436.html

   - Remove unnecessary file not used and fix trivial issues.

* 'exynos-drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/daeinki/drm-exynos:
  drm/exynos: fix the initialization order in FIMD
  drm/exynos: fix typo config name correctly.
  drm/exynos: Check for NULL dereference of crtc
  drm/exynos: IS_ERR() vs NULL bug
  drm/exynos: remove unused files
2 parent s 59caeae + cdbfca8
History
File Mode Size
Makefile -rw-r--r-- 1.3 KB
ashldi3.S -rw-r--r-- 1.6 KB
ashrdi3.S -rw-r--r-- 1.6 KB
backtrace.S -rw-r--r-- 3.7 KB
bitops.h -rw-r--r-- 2.1 KB
bswapsdi2.S -rw-r--r-- 610 bytes
call_with_stack.S -rw-r--r-- 1.2 KB
changebit.S -rw-r--r-- 396 bytes
clear_user.S -rw-r--r-- 1.3 KB
clearbit.S -rw-r--r-- 394 bytes
copy_from_user.S -rw-r--r-- 2.1 KB
copy_page.S -rw-r--r-- 1.3 KB
copy_template.S -rw-r--r-- 6.9 KB
copy_to_user.S -rw-r--r-- 2.1 KB
csumipv6.S -rw-r--r-- 696 bytes
csumpartial.S -rw-r--r-- 3.0 KB
csumpartialcopy.S -rw-r--r-- 1.1 KB
csumpartialcopygeneric.S -rw-r--r-- 6.8 KB
csumpartialcopyuser.S -rw-r--r-- 1.9 KB
delay-loop.S -rw-r--r-- 1.3 KB
delay.c -rw-r--r-- 2.8 KB
div64.S -rw-r--r-- 4.0 KB
ecard.S -rw-r--r-- 1023 bytes
findbit.S -rw-r--r-- 4.8 KB
floppydma.S -rw-r--r-- 736 bytes
getuser.S -rw-r--r-- 3.1 KB
io-acorn.S -rw-r--r-- 678 bytes
io-readsb.S -rw-r--r-- 2.4 KB
io-readsl.S -rw-r--r-- 1.5 KB
io-readsw-armv3.S -rw-r--r-- 1.8 KB
io-readsw-armv4.S -rw-r--r-- 2.3 KB
io-writesb.S -rw-r--r-- 1.6 KB
io-writesl.S -rw-r--r-- 1.2 KB
io-writesw-armv3.S -rw-r--r-- 2.1 KB
io-writesw-armv4.S -rw-r--r-- 1.7 KB
lib1funcs.S -rw-r--r-- 8.0 KB
lshrdi3.S -rw-r--r-- 1.6 KB
memchr.S -rw-r--r-- 519 bytes
memcpy.S -rw-r--r-- 1.4 KB
memmove.S -rw-r--r-- 4.8 KB
memset.S -rw-r--r-- 2.7 KB
memzero.S -rw-r--r-- 3.0 KB
muldi3.S -rw-r--r-- 920 bytes
putuser.S -rw-r--r-- 2.2 KB
setbit.S -rw-r--r-- 376 bytes
strchr.S -rw-r--r-- 550 bytes
strrchr.S -rw-r--r-- 529 bytes
testchangebit.S -rw-r--r-- 415 bytes
testclearbit.S -rw-r--r-- 417 bytes
testsetbit.S -rw-r--r-- 413 bytes
uaccess_with_memcpy.c -rw-r--r-- 6.1 KB
ucmpdi2.S -rw-r--r-- 797 bytes
xor-neon.c -rw-r--r-- 1.3 KB

back to top