[dpdk-dev] [PATCH v1 3/9] mempool: remove callback to get capabilities

Burakov, Anatoly anatoly.burakov at intel.com
Wed Mar 14 15:40:24 CET 2018


On 10-Mar-18 3:39 PM, Andrew Rybchenko wrote:
> The callback was introduced to let generic code to know octeontx
> mempool driver requirements to use single physically contiguous
> memory chunk to store all objects and align object address to
> total object size. Now these requirements are met using a new
> callbacks to calculate required memory chunk size and to populate
> objects using provided memory chunk.
> 
> These capability flags are not used anywhere else.
> 
> Restricting capabilities to flags is not generic and likely to
> be insufficient to describe mempool driver features. If required
> in the future, API which returns structured information may be
> added.
> 
> Signed-off-by: Andrew Rybchenko <arybchenko at solarflare.com>
> ---

Just a general comment - it is not enough to describe minimum memchunk 
requirements. With memory hotplug patchset that's hopefully getting 
merged in 18.05, memzones will no longer be guaranteed to be 
IOVA-contiguous. So, if a driver requires its mempool to not only be 
populated from a single memzone, but a single *physically contiguous* 
memzone, going by only callbacks will not do, because whether or not 
something should be a single memzone says nothing about whether this 
memzone has to also be IOVA-contiguous.

So i believe this needs to stay in one form or another.

(also it would be nice to have a flag that a user could pass to 
mempool_create that would force memzone reservation be IOVA-contiguous, 
but that's a topic for another conversation. prime user for this would 
be KNI.)

-- 
Thanks,
Anatoly


More information about the dev mailing list