msm: kgsl: Release process mutex appropriately to avoid deadlock

There is a deadlock situation between
msm_iommu_lock mutex and process_mutex.

In irq context iommu_fault_handler get into
a deadlock by aquiring msm_iommu_lock and waiting
for process mutex. The other thread in
destroy_process_private is waiting for
msm_iommu_lock while holding process mutex leading
to a deadlock. With this change we release the
process mutex well before we call the function
in which msm_iommu_lock is taken.

Change-Id: I674a7512dcd3e7fe202e39b57539cb6c1e29ae0e
Signed-off-by: Sunil Khatri <sunilkh@codeaurora.org>
msm: display: clear sec_active when the pipe is not for secure

Make sure secure memory is unmapped properly

Change-Id: Ie0f2bc586ab4de45ceaaa6834db64ba7b94b2c0b
Signed-off-by: Ken Zhang <kenz@codeaurora.org>
Signed-off-by: c_hharis <hharis@codeaurora.org>
Signed-off-by: Nirmal Abraham <nabrah@codeaurora.org>
lib/scatterlist: error handling in __sg_alloc_table()

I was reviewing code which I suspected might allocate a zero size SG
table.  That will cause memory corruption.  Also we can't return before
doing the memset or we could end up using uninitialized memory in the
cleanup path.

Change-Id: Icee6be8ea22644d7f16264d9d2a0887c7145996b
CRs-Fixed: 611562
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Cc: Akinobu Mita <akinobu.mita@gmail.com>
Cc: Imre Deak <imre.deak@intel.com>
Cc: Tejun Heo <tj@kernel.org>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Cc: Maxim Levitsky <maximlevitsky@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Merge "lib/scatterlist: error handling in __sg_alloc_table()"
Merge "msm: display: clear sec_active when the pipe is not for secure"
Merge "Merge "lib/scatterlist: error handling in __sg_alloc_table()""
Merge "Merge "Merge "lib/scatterlist: error handling in __sg_alloc_table()"""
Merge "Merge "msm: display: clear sec_active when the pipe is not for secure""
Merge "Merge "Merge "msm: display: clear sec_active when the pipe is not for secure"""
Merge "Merge "msm: display: clear sec_active when the pipe is not for secure""
Merge "msm: kgsl: Release process mutex appropriately to avoid deadlock"
Merge "Merge "Merge "msm: display: clear sec_active when the pipe is not for secure"""
Merge "Merge "msm: kgsl: Release process mutex appropriately to avoid deadlock""
Merge "Merge "Merge "msm: kgsl: Release process mutex appropriately to avoid deadlock"""
Merge "Merge "msm: kgsl: Release process mutex appropriately to avoid deadlock""
Merge "Merge "Merge "msm: kgsl: Release process mutex appropriately to avoid deadlock"""
Merge "Merge "msm: kgsl: Release process mutex appropriately to avoid deadlock""
Merge "Merge "Merge "msm: kgsl: Release process mutex appropriately to avoid deadlock"""
Merge tag 'AU_LINUX_ANDROID_KK_2.7-STABLE.04.04.02.015.213' into kk-merge

AU_LINUX_ANDROID_KK_2.7-STABLE.04.04.02.015.213 based on quic/aosp/kk_2.7-stable