460354cd4e
Currently, populate_virt will check if mempool is already populated.
This will cause inability to reserve multi-chunk mempools if
contiguous memory is not a hard requirement, because if allocating
all-contiguous memory fails, mempool will retry with virtual addresses
and will call populate_virt. It seems that the original code never
anticipated more than one non-physically contiguous area.
Fix it by removing the check in populate virt. populate_anon() function
calls populate_virt() also, and it can be reasonably inferred that it is
expecting that virtual area is not already populated. Even though a
similar check is already in place there, also add the check that was
part of populate_virt() just in case.
Fixes:
|
||
---|---|---|
.. | ||
Makefile | ||
meson.build | ||
rte_mempool_ops_default.c | ||
rte_mempool_ops.c | ||
rte_mempool_version.map | ||
rte_mempool.c | ||
rte_mempool.h |