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 <arybche...@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

Reply via email to