DPDK patches and discussions
 help / color / mirror / Atom feed
From: Jerin Jacob <jerin.jacob@caviumnetworks.com>
To: "Eads, Gage" <gage.eads@intel.com>
Cc: "dev@dpdk.org" <dev@dpdk.org>,
	"thomas.monjalon@6wind.com" <thomas.monjalon@6wind.com>,
	"Richardson, Bruce" <bruce.richardson@intel.com>,
	"Van Haaren, Harry" <harry.van.haaren@intel.com>,
	"hemant.agrawal@nxp.com" <hemant.agrawal@nxp.com>,
	"nipun.gupta@nxp.com" <nipun.gupta@nxp.com>,
	"santosh.shukla@caviumnetworks.com"
	<santosh.shukla@caviumnetworks.com>
Subject: Re: [dpdk-dev] [PATCH 19/39] event/octeontx: add support worker dequeue function
Date: Tue, 21 Mar 2017 08:51:03 +0530	[thread overview]
Message-ID: <20170321032102.zggcunadbso6jf4s@localhost.localdomain> (raw)
In-Reply-To: <9184057F7FC11744A2107296B6B8EB1E01E8022D@FMSMSX108.amr.corp.intel.com>

On Mon, Mar 20, 2017 at 09:11:35PM +0000, Eads, Gage wrote:
> Hi Jerin,

Hi Gage,

> 
> >  -----Original Message-----
> >  From: Jerin Jacob [mailto:jerin.jacob@caviumnetworks.com]
> >  Sent: Friday, March 3, 2017 11:28 AM
> >  To: dev@dpdk.org
> >  Cc: thomas.monjalon@6wind.com; Richardson, Bruce
> >  <bruce.richardson@intel.com>; Van Haaren, Harry
> >  <harry.van.haaren@intel.com>; hemant.agrawal@nxp.com; Eads, Gage
> >  <gage.eads@intel.com>; nipun.gupta@nxp.com;
> >  santosh.shukla@caviumnetworks.com; Jerin Jacob
> >  <jerin.jacob@caviumnetworks.com>
> >  Subject: [dpdk-dev] [PATCH 19/39] event/octeontx: add support worker
> >  dequeue function
> >  
> >  If device is configured with RTE_EVENT_DEV_CFG_PER_DEQUEUE_TIMEOUT
> >  configuration then use different fast path dequeue handler to wait till
> >  requested amount of nanosecond if the event is not available.
> >  
> >  Signed-off-by: Jerin Jacob <jerin.jacob@caviumnetworks.com>
> >  Signed-off-by: Santosh Shukla <santosh.shukla@caviumnetworks.com>
> >  ---
> >   drivers/event/octeontx/ssovf_evdev.h  |  7 +++++
> >  drivers/event/octeontx/ssovf_worker.c | 52
> >  +++++++++++++++++++++++++++++++++++
> >   2 files changed, 59 insertions(+)
> >  
> >  diff --git a/drivers/event/octeontx/ssovf_evdev.h
> >  b/drivers/event/octeontx/ssovf_evdev.h
> >  index fac42f5..2cd9147 100644
> >  --- a/drivers/event/octeontx/ssovf_evdev.h
> >  +++ b/drivers/event/octeontx/ssovf_evdev.h
> >  @@ -190,5 +190,12 @@ ssovf_pmd_priv(const struct rte_eventdev *eventdev)
> >  uint16_t ssows_enq(void *port, const struct rte_event *ev);  uint16_t
> >  ssows_enq_burst(void *port,
> >   		const struct rte_event ev[], uint16_t nb_events);
> >  +uint16_t ssows_deq(void *port, struct rte_event *ev, uint64_t
> >  +timeout_ticks); uint16_t ssows_deq_burst(void *port, struct rte_event ev[],
> >  +		uint16_t nb_events, uint64_t timeout_ticks); uint16_t
> >  +ssows_deq_timeout(void *port, struct rte_event *ev,
> >  +		uint64_t timeout_ticks);
> >  +uint16_t ssows_deq_timeout_burst(void *port, struct rte_event ev[],
> >  +		uint16_t nb_events, uint64_t timeout_ticks);
> >  
> >   #endif /* __SSOVF_EVDEV_H__ */
> >  diff --git a/drivers/event/octeontx/ssovf_worker.c
> >  b/drivers/event/octeontx/ssovf_worker.c
> >  index 7ec78b4..e0d17b9 100644
> >  --- a/drivers/event/octeontx/ssovf_worker.c
> >  +++ b/drivers/event/octeontx/ssovf_worker.c
> >  @@ -226,6 +226,58 @@ ssows_release_event(struct ssows *ws)  }
> >  
> >   force_inline uint16_t __hot
> >  +ssows_deq(void *port, struct rte_event *ev, uint64_t timeout_ticks) {
> >  +	struct ssows *ws = port;
> >  +
> >  +	RTE_SET_USED(timeout_ticks);
> >  +
> >  +	ssows_swtag_wait(ws);
> >  +	if (ws->swtag_req) {
> >  +		ws->swtag_req = 0;
> >  +		return 1;
> >  +	} else {
> >  +		return ssows_get_work(ws, ev);
> >  +	}
> >  +}
> 
> Should ssows_deq() fill in the ev structure when swtag_req is 1? I see that the flag is set when an event is forwarded to the same queue/group it was received on -- is the expectation that ev will point to that forwarded event, such that the user receives it when they next dequeue an event?

