mirror of
https://github.com/nxp-imx/linux-imx.git
synced 2025-07-07 18:05:21 +02:00
drm/msm: Allocate memory for disp snapshot with kvzalloc()
[ Upstream commite4a45582db
] With the "drm/msm: add a display mmu fault handler" series [1] we saw issues in the field where memory allocation was failing when allocating space for registers in msm_disp_state_dump_regs(). Specifically we were seeing an order 5 allocation fail. It's not surprising that order 5 allocations will sometimes fail after the system has been up and running for a while. There's no need here for contiguous memory. Change the allocation to kvzalloc() which should make it much less likely to fail. [1] https://lore.kernel.org/r/20240628214848.4075651-1-quic_abhinavk@quicinc.com/ Fixes:98659487b8
("drm/msm: add support to take dpu snapshot") Signed-off-by: Douglas Anderson <dianders@chromium.org> Reviewed-by: Abhinav Kumar <quic_abhinavk@quicinc.com> Patchwork: https://patchwork.freedesktop.org/patch/619658/ Link: https://lore.kernel.org/r/20241014093605.2.I72441365ffe91f3dceb17db0a8ec976af8139590@changeid Signed-off-by: Abhinav Kumar <quic_abhinavk@quicinc.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
f7ad916273
commit
d4e44b8a6a
|
@ -26,7 +26,7 @@ static void msm_disp_state_dump_regs(u32 **reg, u32 aligned_len, void __iomem *b
|
||||||
end_addr = base_addr + aligned_len;
|
end_addr = base_addr + aligned_len;
|
||||||
|
|
||||||
if (!(*reg))
|
if (!(*reg))
|
||||||
*reg = kzalloc(len_padded, GFP_KERNEL);
|
*reg = kvzalloc(len_padded, GFP_KERNEL);
|
||||||
|
|
||||||
if (*reg)
|
if (*reg)
|
||||||
dump_addr = *reg;
|
dump_addr = *reg;
|
||||||
|
@ -162,7 +162,7 @@ void msm_disp_state_free(void *data)
|
||||||
|
|
||||||
list_for_each_entry_safe(block, tmp, &disp_state->blocks, node) {
|
list_for_each_entry_safe(block, tmp, &disp_state->blocks, node) {
|
||||||
list_del(&block->node);
|
list_del(&block->node);
|
||||||
kfree(block->state);
|
kvfree(block->state);
|
||||||
kfree(block);
|
kfree(block);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue
Block a user