summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGhanim Fodi <gfodi@codeaurora.org>2016-11-01 00:09:10 +0200
committerUtkarsh Saxena <usaxena@codeaurora.org>2017-02-13 23:04:06 +0530
commit56b076a17ff78754a61c701e0acdabdd02f77aca (patch)
treec63d5d8eb5f46777ebc21557643f66533d70bd37
parent3a7e752617514960c5cecdf84e12b13dc63c04c7 (diff)
msm: ipa: use GFP_ATOMIC for DMA memory allocation during SSR
SSR logic is executed during device shutdown. During device shutdown the Linux tasks (processes) are moving to SIGKILL state. If a DMA allocation from the kernel happens in a context of a process in SIGKILL state and page migration is needed, the allocation will fail. Use GFP_ATOMIC allocation flag during SSR. This will utilize the atomic memory pool and will not require page migration. CRs-fixed: 1077811 Change-Id: Ie06b85d1f9d0a230c3d3832b6f0bbcdefc520c1e Signed-off-by: Ghanim Fodi <gfodi@codeaurora.org> Signed-off-by: Utkarsh Saxena <usaxena@codeaurora.org>
-rw-r--r--drivers/platform/msm/ipa/ipa_v2/ipa.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/platform/msm/ipa/ipa_v2/ipa.c b/drivers/platform/msm/ipa/ipa_v2/ipa.c
index 1e79fd954969..fde087f07226 100644
--- a/drivers/platform/msm/ipa/ipa_v2/ipa.c
+++ b/drivers/platform/msm/ipa/ipa_v2/ipa.c
@@ -1827,7 +1827,7 @@ static int ipa_q6_clean_q6_tables(void)
u32 max_cmds = ipa_get_max_flt_rt_cmds(ipa_ctx->ipa_num_pipes);
mem.base = dma_alloc_coherent(ipa_ctx->pdev, 4, &mem.phys_base,
- GFP_KERNEL);
+ GFP_ATOMIC);
if (!mem.base) {
IPAERR("failed to alloc DMA buff of size 4\n");
return -ENOMEM;