SG_SET_BUF meldet einen Fehler beim Hot-Plugging-Speicher
Posted: 18 Mar 2025, 14:34
Wenn Speicherhotplugged mit der Verwendung von Standard-Linux-Kernel-API mit Standard-Linux-Kernel-API hinzugefügt wird: < /p>
Zu diesem Zeitpunkt muss der DM_VERITY -Treiber, der Speicher zuteilt/verwendet, überprüfen, ob der zugewiesene Speicher gültig ist oder nicht, indem die Standard -Linux -Kernel -API verwendet wird:
Aufgrund der Konkurrenz um memblock wird in "sg_set_buf ()" von dm_verity treiber ausgelöst. Ursache.
Code: Select all
*add_memory_driver_managed() -> add_memory_resource() -> memblock_add_node() -> memblock_add_range(&memblock.memory, base, size, nid, flags) -> memblock_insert_region(&memblock.memory)*
Code: Select all
* verity_work() -> sg_init_one() -> sg_set_buf() -> virt_addr_valid() -> pfn_is_map_memory() -> memblock_is_map_memory() -> memblock_search(&memblock.memory, addr);*