From: "Kundapura, Ganapati" <ganapati.kundapura@intel.com>
To: Jerin Jacob <jerinjacobk@gmail.com>
Cc: "Jayatheerthan, Jay" <jay.jayatheerthan@intel.com>,
dpdk-dev <dev@dpdk.org>,
Pavan Nikhilesh <pbhagavatula@marvell.com>
Subject: Re: [dpdk-dev] [PATCH v3 1/3] eventdev: add rx queue info get api
Date: Thu, 16 Sep 2021 08:35:34 +0000 [thread overview]
Message-ID: <CO1PR11MB4882FE4EB6DBA9FB653EB4B887DC9@CO1PR11MB4882.namprd11.prod.outlook.com> (raw)
In-Reply-To: <CALBAE1OBE997=kpM1FTHWqXhVu-BQeVqVA6KzwxDGMsMC0bfYQ@mail.gmail.com>
Hi Jerin,
> -----Original Message-----
> From: Jerin Jacob <jerinjacobk@gmail.com>
> Sent: 16 September 2021 10:13
> To: Kundapura, Ganapati <ganapati.kundapura@intel.com>
> Cc: Jayatheerthan, Jay <jay.jayatheerthan@intel.com>; dpdk-dev
> <dev@dpdk.org>; Pavan Nikhilesh <pbhagavatula@marvell.com>
> Subject: Re: [PATCH v3 1/3] eventdev: add rx queue info get api
>
> ()
>
> On Wed, Sep 8, 2021 at 1:51 PM Kundapura, Ganapati
> <ganapati.kundapura@intel.com> wrote:
> >
> > Hi Jerin,
> >
> > > -----Original Message-----
> > > From: Jerin Jacob <jerinjacobk@gmail.com>
> > > Sent: 07 September 2021 15:07
> > > To: Kundapura, Ganapati <ganapati.kundapura@intel.com>
> > > Cc: Jayatheerthan, Jay <jay.jayatheerthan@intel.com>; dpdk-dev
> > > <dev@dpdk.org>; Pavan Nikhilesh <pbhagavatula@marvell.com>
> > > Subject: Re: [PATCH v3 1/3] eventdev: add rx queue info get api
> > >
> > > On Tue, Sep 7, 2021 at 2:20 PM Kundapura, Ganapati
> > > <ganapati.kundapura@intel.com> wrote:
> > > >
> > > >
> > > >
> > > > > -----Original Message-----
> > > > > From: Jerin Jacob <jerinjacobk@gmail.com>
> > > > > Sent: 07 September 2021 13:42
> > > > > To: Kundapura, Ganapati <ganapati.kundapura@intel.com>
> > > > > Cc: Jayatheerthan, Jay <jay.jayatheerthan@intel.com>; dpdk-dev
> > > > > <dev@dpdk.org>; Pavan Nikhilesh <pbhagavatula@marvell.com>
> > > > > Subject: Re: [PATCH v3 1/3] eventdev: add rx queue info get api
> > > > >
> > > > > in
> > > > >
> > > > > On Tue, Sep 7, 2021 at 12:15 PM Ganapati Kundapura
> > > > > <ganapati.kundapura@intel.com> wrote:
> > > > > >
> > > > > > Added rte_event_eth_rx_adapter_queue_info_get() API to get rx
> > > > > > queue information - event queue identifier, flags for handling
> > > > > > received packets, schedular type, event priority, polling
> > > > > > frequency of the receive queue and flow identifier in
> > > > > > rte_event_eth_rx_adapter_queue_info structure
> > > > > >
> > > > > > Signed-off-by: Ganapati Kundapura
> > > > > > <ganapati.kundapura@intel.com>
> > > > > >
> > > > > > ---
> > > > > > v3:
> > > > > > * Split single patch into implementaion, test and document
> updation
> > > > > > patches separately
> > > > >
> > > > > > +struct rte_event_eth_rx_adapter_queue_info;
> > > > > > +
> > > > > > +/**
> > > > > > + * Retrieve information about Rx queue. This callback is
> > > > > > +invoked if
> > > > > > + * the caps returned from the
> > > > > > +eventdev_eth_rx_adapter_caps_get(,
> > > > > > +eth_port_id)
> > > > > > + * has RTE_EVENT_ETH_RX_ADAPTER_CAP_INTERNAL_PORT set.
> > > > >
> > > > > It will useful for
> !RTE_EVENT_ETH_RX_ADAPTER_CAP_INTERNAL_PORT
> > > case
> > > > > too.
> > > > >
> > >
> > >
> > >
> > > Missed this comment in v4
> > Sorry I missed these comments
> >
> > rte_event_eth_rx_adapter_queue_info_get() calls PMD callback if
> > internal port cap is set, otherwise it implements to return the queue_info.
> > PMD callback is for internal port and queue_info_get() api implements
> > for non internal port
>
> This API will be useful for
> !RTE_EVENT_ETH_RX_ADAPTER_CAP_INTERNAL_PORT case too. In order to
> use this in a generic way, I suggest in following way,
>
> In the rte_event_eth_rx_adapter_queue_add() stores this config in
> common code(i.e
> file: ./lib/eventdev/rte_event_eth_rx_adapter.c and
> rte_event_eth_rx_adapter_queue_add() function) as named memzone or
> so.
>
> Later when rte_event_eth_rx_adapter_queue_conf_get() called, the config
> can be retrived through named memzone lookup and have PMD specific
> callback like your patch for overriding any parameter as neeed. i.e If PMD
> callback is NULL, Application should get the config struct as provided in
> rte_event_eth_rx_adapter_queue_add() with
> rte_event_eth_rx_adapter_queue_conf_get().
>
See below updated implementation
que_conf_get() {
memzone lookup
return error on failure
Fill queue config info in queue conf structure
if CAP_INTERNAL_PORT set and PMD call back is non NULL
call the PMD callback which overrides the info in queue conf structure
return 0; // queue config info is returned in passed queue_conf structure
}
rx adapter structures are allocated in memzone, rx_queue_add() stores
the queue config info in named memzone and queue_conf_get() returns queue config
info from the named memzone.
Please let me know your inputs on this
>
>
> >
> > > > > > diff --git a/lib/eventdev/rte_event_eth_rx_adapter.h
> > > > > > b/lib/eventdev/rte_event_eth_rx_adapter.h
> > > > > > index 182dd2e..75c0010 100644
> > > > > > --- a/lib/eventdev/rte_event_eth_rx_adapter.h
> > > > > > +++ b/lib/eventdev/rte_event_eth_rx_adapter.h
> > > > > > @@ -33,6 +33,7 @@
> > > > > > * - rte_event_eth_rx_adapter_stop()
> > > > > > * - rte_event_eth_rx_adapter_stats_get()
> > > > > > * - rte_event_eth_rx_adapter_stats_reset()
> > > > > > + * - rte_event_eth_rx_adapter_queue_info_get()
> > > > > > *
> > > > > > * The application creates an ethernet to event adapter using
> > > > > > * rte_event_eth_rx_adapter_create_ext() or
> > > > > > rte_event_eth_rx_adapter_create() @@ -140,6 +141,56 @@
> typedef
> > > int
> > > > > (*rte_event_eth_rx_adapter_conf_cb) (uint8_t id, uint8_t dev_id,
> > > > > > void *arg);
> > > > > >
> > > > > > /**
> > > > > > + * Rx queue info
> > > > > > + */
> > > > > > +struct rte_event_eth_rx_adapter_queue_info {
> > > > >
> > > > > Can we avoid the duplication of this structure and use
> > > > > rte_event_eth_rx_adapter_queue_conf instead.
> > > > >
> > Agree
> > > > > API can be rte_event_eth_rx_adapter_queue_conf_get() to align
> > > > > the structure.
> > Agree
> > > > >
> > > > > Also instead of every driver duplicating this code, How about
> > > > > - common code stores the config in
> > > > > rte_event_eth_rx_adapter_queue_add()
> > > > > - common code stores the config in
> > > > > rte_event_eth_rx_adapter_queue_conf_get()
> >
> > queue_add() stores the config in dev_info and queue_conf_get() retrieves
> the config from dev_info.
> > Please clarify on common code to store and retrieve queue conf?
>
>
> See above.
>
>
> > > > > - Addtional PMD level API can be given incase, something needs
> > > > > to overridden by Adapter.
> > >
> > Existing PMD callbacks like queue_add, queue_del, adapter_start,
> > adapter_stop etc doesn't have any additional PMD level api.
> > queue_info_get PMD callback is also similar.
>
>
> See above.
>
>
>
> >
> > >
> > > Missed addressing this comment in v4.
next prev parent reply other threads:[~2021-09-16 8:35 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-09-07 5:36 [dpdk-dev] [PATCH] " Ganapati Kundapura
2021-09-07 6:25 ` Jayatheerthan, Jay
2021-09-07 6:39 ` Kundapura, Ganapati
2021-09-07 6:45 ` [dpdk-dev] [PATCH v3 1/3] " Ganapati Kundapura
2021-09-07 6:45 ` [dpdk-dev] [PATCH v3 2/3] test/event: Add rx queue info get test in rx adapter autotest Ganapati Kundapura
2021-09-07 6:45 ` [dpdk-dev] [PATCH v3 3/3] doc: add rx queue get api detail in rx adapter guide Ganapati Kundapura
2021-09-07 8:12 ` [dpdk-dev] [PATCH v3 1/3] eventdev: add rx queue info get api Jerin Jacob
2021-09-07 8:50 ` Kundapura, Ganapati
2021-09-07 9:37 ` Jerin Jacob
2021-09-08 8:21 ` Kundapura, Ganapati
2021-09-16 4:42 ` Jerin Jacob
2021-09-16 8:35 ` Kundapura, Ganapati [this message]
2021-09-16 8:47 ` Jerin Jacob
2021-09-16 10:31 ` Kundapura, Ganapati
2021-09-07 8:49 ` [dpdk-dev] [PATCH v4 1/2] " Ganapati Kundapura
2021-09-07 8:49 ` [dpdk-dev] [PATCH v4 2/2] test/event: Add rx queue info get test in rx adapter autotest Ganapati Kundapura
2021-09-07 8:59 ` [dpdk-dev] [PATCH v4 1/2] eventdev: add rx queue info get api Ganapati Kundapura
2021-09-07 8:59 ` [dpdk-dev] [PATCH v4 2/2] test/event: Add rx queue info get test in rx adapter autotest Ganapati Kundapura
2021-09-12 15:01 ` [dpdk-dev] [PATCH v4 1/2] eventdev: add rx queue conf get api Ganapati Kundapura
2021-09-12 15:01 ` [dpdk-dev] [PATCH v4 2/2] test/event: Add rx queue conf get test in rx adapter autotest Ganapati Kundapura
2021-09-12 15:58 ` [dpdk-dev] [PATCH v4 1/2] eventdev: add rx queue conf get api Ganapati Kundapura
2021-09-12 15:58 ` [dpdk-dev] [PATCH v4 2/2] test/event: Add rx queue conf get test in rx adapter autotest Ganapati Kundapura
2021-09-16 11:56 ` [dpdk-dev] [PATCH v5 1/2] eventdev: add rx queue conf get api Ganapati Kundapura
2021-09-16 11:56 ` [dpdk-dev] [PATCH v5 2/2] test/event: Add rx queue conf get test in rx adapter autotest Ganapati Kundapura
2021-09-16 12:51 ` [dpdk-dev] [PATCH v5 1/2] eventdev: add rx queue conf get api Ganapati Kundapura
2021-09-16 12:51 ` [dpdk-dev] [PATCH v5 2/2] test/event: Add rx queue conf get test in rx adapter autotest Ganapati Kundapura
2021-09-28 9:35 ` Jayatheerthan, Jay
2021-09-20 6:30 ` [dpdk-dev] [PATCH v5 1/2] eventdev: add rx queue conf get api Jerin Jacob
2021-09-20 9:13 ` Kundapura, Ganapati
2021-09-22 11:18 ` Kundapura, Ganapati
2021-09-24 7:49 ` Jayatheerthan, Jay
2021-09-28 9:34 ` Jayatheerthan, Jay
2021-09-29 7:36 ` Jerin Jacob
2021-09-07 6:39 [dpdk-dev] [PATCH v3 1/3] eventdev: add rx queue info " Ganapati Kundapura
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=CO1PR11MB4882FE4EB6DBA9FB653EB4B887DC9@CO1PR11MB4882.namprd11.prod.outlook.com \
--to=ganapati.kundapura@intel.com \
--cc=dev@dpdk.org \
--cc=jay.jayatheerthan@intel.com \
--cc=jerinjacobk@gmail.com \
--cc=pbhagavatula@marvell.com \
/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).