Yes. The user receives the same event.HW supports event pinning to lower the
latency.


> 
> Thanks,
> Gage
> 

  reply	other threads:[~2017-03-21  3:21 UTC|newest]

Thread overview: 135+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-03-03 17:27 [dpdk-dev] Cavium OCTEONTX ssovf eventdev PMD Jerin Jacob
2017-03-03 17:27 ` [dpdk-dev] [PATCH 01/39] eventdev: update PMD dequeue timeout conversion callback Jerin Jacob
2017-03-15 17:27   ` Van Haaren, Harry
2017-03-16  8:30     ` Jerin Jacob
2017-03-23 10:11     ` Jerin Jacob
2017-03-03 17:27 ` [dpdk-dev] [PATCH 02/39] app/test: fix eventdev reconfigure test Jerin Jacob
2017-03-15 17:28   ` Van Haaren, Harry
2017-03-23 10:11     ` Jerin Jacob
2017-03-03 17:27 ` [dpdk-dev] [PATCH 03/39] mk: handle intra drivers dependencies for shared build Jerin Jacob
2017-03-03 17:27 ` [dpdk-dev] [PATCH 04/39] event/octeontx: add build and log infrastructure Jerin Jacob
2017-03-23 15:14   ` Eads, Gage
2017-03-03 17:27 ` [dpdk-dev] [PATCH 05/39] event/octeontx: probe ssovf pcie devices Jerin Jacob
2017-03-23 15:39   ` Eads, Gage
2017-03-03 17:27 ` [dpdk-dev] [PATCH 06/39] event/octeontx: probe ssowvf " Jerin Jacob
2017-03-23 15:44   ` Eads, Gage
2017-03-03 17:27 ` [dpdk-dev] [PATCH 07/39] event/octeontx: add vdev interface functions Jerin Jacob
2017-03-23 16:07   ` Eads, Gage
2017-03-03 17:27 ` [dpdk-dev] [PATCH 08/39] event/octeontx: add mailbox support Jerin Jacob
2017-03-23 16:46   ` Eads, Gage
2017-03-24  9:57     ` Jerin Jacob
2017-03-03 17:27 ` [dpdk-dev] [PATCH 09/39] event/octeontx: add octeontx eventdev driver Jerin Jacob
2017-03-23 17:07   ` Eads, Gage
2017-03-03 17:27 ` [dpdk-dev] [PATCH 10/39] event/octeontx: add device capabilities function Jerin Jacob
2017-03-23 17:08   ` Eads, Gage
2017-03-03 17:27 ` [dpdk-dev] [PATCH 11/39] event/octeontx: add configure function Jerin Jacob
2017-03-23 18:09   ` Eads, Gage
2017-03-03 17:27 ` [dpdk-dev] [PATCH 12/39] event/octeontx: add support for event queues Jerin Jacob
2017-03-23 18:10   ` Eads, Gage
2017-03-03 17:27 ` [dpdk-dev] [PATCH 13/39] event/octeontx: add support for event ports Jerin Jacob
2017-03-23 18:14   ` Eads, Gage
2017-03-03 17:27 ` [dpdk-dev] [PATCH 14/39] event/octeontx: add support for linking queues to ports Jerin Jacob
2017-03-23 18:16   ` Eads, Gage
2017-03-03 17:27 ` [dpdk-dev] [PATCH 15/39] event/octeontx: add support dequeue timeout tick conversion Jerin Jacob
2017-03-23 18:17   ` Eads, Gage
2017-03-03 17:27 ` [dpdk-dev] [PATCH 16/39] event/octeontx: add dump function for easier debugging Jerin Jacob
2017-03-23 18:20   ` Eads, Gage
2017-03-03 17:27 ` [dpdk-dev] [PATCH 17/39] event/octeontx: add SSO HW device operations Jerin Jacob
2017-03-22 15:29   ` Eads, Gage
2017-03-23 18:24     ` Eads, Gage
2017-03-03 17:28 ` [dpdk-dev] [PATCH 18/39] event/octeontx: add support worker enqueue function Jerin Jacob
2017-03-23 18:27   ` Eads, Gage
2017-03-03 17:28 ` [dpdk-dev] [PATCH 19/39] event/octeontx: add support worker dequeue function Jerin Jacob
2017-03-20 21:11   ` Eads, Gage
2017-03-21  3:21     ` Jerin Jacob [this message]
2017-03-23 18:51   ` Eads, Gage
2017-03-24 11:16     ` Jerin Jacob
2017-03-03 17:28 ` [dpdk-dev] [PATCH 20/39] event/octeontx: add start function Jerin Jacob
2017-03-23 18:59   ` Eads, Gage
2017-03-03 17:28 ` [dpdk-dev] [PATCH 21/39] event/octeontx: add stop and close function Jerin Jacob
2017-03-23 19:02   ` Eads, Gage
2017-03-03 17:28 ` [dpdk-dev] [PATCH 22/39] app/test: octeontx eventdev unit test infrastructure Jerin Jacob
2017-03-23 11:55   ` Van Haaren, Harry
2017-03-24 13:40     ` Jerin Jacob
2017-03-24 13:47       ` Van Haaren, Harry
2017-03-03 17:28 ` [dpdk-dev] [PATCH 23/39] app/test: octeontx unit test case setup and teardown Jerin Jacob
2017-03-23 11:56   ` Van Haaren, Harry
2017-03-03 17:28 ` [dpdk-dev] [PATCH 24/39] app/test: octeontx unit test case helper functions Jerin Jacob
2017-03-23 12:00   ` Van Haaren, Harry
2017-03-03 17:28 ` [dpdk-dev] [PATCH 25/39] app/test: octeontx simple event enqueue and dequeue test Jerin Jacob
2017-03-23 12:01   ` Van Haaren, Harry
2017-03-03 17:28 ` [dpdk-dev] [PATCH 26/39] app/test: octeontx multi queue " Jerin Jacob
2017-03-23 12:02   ` Van Haaren, Harry
2017-03-03 17:28 ` [dpdk-dev] [PATCH 27/39] app/test: octeontx eventdev priority test Jerin Jacob
2017-03-23 12:03   ` Van Haaren, Harry
2017-03-03 17:28 ` [dpdk-dev] [PATCH 28/39] app/test: add infrastructure for multicore octeontx tests Jerin Jacob
2017-03-23 12:03   ` Van Haaren, Harry
2017-03-03 17:28 ` [dpdk-dev] [PATCH 29/39] app/test: octeontx multi queue and multi core/port tests Jerin Jacob
2017-03-23 12:04   ` Van Haaren, Harry
2017-03-03 17:28 ` [dpdk-dev] [PATCH 30/39] app/test: octeontx single link establishment test Jerin Jacob
2017-03-23 12:05   ` Van Haaren, Harry
2017-03-03 17:28 ` [dpdk-dev] [PATCH 31/39] app/test: octeontx multi " Jerin Jacob
2017-03-23 12:06   ` Van Haaren, Harry
2017-03-03 17:28 ` [dpdk-dev] [PATCH 32/39] app/test: octeontx flow based two stage sched type test Jerin Jacob
2017-03-23 12:07   ` Van Haaren, Harry
2017-03-03 17:28 ` [dpdk-dev] [PATCH 33/39] app/test: octeontx queue " Jerin Jacob
2017-03-23 12:08   ` Van Haaren, Harry
2017-03-03 17:28 ` [dpdk-dev] [PATCH 34/39] app/test: octeontx flow based maximum stage pipeline Jerin Jacob
2017-03-23 12:08   ` Van Haaren, Harry
2017-03-03 17:28 ` [dpdk-dev] [PATCH 35/39] app/test: octeontx queue " Jerin Jacob
2017-03-23 12:09   ` Van Haaren, Harry
2017-03-03 17:28 ` [dpdk-dev] [PATCH 36/39] app/test: octeontx queue and flow based max " Jerin Jacob
2017-03-23 12:09   ` Van Haaren, Harry
2017-03-03 17:28 ` [dpdk-dev] [PATCH 37/39] app/test: octeontx producer-consumer based order test Jerin Jacob
2017-03-23 12:10   ` Van Haaren, Harry
2017-03-03 17:28 ` [dpdk-dev] [PATCH 38/39] app/test: add remaining tests based on existing helpers Jerin Jacob
2017-03-23 12:11   ` Van Haaren, Harry
2017-03-03 17:28 ` [dpdk-dev] [PATCH 39/39] doc: add OCTEONTX ssovf details Jerin Jacob
2017-03-20 20:20   ` Eads, Gage
2017-03-20 21:38   ` Eads, Gage
2017-03-21  3:18     ` Jerin Jacob
2017-03-23 12:47   ` Van Haaren, Harry
2017-03-31 19:34 ` [dpdk-dev] [PATCH v2 00/38] Cavium OCTEONTX ssovf eventdev PMD Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 01/38] event/octeontx: add build and log infrastructure Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 02/38] event/octeontx: probe ssovf pcie devices Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 03/38] event/octeontx: probe ssowvf " Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 04/38] event/octeontx: add vdev interface functions Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 05/38] event/octeontx: add mailbox support Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 06/38] event/octeontx: add octeontx eventdev driver Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 07/38] event/octeontx: add device capabilities function Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 08/38] event/octeontx: add configure function Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 09/38] event/octeontx: add support for event queues Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 10/38] event/octeontx: add support for event ports Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 11/38] event/octeontx: add support for linking queues to ports Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 12/38] event/octeontx: add support dequeue timeout tick conversion Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 13/38] event/octeontx: add dump function for easier debugging Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 14/38] event/octeontx: add SSO HW device operations Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 15/38] event/octeontx: add support worker enqueue function Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 16/38] event/octeontx: add support worker dequeue function Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 17/38] event/octeontx: add start function Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 18/38] event/octeontx: add stop and close function Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 19/38] test/test: octeontx eventdev unit test infrastructure Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 20/38] test/test: octeontx unit test case setup and teardown Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 21/38] test/test: octeontx unit test case helper functions Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 22/38] test/test: octeontx simple event enqueue and dequeue test Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 23/38] test/test: octeontx multi queue " Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 24/38] test/test: octeontx eventdev priority test Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 25/38] test/test: add infrastructure for multicore octeontx tests Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 26/38] test/test: octeontx multi queue and multi core/port tests Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 27/38] test/test: octeontx single link establishment test Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 28/38] test/test: octeontx multi " Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 29/38] test/test: octeontx flow based two stage sched type test Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 30/38] test/test: octeontx queue " Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 31/38] test/test: octeontx flow based maximum stage pipeline Jerin Jacob
2017-03-31 19:34   ` [dpdk-dev] [PATCH v2 32/38] test/test: octeontx queue " Jerin Jacob
2017-03-31 19:35   ` [dpdk-dev] [PATCH v2 33/38] test/test: octeontx queue and flow based max " Jerin Jacob
2017-03-31 19:35   ` [dpdk-dev] [PATCH v2 34/38] test/test: octeontx producer-consumer based order test Jerin Jacob
2017-03-31 19:35   ` [dpdk-dev] [PATCH v2 35/38] test/test: add remaining tests based on existing helpers Jerin Jacob
2017-03-31 19:35   ` [dpdk-dev] [PATCH v2 36/38] doc: add OCTEONTX ssovf details Jerin Jacob
2017-04-02 12:29     ` Mcnamara, John
2017-04-03  4:49       ` Jerin Jacob
2017-04-02 15:20     ` Mcnamara, John
2017-03-31 19:35   ` [dpdk-dev] [PATCH v2 37/38] maintainers: claim OCTEONTX eventdev PMD maintainership Jerin Jacob
2017-03-31 19:35   ` [dpdk-dev] [PATCH v2 38/38] doc: add Cavium OCTEONTX eventdev PMD to 17.05 release notes Jerin Jacob
2017-04-02 12:18     ` Mcnamara, John
2017-04-03 11:29   ` [dpdk-dev] [PATCH v2 00/38] Cavium OCTEONTX ssovf eventdev PMD Jerin Jacob

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=20170321032102.zggcunadbso6jf4s@localhost.localdomain \
    --to=jerin.jacob@caviumnetworks.com \
    --cc=bruce.richardson@intel.com \
    --cc=dev@dpdk.org \
    --cc=gage.eads@intel.com \
    --cc=harry.van.haaren@intel.com \
    --cc=hemant.agrawal@nxp.com \
    --cc=nipun.gupta@nxp.com \
    --cc=santosh.shukla@caviumnetworks.com \
    --cc=thomas.monjalon@6wind.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).