On 24-Mar-21 7:32 PM, Dmitry Kozlyuk wrote:
rte_eal_memory_detach() did not account for cases where multi-process mode is disabled: --in-memory and --no-shconf. This resulted in unmapping memory that had not been mapped, which caused errors:EAL: Could not unmap memory: No error (Windows) EAL: Cannot munmap(0x1d47f40, 0x7000): Invalid argument (Linux) Confusing "No error" was caused by using errno instead of rte_errno set by rte_mem_unmap(). Skip detaching memory altogether when --in-memory is specified. Skip unmapping configuration when it's not shared. Fix and add error handling to produce proper log messages. Fixes: dfbc61a2f9a6 ("mem: detach memsegs on cleanup") Cc: Anatoly Burakov <[email protected]> Reported-by: Jie Zhou <[email protected]> Suggested-by: David Marchand <[email protected]> Signed-off-by: Dmitry Kozlyuk <[email protected]> ---
LGTM Acked-by: Anatoly Burakov <[email protected]> -- Thanks, Anatoly

