This separates the kref for ion handles into two components.
Userspace requests through the ioctl will hold at most one
reference to the internally used kref. All additional requests
will increment a separate counter, and the original reference is
only put once that counter hits 0. This protects the kernel from
a poorly behaving userspace.
Bug: 34276203
Change-Id: Ibc36bc4405788ed0fea7337b541cad3be2b934c0
Signed-off-by: Daniel Rosenberg <drosen@google.com>
Git-repo: https://android.googlesource.com/kernel/msm/
Git-commit: 20abfcc16884a5af973a5e91dd013ddd789c44f4
[d-cagle@codeaurora.org: Resolve style issues]
Signed-off-by: Dennis Cagle <d-cagle@codeaurora.org>
Use safer version of strcpy i.e. strlcpy instead of
strncpy for NULL terminated strings.
Change-Id: I5e2800d1d539545744a1b1231e1d589a7c92797a
Signed-off-by: Manu Gautam <mgautam@codeaurora.org>
This fix checks the validity of memory device session's
process descriptor before issuing a signal to it while
subsystem restart is performed. This fix avoids accessing
of cleaned-up process descriptor's fields.
CRs-Fixed: 2034816
Change-Id: I2725d3348fbeb8290c887cccea4bca6d41c5b184
Signed-off-by: Gopikrishna Mogasati <gmogas@codeaurora.org>
Register a notifier callback for LAB_VREG_NOT_OK, which is triggered
by the LABIBB driver when short circuit(SC) is detected on the LAB
rail. Disable the OLEDB module upon receiving the LAB_VREG_NOT_OK
notification.
Change-Id: Ia3cc19d9a3c2f32acc413677a9ea4b3100464cd2
Signed-off-by: Kiran Gunda <kgunda@codeaurora.org>
On certain PMICs, there is no short circuit (SC) detection available
in LAB module. Add support to detect it manually and disable LAB/IBB
module upon SC detection. In addition, notify it to OLEDB driver to
disable OLEDB module.
Change-Id: I2a9dc5b1ae8ece45c85b3992026c7f389fd4d135
Signed-off-by: Kiran Gunda <kgunda@codeaurora.org>
Restore default android binder domains. As 'binder,hwbinder,vndbinder'
is the default, this change enables vndbinder.
Change-Id: I48ce75fc6090ad3d9a5b66ca437acbde5a913751
Signed-off-by: Neeraj Upadhyay <neeraju@codeaurora.org>
IPAv2 hardware works with 32 bit addressing,
so allocate a kernel memory using GFP_DMA flag
which is processed by IPA hardware.
Add a error check for return of dma_map_single
using dma_mapping_error API.
Change-Id: I08e3eec8e9b2d81f945283a72338c0a8f23e2ac9
Acked-by: Mohammed Javid <mjavid@qti.qualcomm.com>
Signed-off-by: Utkarsh Saxena <usaxena@codeaurora.org>
On some conditions, such as reboot, the allocation context
for DMA task might be a user space processes with SIGKILL.
Pre allocate this buffer to avoid DMA allocation failure.
Change-Id: Ie0c5ecbb7aebbf03c42c2f8976aad40e9987fd4a
CRs-Fixed: 2032907
Acked-by: Ady Abraham <adya@qti.qualcomm.com>
Signed-off-by: Skylar Chang <chiaweic@codeaurora.org>
This reverts 'commit 9730348075 ("arm64: Increase the max
granular size") and also sets ARM_DMA_MINALIGN to 128.
ARCH_DMA_MINALIGN is dependent on L1_CACHE_SHIFT but it should
be set to maximum *known* cache line size on ARMv8 systems to
avoid DMA coherecy issues. So setting ARM_DMA_MINALIGN to 128.
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Change-Id: Ie771d1b693789fce8793538a6efddfe68e2a0043
Patch-mainline: linux-kernel @ 21/03/16, 17:14:03
Signed-off-by: Imran Khan <kimran@codeaurora.org>