Message ID | 20191026111054.15491-1-pbhagavatula@marvell.com (mailing list archive) |
---|---|
Headers |
Return-Path: <dev-bounces@dpdk.org> X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 1BD061BF8E; Sat, 26 Oct 2019 13:11:03 +0200 (CEST) Received: from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com [67.231.156.173]) by dpdk.org (Postfix) with ESMTP id 7B2891BF86 for <dev@dpdk.org>; Sat, 26 Oct 2019 13:11:01 +0200 (CEST) Received: from pps.filterd (m0045851.ppops.net [127.0.0.1]) by mx0b-0016f401.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id x9QBB0Fb028944; Sat, 26 Oct 2019 04:11:00 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : mime-version : content-transfer-encoding : content-type; s=pfpt0818; bh=jBW/Y2NmSZIGEoY152Y4K5VB614xeL2n1MWkZS8yXg0=; b=dj/GIkqYfig57aIfbbhzyhf1d5K2SKXYH0CDQ8bjLWVQWPG+DctfzI4ZHMzLVuwi8JPu MrsKsIKyHbd4TnRU4UBJB4AIMlCfAUW9y2RGu5Gvq4Ga5XU6PIL98WxPqCTVcOZ7Uhlv t+QC36ywxYTiNdBHE2vo5A8CecYMoKexyKdmYCOx/MxfR5erA3c9Glq5uZ+DA1LXYjDj 90X5xKoq8Ka3JSMTXV7faLuekAUk/TmKefDxhxkGni10rc5qNZwf57tmAg0RiYeqep2c udAh6FjcTPQgyb14omA7OA0LoFz1mMo3qlNO5f89WzaS6y/GXKMDU7o39qG41ELsJbzV Wg== Received: from sc-exch02.marvell.com ([199.233.58.182]) by mx0b-0016f401.pphosted.com with ESMTP id 2vt9ujy5p3-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Sat, 26 Oct 2019 04:11:00 -0700 Received: from SC-EXCH03.marvell.com (10.93.176.83) by SC-EXCH02.marvell.com (10.93.176.82) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Sat, 26 Oct 2019 04:10:58 -0700 Received: from maili.marvell.com (10.93.176.43) by SC-EXCH03.marvell.com (10.93.176.83) with Microsoft SMTP Server id 15.0.1367.3 via Frontend Transport; Sat, 26 Oct 2019 04:10:58 -0700 Received: from BG-LT7430.marvell.com (unknown [10.28.17.85]) by maili.marvell.com (Postfix) with ESMTP id 6DEE53F7040; Sat, 26 Oct 2019 04:10:56 -0700 (PDT) From: <pbhagavatula@marvell.com> To: <jerinj@marvell.com>, <bruce.richardson@intel.com>, <hemant.agrawal@nxp.com> CC: <dev@dpdk.org>, Pavan Nikhilesh <pbhagavatula@marvell.com> Date: Sat, 26 Oct 2019 16:40:44 +0530 Message-ID: <20191026111054.15491-1-pbhagavatula@marvell.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20191014182247.961-1-pbhagavatula@marvell.com> References: <20191014182247.961-1-pbhagavatula@marvell.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.95,1.0.8 definitions=2019-10-26_02:2019-10-25,2019-10-26 signatures=0 Subject: [dpdk-dev] [PATCH v7 00/10] example/l2fwd-event: introduce l2fwd-event example X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions <dev.dpdk.org> List-Unsubscribe: <https://mails.dpdk.org/options/dev>, <mailto:dev-request@dpdk.org?subject=unsubscribe> List-Archive: <http://mails.dpdk.org/archives/dev/> List-Post: <mailto:dev@dpdk.org> List-Help: <mailto:dev-request@dpdk.org?subject=help> List-Subscribe: <https://mails.dpdk.org/listinfo/dev>, <mailto:dev-request@dpdk.org?subject=subscribe> Errors-To: dev-bounces@dpdk.org Sender: "dev" <dev-bounces@dpdk.org> |
Series |
example/l2fwd-event: introduce l2fwd-event example
|
|
Message
Pavan Nikhilesh Bhagavatula
Oct. 26, 2019, 11:10 a.m. UTC
From: Pavan Nikhilesh <pbhagavatula@marvell.com>
This patchset adds a new application to demonstrate the usage of event
mode. The poll mode is also available to help with the transition.
The following new command line parameters are added:
--mode: Dictates the mode of operation either poll or event.
--eventq_sched: Dictates event scheduling mode ordered, atomic or
parallel.
Based on event device capability the configuration is done as follows:
- A single event device is enabled.
- The number of event ports is equal to the number of worker
cores enabled in the core mask. Additional event ports might
be configured based on Rx/Tx adapter capability.
- The number of event queues is equal to the number of ethernet
ports. If Tx adapter doesn't have internal port capability then
an additional single link event queue is used to enqueue events
to Tx adapter.
- Each event port is linked to all existing event queues.
- Dedicated Rx/Tx adapters for each Ethernet port.
v7 Changes:
- Use master core to print stats.
- Remove print stats from worker cores.
- Add Rx/Tx adapter stats.
v6 Changes:
- Shorten the structure name `s/event_rsrc/evt_rsrc` `s/l2fwd_rsrc/rsrc`.
- Use rte_panic instead of rte_exit.
- Rebase on top of Tx adapter change http://patches.dpdk.org/patch/60971.
- Update documentation and fix error, spellcheck.
- Fix meson build.
- Split functions into smaller functions for redability.
- Add parallel mode support.
v5 Changes:
- Redo poll mode datapath by removing all the static globals.
- Fix event queue configuration when required queues are not available.
- Fix Rx/Tx adapter creation based on portmask.
- Update release notes.
- Unroll macro used to generate event mode functions.
v4 Changes:
- Fix missing eventdev args parsing.
v3 Changes:
- Remove unwanted change to example/l2fwd.
- Fix checkpatch issue
http://mails.dpdk.org/archives/test-report/2019-September/098053.html
v2 Changes:
- Remove global variables.
- Split patches to make reviews friendlier.
- Split datapath based on eventdev capability.
Pavan Nikhilesh (5):
examples/l2fwd-event: add default poll mode routines
examples/l2fwd-event: add infra for eventdev
examples/l2fwd-event: add service core setup
examples/l2fwd-event: add eventdev main loop
examples/l2fwd-event: add graceful teardown
Sunil Kumar Kori (5):
examples/l2fwd-event: add infra to split eventdev framework
examples/l2fwd-event: add event device setup
examples/l2fwd-event: add eventdev queue and port setup
examples/l2fwd-event: add event Rx/Tx adapter setup
doc: add application usage guide for l2fwd-event
MAINTAINERS | 6 +
doc/guides/rel_notes/release_19_11.rst | 6 +
doc/guides/sample_app_ug/index.rst | 1 +
doc/guides/sample_app_ug/intro.rst | 5 +
doc/guides/sample_app_ug/l2_forward_event.rst | 698 ++++++++++++++++++
examples/Makefile | 1 +
examples/l2fwd-event/Makefile | 62 ++
examples/l2fwd-event/l2fwd_common.c | 97 +++
examples/l2fwd-event/l2fwd_common.h | 132 ++++
examples/l2fwd-event/l2fwd_event.c | 393 ++++++++++
examples/l2fwd-event/l2fwd_event.h | 73 ++
examples/l2fwd-event/l2fwd_event_generic.c | 315 ++++++++
.../l2fwd-event/l2fwd_event_internal_port.c | 294 ++++++++
examples/l2fwd-event/l2fwd_poll.c | 177 +++++
examples/l2fwd-event/l2fwd_poll.h | 25 +
examples/l2fwd-event/main.c | 579 +++++++++++++++
examples/l2fwd-event/meson.build | 18 +
examples/meson.build | 2 +-
18 files changed, 2883 insertions(+), 1 deletion(-)
create mode 100644 doc/guides/sample_app_ug/l2_forward_event.rst
create mode 100644 examples/l2fwd-event/Makefile
create mode 100644 examples/l2fwd-event/l2fwd_common.c
create mode 100644 examples/l2fwd-event/l2fwd_common.h
create mode 100644 examples/l2fwd-event/l2fwd_event.c
create mode 100644 examples/l2fwd-event/l2fwd_event.h
create mode 100644 examples/l2fwd-event/l2fwd_event_generic.c
create mode 100644 examples/l2fwd-event/l2fwd_event_internal_port.c
create mode 100644 examples/l2fwd-event/l2fwd_poll.c
create mode 100644 examples/l2fwd-event/l2fwd_poll.h
create mode 100644 examples/l2fwd-event/main.c
create mode 100644 examples/l2fwd-event/meson.build
--
2.17.1
Comments
On Sat, Oct 26, 2019 at 4:41 PM <pbhagavatula@marvell.com> wrote: > > From: Pavan Nikhilesh <pbhagavatula@marvell.com> > > This patchset adds a new application to demonstrate the usage of event > mode. The poll mode is also available to help with the transition. > > The following new command line parameters are added: > --mode: Dictates the mode of operation either poll or event. > --eventq_sched: Dictates event scheduling mode ordered, atomic or > parallel. > > Based on event device capability the configuration is done as follows: > - A single event device is enabled. > - The number of event ports is equal to the number of worker > cores enabled in the core mask. Additional event ports might > be configured based on Rx/Tx adapter capability. > - The number of event queues is equal to the number of ethernet > ports. If Tx adapter doesn't have internal port capability then > an additional single link event queue is used to enqueue events > to Tx adapter. > - Each event port is linked to all existing event queues. > - Dedicated Rx/Tx adapters for each Ethernet port. Please fix the below clang build issue http://mails.dpdk.org/archives/test-report/2019-October/104973.html ../examples/l2fwd-event/l2fwd_event.c:(.text+0xb4d): undefined reference to `__atomic_fetch_add_8' examples/c590b3c@@dpdk-l2fwd-event at exe/l2fwd-event_l2fwd_event.c.o:../examples/l2fwd-event/l2fwd_event.c:(.text+0xbb0): more undefined references to `__atomic_fetch_add_8' follow clang: error: linker command failed with exit code 1 (use -v to see invocation)