From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from dpdk.org (dpdk.org [92.243.14.124])
	by inbox.dpdk.org (Postfix) with ESMTP id D66CAA052F;
	Fri, 24 Jan 2020 05:05:50 +0100 (CET)
Received: from [92.243.14.124] (localhost [127.0.0.1])
	by dpdk.org (Postfix) with ESMTP id 34BFB2BCE;
	Fri, 24 Jan 2020 05:05:50 +0100 (CET)
Received: from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com
 [67.231.156.173]) by dpdk.org (Postfix) with ESMTP id DF2D82956
 for <dev@dpdk.org>; Fri, 24 Jan 2020 05:05:48 +0100 (CET)
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
 00O44nYU005208; Thu, 23 Jan 2020 20:05:48 -0800
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=eLhm4hEd8LsRpx/v+TrHkfgJIDivd41TP9o0aFz/mTI=;
 b=vBQh+7OD4PEIS9wA2XhUsLnb5ScAoyZX24P1qwSb4cABnJXzG3Meq2oCTzBIAAFN2ETq
 AMKO39C7sU8x1hJidibZ20Fs775vBXvXkHLa8Q3beZ0rCsUtlqGXFVoaCobCCepCC0tp
 dxu9Wnf83AmgbiHFFqOVa3a1Ag4S0xETG1XMtBll0YgbEBPXMSPLGnxDItYNCp/DIcSa
 sqjWWm/eHbYSOPnltNwfSGytWS/7LKeuuTEXAcD3N8qWDs/7WHSGCVkCIz5fZrfNS+4V
 SNWdgJOQ69a73WfkdafzQ6x5qQUmX5Ni1qt/rkprR2WcvrAgy77+w3GkbvxV1F3ID6ED xg== 
Received: from sc-exch03.marvell.com ([199.233.58.183])
 by mx0b-0016f401.pphosted.com with ESMTP id 2xm2dteu83-1
 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT);
 Thu, 23 Jan 2020 20:05:47 -0800
Received: from SC-EXCH01.marvell.com (10.93.176.81) by SC-EXCH03.marvell.com
 (10.93.176.83) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Thu, 23 Jan
 2020 20:05:45 -0800
Received: from maili.marvell.com (10.93.176.43) by SC-EXCH01.marvell.com
 (10.93.176.81) with Microsoft SMTP Server id 15.0.1497.2 via Frontend
 Transport; Thu, 23 Jan 2020 20:05:45 -0800
Received: from BG-LT7430.marvell.com (bg-lt7430.marvell.com [10.28.10.90])
 by maili.marvell.com (Postfix) with ESMTP id F29503F703F;
 Thu, 23 Jan 2020 20:05:43 -0800 (PST)
From: <pbhagavatula@marvell.com>
To: <jerinj@marvell.com>, <konstantin.ananyev@intel.com>
CC: <dev@dpdk.org>, Pavan Nikhilesh <pbhagavatula@marvell.com>
Date: Fri, 24 Jan 2020 09:35:31 +0530
Message-ID: <20200124040542.2360-1-pbhagavatula@marvell.com>
X-Mailer: git-send-email 2.17.1
In-Reply-To: <20200122182817.1667-1-pbhagavatula@marvell.com>
References: <20200122182817.1667-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.138, 18.0.572
 definitions=2020-01-23_13:2020-01-23,
 2020-01-23 signatures=0
Subject: [dpdk-dev] [PATCH v5 00/11] example/l3fwd: introduce event device
	support
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>

From: Pavan Nikhilesh <pbhagavatula@marvell.com>

This patchset adds support for event mode in l3fwd.
The poll mode is still the default mode of operation.

The following new command line parameters are added:
 --mode: Dictates the mode of operation either poll or event. If unset then
         by default poll mode is used.
 --eventq_sched: Dictates event synchronization mode i.e. either ordered,
		 atomic or parallel.
 --event-eth-rxqs: Number of ethernet RX queues per device.

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.

v5 Changes:
----------
- Update release notes and MAINTAINERS file.
- Fix typo in doc.

v4 Changes:
----------
- Update documentation about --event-eth-rxqs. (Jerin)
- Add validation for command line options that are specific to event/poll mode.
- Fix event device service initialization.

v3 Changes:
----------
- Unify argument parsing.
- Segregate poll mode and event mode initialization.
- Simplify event resource creation and accesses.
- Integrate http://patches.dpdk.org/project/dpdk/list/?series=8002 series.
- Reduce code duplication in lpm.

v2 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.
- Add parallel mode support.
- Fix missing eventdev args parsing.

Pavan Nikhilesh (7):
  examples/l3fwd: add event device configuration
  examples/l3fwd: add event eth Rx/Tx adapter setup
  examples/l3fwd: add service core setup based on caps
  examples/l3fwd: add event lpm main loop
  examples/l3fwd: add event em main loop
  examples/l3fwd: add graceful teardown for eventdevice
  doc: update l3fwd user guide to support eventdev

Sunil Kumar Kori (4):
  examples/l3fwd: add framework for event device
  examples/l3fwd: split pipelines based on capability
  examples/l3fwd: add ethdev setup based on eventdev
  examples/l3fwd: add event port and queue setup

 MAINTAINERS                                |   1 +
 doc/guides/rel_notes/release_20_02.rst     |   5 +
 doc/guides/sample_app_ug/l3_forward.rst    |  79 ++++-
 examples/l3fwd/Makefile                    |   3 +-
 examples/l3fwd/l3fwd.h                     |  30 ++
 examples/l3fwd/l3fwd_em.c                  | 177 +++++++++++
 examples/l3fwd/l3fwd_em.h                  | 159 +++++++---
 examples/l3fwd/l3fwd_em_hlm.h              | 131 ++++++++
 examples/l3fwd/l3fwd_em_sequential.h       |  26 ++
 examples/l3fwd/l3fwd_event.c               | 263 ++++++++++++++++
 examples/l3fwd/l3fwd_event.h               |  86 ++++++
 examples/l3fwd/l3fwd_event_generic.c       | 303 ++++++++++++++++++
 examples/l3fwd/l3fwd_event_internal_port.c | 279 +++++++++++++++++
 examples/l3fwd/l3fwd_lpm.c                 | 203 ++++++++++++
 examples/l3fwd/main.c                      | 341 +++++++++++++++++----
 examples/l3fwd/meson.build                 |   5 +-
 16 files changed, 1976 insertions(+), 115 deletions(-)
 create mode 100644 examples/l3fwd/l3fwd_event.c
 create mode 100644 examples/l3fwd/l3fwd_event.h
 create mode 100644 examples/l3fwd/l3fwd_event_generic.c
 create mode 100644 examples/l3fwd/l3fwd_event_internal_port.c

--
2.17.1