On Thu, 2018-05-03 at 18:23 +0000, Meneghini, John wrote: > > If the user passes flags == 0 to the new spdk_malloc() call, this could be > implemented by malloc() or equivalent behind the scenes, > > So, does this mean you’re willing to change all calls to malloc(size) with > spdk_malloc(size, 0, NULL, SPDK_ENV_SOCKET_ID_ANY, SPDK_MALLOC_SHARE)? > > Is that the plan? > Hi John, SPDK explicitly depends on POSIX throughout the code base. We do have an environment abstraction layer designed to make porting SPDK to various environments (i.e. away from DPDK) easier, but this only abstracts operations that are not available through standard POSIX calls. We're concerned that fully abstracting POSIX would introduce a significant barrier to entry for new contributors to the project, while only enabling one additional use case that we're aware of. I understand that this one use case happens to be yours, and so this is a challenge for you. In your code today, I assume you carry patches to replace the POSIX calls with your available alternatives. We've attempted to make carrying these patches reasonably easy by moving all of the POSIX includes into a single header (include/stdinc.h). Since you're already carrying those patches, can you simply choose a different name for your replacement for malloc/calloc? Thanks, Ben