From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Burakov, Anatoly" Subject: Re: [PATCH v1 3/9] mempool: remove callback to get capabilities Date: Wed, 14 Mar 2018 14:40:24 +0000 Message-ID: References: <1516713372-10572-1-git-send-email-arybchenko@solarflare.com> <1520696382-16400-1-git-send-email-arybchenko@solarflare.com> <1520696382-16400-4-git-send-email-arybchenko@solarflare.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Cc: Olivier MATZ To: Andrew Rybchenko , dev@dpdk.org Return-path: Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by dpdk.org (Postfix) with ESMTP id 58514354D for ; Wed, 14 Mar 2018 15:40:27 +0100 (CET) In-Reply-To: <1520696382-16400-4-git-send-email-arybchenko@solarflare.com> Content-Language: en-US List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" 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 > --- 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