admin管理员组文章数量:1387448
When memory-hotplugged, new memblock nodes will be added by using standard Linux kernel API:
*add_memory_driver_managed() -> add_memory_resource() -> memblock_add_node() -> memblock_add_range(&memblock.memory, base, size, nid, flags) -> memblock_insert_region(&memblock.memory)*
At this time dm_verity driver, which allocates/uses memory, have to check if its allocated memory is valid or not by using standard Linux kernel API:
* verity_work() -> sg_init_one() -> sg_set_buf() -> virt_addr_valid() -> pfn_is_map_memory() -> memblock_is_map_memory() -> memblock_search(&memblock.memory, addr);*
Due to the competition for memblock, there will trigger BUG_ON
in "sg_set_buf()"
of dm_verity
driver.
Is this a kenel mainline problem or is add_memory_driver_managed
used incorrectly?
Find the root cause.
本文标签: linuxsgsetbuf reports an error when hotplugging memoryStack Overflow
版权声明:本文标题:linux - sg_set_buf reports an error when hot-plugging memory - Stack Overflow 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.betaflare.com/web/1744523882a2610625.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论