[PATCH 1/6] eal: add static per-lcore memory allocation facility
Morten Brørup
mb at smartsharesystems.com
Wed Sep 11 12:32:12 CEST 2024
> +static void *lcore_buffer;
[...]
> + lcore_buffer = aligned_alloc(RTE_CACHE_LINE_SIZE,
> + LCORE_BUFFER_SIZE);
Since lcore_buffer is never freed again, it is easy to support Windows:
#ifdef RTE_EXEC_ENV_WINDOWS
#include <malloc.h>
#endif
#ifndef RTE_EXEC_ENV_WINDOWS
lcore_buffer = aligned_alloc(RTE_CACHE_LINE_SIZE,
LCORE_BUFFER_SIZE);
#else
/* Never freed again, so don't worry about _aligned_free(). */
lcore_buffer = _aligned_malloc(LCORE_BUFFER_SIZE,
RTE_CACHE_LINE_SIZE);
#endif
Ref:
https://learn.microsoft.com/en-us/cpp/c-runtime-library/reference/aligned-malloc?view=msvc-170
NB: Note the opposite parameter order.
More information about the dev
mailing list