From: Hemant Agrawal <hemant.agrawal@nxp.com>
To: Thomas Monjalon <thomas@monjalon.net>,
Olivier MATZ <olivier.matz@6wind.com>
Cc: <dev@dpdk.org>, <santosh.shukla@caviumnetworks.com>,
<jerin.jacob@caviumnetworks.com>
Subject: Re: [dpdk-dev] [PATCH 0/2] Multiple Pktmbuf mempool support
Date: Tue, 10 Oct 2017 19:51:01 +0530 [thread overview]
Message-ID: <c8726618-81bf-0791-e278-9f4e99c345f3@nxp.com> (raw)
In-Reply-To: <2060170.kPZRRlM5QW@xps>
On 10/10/2017 7:45 PM, Thomas Monjalon wrote:
> 25/09/2017 12:24, Olivier MATZ:
>> Hi Hemant,
>>
>> On Fri, Sep 22, 2017 at 12:43:36PM +0530, Hemant Agrawal wrote:
>>> On 7/4/2017 5:52 PM, Hemant Agrawal wrote:
>>>> This patch is in addition to the patch series[1] submitted by
>>>> Santosh to allow application to set mempool handle.
>>>>
>>>> The existing pktmbuf pool create api only support the internal use
>>>> of "CONFIG_RTE_MBUF_DEFAULT_MEMPOOL_OPS", which assumes that the HW
>>>> can only support one type of mempool for packet mbuf.
>>>>
>>>> There are multiple additional requirements.
>>>>
>>>> 1. The platform independent image detects the underlying bus,
>>>> based on the bus and resource detected, it will dynamically select
>>>> the default mempool. This need not to have the application knowlege.
>>>> e.g. DPAA2 and DPAA are two different NXP platforms, based on the
>>>> underlying platform the default ops for mbuf can be dpaa or dpaa2.
>>>> Application should work seemlessly whether it is running on dpaa or dpaa2.
>>>>
>>>> 2.Platform support more than one type of mempool for pktmbuf,
>>>> depend on the availability of resource, the driver can decide one
>>>> of the mempool for the current packet mbuf request.
>>>>
>>>> 3. In case of where application is providing the mempool, as proposed
>>>> in [1], the check preference logic will be bypassed and application
>>>> config will take priority.
>>>>
>>>> [1]Allow application set mempool handle
>>>> http://dpdk.org/ml/archives/dev/2017-June/067022.html
>>>>
>>>> Hemant Agrawal (2):
>>>> mempool: check the support for the given mempool
>>>> mbuf: add support for preferred mempool list
>>>>
>>>> config/common_base | 2 ++
>>>> lib/librte_mbuf/rte_mbuf.c | 28 +++++++++++++++++++++++-----
>>>> lib/librte_mempool/rte_mempool.h | 24 ++++++++++++++++++++++++
>>>> lib/librte_mempool/rte_mempool_ops.c | 32 ++++++++++++++++++++++++++++++++
>>>> 4 files changed, 81 insertions(+), 5 deletions(-)
>>>>
>>>
>>> Hi Olivier,
>>> Any opinion on this patchset?
>>
>> Sorry for the lack of feedback, for some reason I missed the initial
>> mails.
>>
>> I don't quite like the idea of having hardcoded config:
>> CONFIG_RTE_MBUF_BACKUP_MEMPOOL_OPS_1=""
>> CONFIG_RTE_MBUF_BACKUP_MEMPOOL_OPS_2=""
>>
>> Also, I'm a bit reserved about rte_mempool_ops_check_support(): it can
>> return "supported" but the creation of the pool can still fail later due
>> to the creation parameters (element count/size, mempool flags, ...).
>>
>> The ordering preference of these mempool ops may also depend on the
>> configuration (enabled ports for instance) or user choices.
>>
>> Let me propose you another approach to (I hope) solve your issue, based
>> on Santosh's patches [1].
>>
>> We can introduce a new helper that could be used by applications to
>> dynamically select the best mempool ops. It could be something similar
>> to the pseudo-code I've written in [3].
>>
>> // return an array pool ops name, ordered by preference
>> pool_ops = get_ordered_pool_ops_list()
>>
>> Then try to create the first pool, if it fails, try the next, until
>> it is succesful.
>>
>> That said, it is difficult to take the good decision inside
>> rte_pktmbuf_pool_create() because we don't have all the information.
>> Sergio and Jerin suggested to introduce a new argument ops_name to
>> rte_pktmbuf_pool_create() [2]. From what I remember, this is also
>> something you were in favor of, right?
>>
>> In that case, we can move the difficult task of choosing the
>> right mempool inside the application.
>>
>> Comments?
>
> I guess this discussion is obsolete since Santosh commit?
> http://dpdk.org/commit/a103a97e
>
>
Not yet. On the basis of our discussion with Olivier and Santosh
commit, we are working out a way, which solves our issue.
We will close on it in next few days.
next prev parent reply other threads:[~2017-10-10 14:21 UTC|newest]
Thread overview: 112+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-07-04 12:22 Hemant Agrawal
2017-07-04 12:22 ` [dpdk-dev] [PATCH 1/2] mempool: check the support for the given mempool Hemant Agrawal
2017-07-04 12:22 ` [dpdk-dev] [PATCH 2/2] mbuf: add support for preferred mempool list Hemant Agrawal
2017-09-22 7:13 ` [dpdk-dev] [PATCH 0/2] Multiple Pktmbuf mempool support Hemant Agrawal
2017-09-25 10:24 ` Olivier MATZ
2017-10-10 14:15 ` Thomas Monjalon
2017-10-10 14:21 ` Hemant Agrawal [this message]
2017-12-15 10:24 ` [dpdk-dev] [PATCH 0/2] Dynamic HW Mempool Detection Support Hemant Agrawal
2017-12-15 10:24 ` [dpdk-dev] [PATCH 1/2] mbuf: update default Mempool ops with HW active pool Hemant Agrawal
2017-12-15 15:52 ` Stephen Hemminger
2017-12-18 9:26 ` Hemant Agrawal
2017-12-18 8:55 ` Jerin Jacob
2017-12-18 9:36 ` Hemant Agrawal
2017-12-22 14:59 ` Olivier MATZ
2017-12-28 12:07 ` Hemant Agrawal
2018-01-10 12:49 ` Hemant Agrawal
2017-12-22 14:41 ` Olivier MATZ
2017-12-15 10:24 ` [dpdk-dev] [PATCH 2/2] dpaa2: register dpaa2 mempool ops as active mempool Hemant Agrawal
2017-12-18 8:57 ` Jerin Jacob
2017-12-18 9:25 ` Hemant Agrawal
2018-01-15 6:11 ` [dpdk-dev] [PATCH v2 0/5] Dynamic HW Mempool Detection Support Hemant Agrawal
2018-01-15 6:11 ` [dpdk-dev] [PATCH v2 1/5] eal: prefix mbuf pool ops name with user defined Hemant Agrawal
2018-01-15 6:11 ` [dpdk-dev] [PATCH v2 2/5] eal: add platform mempool ops name in internal config Hemant Agrawal
2018-01-15 12:24 ` Jerin Jacob
2018-01-15 14:31 ` Hemant Agrawal
2018-01-15 16:26 ` Jerin Jacob
2018-01-16 15:04 ` Olivier Matz
2018-01-16 15:08 ` Jerin Jacob
2018-01-15 6:11 ` [dpdk-dev] [PATCH v2 3/5] mbuf: support register mempool Hw ops name APIs Hemant Agrawal
2018-01-15 11:41 ` Jerin Jacob
2018-01-15 14:24 ` Hemant Agrawal
2018-01-15 14:37 ` Jerin Jacob
2018-01-15 12:36 ` Jerin Jacob
2018-01-16 15:09 ` Olivier Matz
2018-01-15 6:11 ` [dpdk-dev] [PATCH v2 4/5] mbuf: pktmbuf pool create helper for specific mempool ops Hemant Agrawal
2018-01-15 12:31 ` Jerin Jacob
2018-01-15 14:32 ` Hemant Agrawal
2018-01-15 6:11 ` [dpdk-dev] [PATCH v2 5/5] mbuf: add user command line config mempools ops API Hemant Agrawal
2018-01-15 12:29 ` Jerin Jacob
2018-01-15 14:35 ` Hemant Agrawal
2018-01-15 16:23 ` Jerin Jacob
2018-01-16 15:01 ` [dpdk-dev] [PATCH v2 0/5] Dynamic HW Mempool Detection Support Olivier Matz
2018-01-18 11:47 ` Hemant Agrawal
2018-01-18 13:42 ` Olivier Matz
2018-01-18 13:26 ` [dpdk-dev] [PATCH v3 0/7] " Hemant Agrawal
2018-01-18 13:26 ` [dpdk-dev] [PATCH v3 1/7] eal: prefix mbuf pool ops name with user defined Hemant Agrawal
2018-01-19 10:01 ` Olivier Matz
2018-01-18 13:26 ` [dpdk-dev] [PATCH v3 2/7] eal: add API to set user default mbuf mempool ops Hemant Agrawal
2018-01-19 10:01 ` Olivier Matz
2018-01-19 12:31 ` Hemant Agrawal
2018-01-19 12:43 ` Olivier Matz
2018-01-18 13:26 ` [dpdk-dev] [PATCH v3 3/7] mbuf: add pool ops name selection API helpers Hemant Agrawal
2018-01-19 10:01 ` Olivier Matz
2018-01-19 12:41 ` Hemant Agrawal
2018-01-19 13:10 ` Olivier Matz
2018-01-18 13:26 ` [dpdk-dev] [PATCH v3 4/7] mbuf: pktmbuf pool create helper for specific mempool ops Hemant Agrawal
2018-01-18 13:26 ` [dpdk-dev] [PATCH v3 5/7] app/testpmd: set preferred mempool as default pktpool Hemant Agrawal
2018-01-19 10:01 ` Olivier Matz
2018-01-18 13:26 ` [dpdk-dev] [PATCH v3 6/7] dpaa2: register dpaa2 as platform HW mempool on runtime Hemant Agrawal
2018-01-18 13:26 ` [dpdk-dev] [PATCH v3 7/7] dpaa: register dpaa " Hemant Agrawal
2018-01-19 16:33 ` [dpdk-dev] [PATCH v4 0/7] Dynamic HW Mempool Detection Support Hemant Agrawal
2018-01-19 16:33 ` [dpdk-dev] [PATCH v4 1/7] eal: prefix mbuf pool ops name with user defined Hemant Agrawal
2018-01-19 16:33 ` [dpdk-dev] [PATCH v4 2/7] mbuf: maintain user and compile time mempool ops name Hemant Agrawal
2018-01-19 16:33 ` [dpdk-dev] [PATCH v4 3/7] mbuf: add pool ops name selection API helpers Hemant Agrawal
2018-01-19 16:33 ` [dpdk-dev] [PATCH v4 4/7] mbuf: pktmbuf pool create helper for specific mempool ops Hemant Agrawal
2018-01-19 16:33 ` [dpdk-dev] [PATCH v4 5/7] app/testpmd: set preferred mempool as default pktpool Hemant Agrawal
2018-01-19 16:33 ` [dpdk-dev] [PATCH v4 6/7] dpaa: register dpaa as platform HW mempool on runtime Hemant Agrawal
2018-01-19 16:33 ` [dpdk-dev] [PATCH v4 7/7] dpaa2: register dpaa2 " Hemant Agrawal
2018-01-20 6:15 ` [dpdk-dev] [PATCH v5 0/7] Dynamic HW Mempool Detection Support Hemant Agrawal
2018-01-20 6:15 ` [dpdk-dev] [PATCH v5 1/7] eal: prefix mbuf pool ops name with user defined Hemant Agrawal
2018-01-22 13:23 ` Olivier Matz
2018-01-22 13:24 ` Hemant Agrawal
2018-01-20 6:15 ` [dpdk-dev] [PATCH v5 2/7] mbuf: maintain user and compile time mempool ops name Hemant Agrawal
2018-01-22 13:23 ` Olivier Matz
2018-01-20 6:15 ` [dpdk-dev] [PATCH v5 3/7] mbuf: add pool ops name selection API helpers Hemant Agrawal
2018-01-22 13:23 ` Olivier Matz
2018-01-20 6:15 ` [dpdk-dev] [PATCH v5 4/7] mbuf: pktmbuf pool create helper for specific mempool ops Hemant Agrawal
2018-01-22 13:24 ` Olivier Matz
2018-01-20 6:15 ` [dpdk-dev] [PATCH v5 5/7] app/testpmd: set preferred mempool as default pktpool Hemant Agrawal
2018-01-22 13:25 ` Olivier Matz
2018-01-20 6:15 ` [dpdk-dev] [PATCH v5 6/7] dpaa: register dpaa as platform HW mempool on runtime Hemant Agrawal
2018-01-20 6:15 ` [dpdk-dev] [PATCH v5 7/7] dpaa2: register dpaa2 " Hemant Agrawal
2018-01-22 13:51 ` [dpdk-dev] [PATCH v6 0/7] Dynamic HW Mempool Detection Support Hemant Agrawal
2018-01-22 13:51 ` [dpdk-dev] [PATCH v6 1/7] eal: prefix mbuf pool ops name with user defined Hemant Agrawal
2018-01-22 14:43 ` santosh
2018-01-22 13:51 ` [dpdk-dev] [PATCH v6 2/7] mbuf: maintain user and compile time mempool ops name Hemant Agrawal
2018-01-22 14:47 ` santosh
2018-01-25 22:02 ` Thomas Monjalon
2018-01-26 5:10 ` Hemant Agrawal
2018-01-22 13:51 ` [dpdk-dev] [PATCH v6 3/7] mbuf: add pool ops name selection API helpers Hemant Agrawal
2018-01-22 14:49 ` santosh
2018-01-25 22:01 ` Thomas Monjalon
2018-01-26 5:10 ` Hemant Agrawal
2018-01-22 13:51 ` [dpdk-dev] [PATCH v6 4/7] mbuf: pktmbuf pool create helper for specific mempool ops Hemant Agrawal
2018-01-22 14:51 ` santosh
2018-01-22 13:51 ` [dpdk-dev] [PATCH v6 5/7] app/testpmd: set preferred mempool as default pktpool Hemant Agrawal
2018-01-22 14:52 ` santosh
2018-01-25 22:04 ` Thomas Monjalon
2018-01-26 5:11 ` Hemant Agrawal
2018-01-26 7:43 ` Thomas Monjalon
2018-01-22 13:51 ` [dpdk-dev] [PATCH v6 6/7] dpaa: register dpaa as platform HW mempool on runtime Hemant Agrawal
2018-01-22 13:51 ` [dpdk-dev] [PATCH v6 7/7] dpaa2: register dpaa2 " Hemant Agrawal
2018-01-29 8:10 ` [dpdk-dev] [PATCH v7 0/7] Dynamic HW Mempool Detection Support Hemant Agrawal
2018-01-29 8:10 ` [dpdk-dev] [PATCH v7 1/7] eal: prefix mbuf pool ops name with user defined Hemant Agrawal
2018-01-29 8:10 ` [dpdk-dev] [PATCH v7 2/7] mbuf: maintain user and compile time mempool ops name Hemant Agrawal
2018-01-29 8:10 ` [dpdk-dev] [PATCH v7 3/7] mbuf: add pool ops name selection API helpers Hemant Agrawal
2018-01-29 8:44 ` Andrew Rybchenko
2018-01-29 8:10 ` [dpdk-dev] [PATCH v7 4/7] mbuf: pktmbuf pool create helper for specific mempool ops Hemant Agrawal
2018-01-29 8:10 ` [dpdk-dev] [PATCH v7 5/7] app/testpmd: add debug to print preferred " Hemant Agrawal
2018-01-29 8:10 ` [dpdk-dev] [PATCH v7 6/7] dpaa: register dpaa as platform HW mempool on runtime Hemant Agrawal
2018-01-29 8:10 ` [dpdk-dev] [PATCH v7 7/7] dpaa2: register dpaa2 " Hemant Agrawal
2018-01-29 18:03 ` [dpdk-dev] [PATCH v7 0/7] Dynamic HW Mempool Detection Support Thomas Monjalon
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=c8726618-81bf-0791-e278-9f4e99c345f3@nxp.com \
--to=hemant.agrawal@nxp.com \
--cc=dev@dpdk.org \
--cc=jerin.jacob@caviumnetworks.com \
--cc=olivier.matz@6wind.com \
--cc=santosh.shukla@caviumnetworks.com \
--cc=thomas@monjalon.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).