【环境信息】
环境信息:arm物理机 TaiShan 2280 V2
OS版本:21.03
【问题复现步骤】
1.安装最小化
2.安装成功进入系统查看dmesg日志
【预期结果】
无异常报错
【实际结果】
该问题是kernel5.5扩展了zone_dma时引入的一个问题;将dma拆成两个区域,导致申请不到连续内存;
社区上的解决方案:
http://lists.infradead.org/pipermail/linux-arm-kernel/2020-October/610562.html
因为跟当前OpenEuler上的几个特性有冲突,待特性合入后,再合入社区补丁,解决dma访问失败的问题
同如下问题单:#I393DJ:【21.03】arm 物理机安装最小化,软件选择勾选所有插件,安装成功进入系统后输入reboot,日志出现call trace?from=project-issue
该问题是kernel5.5扩展了zone_dma时引入的一个问题;将dma拆成两个区域,导致申请不到连续内存;
社区上的解决方案:
http://lists.infradead.org/pipermail/linux-arm-kernel/2020-October/610562.html
因为跟当前OpenEuler上的几个特性有冲突,待特性合入后,再合入社区补丁,解决dma访问失败的问题
已合入OpenEuler版本
合入如下补丁解决:
1adebbd34f0f of: unittest: Fix build on architectures without CONFIG_OF_ADDRESS
ce259e55ae7a mm: Remove examples from enum zone_type comment
e196efb090ad arm64: mm: Set ZONE_DMA size based on early IORT scan
a06deaa7d600 arm64: mm: Set ZONE_DMA size based on devicetree's dma-ranges
b7795756afcd of: unittest: Add test for of_dma_get_max_cpu_address()
13dc4b774607 of/address: Introduce of_dma_get_max_cpu_address()
4395648c5284 arm64: mm: Move zone_dma_bits initialization into zone_sizes_init()
beb42167fd0b arm64: mm: Move reserve_crashkernel() into mem_init()
Sign in to comment