From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id AE8A7A04B6; Mon, 12 Oct 2020 21:09:14 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 6C1AE1D989; Mon, 12 Oct 2020 21:09:12 +0200 (CEST) Received: from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com [67.231.156.173]) by dpdk.org (Postfix) with ESMTP id D65EE1D988 for ; Mon, 12 Oct 2020 21:09:09 +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 09CJ5MNW022546; Mon, 12 Oct 2020 12:09:09 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : references : in-reply-to : content-type : content-transfer-encoding : mime-version; s=pfpt0220; bh=UeVbo+hvOq8XniTRHl6z029mBjjxTtf+C72FcdBhsmA=; b=PITZETJDbj23mxOcYDXBGQwz/zq0y5rw7bJTWzOvE12NNA9h2ZjOKiPxDuWgHM+l8IYu B7eF1GPq/yZXw9XjDDUpauxR1wXKfHv51OK6aelzeSasKb1rEUmCQMge5PyUmVhNlO61 xZx8jHGgGtfwRdszN8tLHiOAWImtc4P7LOPP/4zGYKSH8KNWpiAOXDN6zSrWBrW6Fiy5 jKDx47aoLV4xO+JtFXMKNlwLoiqlwByrEG0QdIJC8Ixw+t1R4I9mjrzRtRAEuykAXHU+ 5fyYhphfoKhJ+92aidzUfpC/WDUeoz+Nkzps3P7b3UrKlW/E33t/Xd+f+c3U5yLQrTUr fQ== Received: from sc-exch02.marvell.com ([199.233.58.182]) by mx0b-0016f401.pphosted.com with ESMTP id 343cfj719u-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Mon, 12 Oct 2020 12:09:08 -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.1497.2; Mon, 12 Oct 2020 12:09:06 -0700 Received: from NAM11-DM6-obe.outbound.protection.outlook.com (104.47.57.172) by SC-EXCH03.marvell.com (10.93.176.83) with Microsoft SMTP Server (TLS) id 15.0.1497.2 via Frontend Transport; Mon, 12 Oct 2020 12:09:06 -0700 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=gWNcdi+yCWnJxHhxWD2GF6zHVEkDlZX6FwYMwqQANPX/0E7z6x//KbTLJdfx+02M+OnS6qYmACGQpJ9OdOOkZ4HeJkUH4rdtFP3ZR3Zqo54b6sLYHCapD3nDhrSnHJBzhoPmaTEv6MUpkPCHeUZbJCXRSiM+BhClDkdxuIddF/zOlTU3oEFLWBwJyAFquL2cdH97i4R7AenlozvoD76qtDaQ+aop0Jr+zZGQanZ3mBNM9n52PmxmPUGwHkaobjqDtkAfn57AVOd1+L8cqO9iim6jDK5RsoJuUk5hEmSz6M/foKPot5lRlmBwnwzN7RQ0ypyGrSv2BI5cP6zdRUkOGg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=UeVbo+hvOq8XniTRHl6z029mBjjxTtf+C72FcdBhsmA=; b=WSqn2YPqac4RX0w71A8wWXB0GY8bmBWJD8zSZHffLk1jD3k9NnIP4syceVAOP7TtoBlmUyAQKXVGqYG3EpN257Pf4QacK+FH0IhKSHWDie40RVn/dhF82nMw/yJNcv/j8io8GwER5NW5KlVlJt3hGzWQxHlRje47z/4rrHJHsR6M0NhxBH3wwIwMze31Ng7QQap8G20QjzDgwlkJC6c/aRdIwFxyLWroKzeIxsl5Wd5GoTs4g1zxr2wQvLI9WzjDxS1wb21XT31UzUC8OnBrp5SRloq3rhXevJCN2F1Y8SzeDRiyJH+a/pOiSmKchvPlABvTW5gJpH80GHcDZA0F7A== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=marvell.com; dmarc=pass action=none header.from=marvell.com; dkim=pass header.d=marvell.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.onmicrosoft.com; s=selector1-marvell-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=UeVbo+hvOq8XniTRHl6z029mBjjxTtf+C72FcdBhsmA=; b=Lt6zyJ1ikJZ4kQkmsn5R3NDBrV5fwXPnXk/uL77/M9LeXxIT80aVIiKjfgSVJEPtFKmZ4+e6PWS2RFNJ2fmzkanablDo1twrTux+GXv7+qRFe6GnLlxsWQW9m70p7KkfSTOerCeRR2vqY1OtiEbt0k6Ux10QQZ/acfvtHwKGhqc= Received: from BN6PR18MB1140.namprd18.prod.outlook.com (2603:10b6:404:6a::10) by BN8PR18MB2354.namprd18.prod.outlook.com (2603:10b6:408:9a::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3455.25; Mon, 12 Oct 2020 19:09:03 +0000 Received: from BN6PR18MB1140.namprd18.prod.outlook.com ([fe80::c816:d1f8:15db:3d4]) by BN6PR18MB1140.namprd18.prod.outlook.com ([fe80::c816:d1f8:15db:3d4%10]) with mapi id 15.20.3455.030; Mon, 12 Oct 2020 19:09:03 +0000 From: Pavan Nikhilesh Bhagavatula To: "Van Haaren, Harry" , "McDaniel, Timothy" , Jerin Jacob Kollanukkaran , "Kovacevic, Marko" , Ori Kam , "Richardson, Bruce" , "Nicolau, Radu" , Akhil Goyal , "Kantecki, Tomasz" , Sunil Kumar Kori CC: "dev@dpdk.org" , "Carrillo, Erik G" , "Eads, Gage" , "hemant.agrawal@nxp.com" Thread-Topic: [PATCH v2 2/2] eventdev: update app and examples for new eventdev ABI Thread-Index: AQHWm7pghBzMsL2Hy0+prsKiHknG5qmUXnlw Date: Mon, 12 Oct 2020 19:09:02 +0000 Message-ID: References: <1601929674-27662-1-git-send-email-timothy.mcdaniel@intel.com> <1601929674-27662-3-git-send-email-timothy.mcdaniel@intel.com> In-Reply-To: Accept-Language: en-IN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: intel.com; dkim=none (message not signed) header.d=none;intel.com; dmarc=none action=none header.from=marvell.com; x-originating-ip: [49.37.198.174] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 02690ae3-1e08-41e3-3f77-08d86ee24885 x-ms-traffictypediagnostic: BN8PR18MB2354: x-ms-exchange-transport-forked: True x-microsoft-antispam-prvs: x-ms-oob-tlc-oobclassifiers: OLM:343; x-ms-exchange-senderadcheck: 1 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: X1wJ71y0aMWPTI8uTx0Stih7FRy7rZ+bciFu0aX1bExGVAN8O/kJvMoRVUXeNoOXKXEz65NAMaIPGR4Lz5djY0F/7rGkWrcSu+N+y0NE5eVpUhEZifeLtz5BHcYFxzL7DxXvivaVpu5VOzViUk61lfmo1+sC4oqzp31Bb7G4iJiVJABbBbOqcCPLmGEkRrKPcuvIhwvgxkV9nluvDRzuzfjerfrRSfLW2YqDkUNpREOrPPCRBIDMUmqAQj3q9KpzHbbF95aUk0bGmooT767+i1qdGn6ETa96hvwLAA6+oQSD4eUEnaDXfVMtqBRtrO+GItTvds4EslDcBllB+oTu39e+gIZe/SnSmrhkEeAguLCMLwSq+vqf9c+stYaF23Fz+pdgnO7Ykdf7BJ7prxvXJh9OXnBWF6I9GeQCf2jq5/dPsai4ubjar3CG9rGH532x x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:BN6PR18MB1140.namprd18.prod.outlook.com; PTR:; CAT:NONE; SFS:(4636009)(346002)(396003)(136003)(366004)(376002)(39860400002)(6506007)(86362001)(4326008)(71200400001)(66446008)(64756008)(66556008)(66476007)(9686003)(55016002)(2906002)(15650500001)(8676002)(26005)(76116006)(66946007)(8936002)(5660300002)(186003)(7416002)(52536014)(30864003)(7696005)(478600001)(316002)(83380400001)(33656002)(110136005)(6636002)(54906003)(921003)(473944003); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata: meQboM8wygBmQIZQ5i6cEhvkVxodoMAgsUTPIL7Dgn6m+0tk7A/PY10GjM0tXBTwnb+9s4q2oVEuAa8OOSeEmvg7f3jElwCsMoIaqCjvjJYdjN1KhKff12BpPcSkNnzlTv1dvychXGSc6aLkp1rJr+vG4RCtj7yiPrImQa7O1lX5kw4ahpB7cO37+XqwS5Bmpk3wFauEZLLA17+RPh9MoWIVw5gd1iX1FI5UmhBlcJ7Dn5pViN86Cij+cUkFIJk7mz3pEFBNohAPDcUsSiSj7zAmDjAPWA51uysGhOM6GfAUw+lulpwUZyk0tdDF+y75feQ0fgoKfR4ERFo8yiWGlTVTEZUYPKQ3o5Xr4AvjzHC3oJkaOqkXyPu3v8Kj0ylirkZd+WNEnoH50vqhT9OIkbEbGkcK8QlP4J8i1xLDDk7pcmz0xgXgxxbfMx8bjiAG4T8DzurwZ4TB9UmwtDDdlP7heytueFwp+BJLTzxB8UEB5UTH2plr2baQ1aj3Xxo+WVtct5dSOnmbX7dnFHjR1b/ka672g9w7ubH929dVKwG2tnN7LvUFabJ5GcXXECMtDLi+JoHpF2QlgtrJ9PhTqSZAlslp8+7em1EQseqx5JuG+JAeYUYdggx0meKg8JV0lP/97Do/4B5x+5xpHwJ5Sw== Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: BN6PR18MB1140.namprd18.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 02690ae3-1e08-41e3-3f77-08d86ee24885 X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Oct 2020 19:09:02.9232 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 70e1fb47-1155-421d-87fc-2e58f638b6e0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: UfMnyplfTjdmbzsn69yqze5dTArIbXpjvgL0M2B+qkpMKf9/Uiuo4QWJfJh7qY4NUNVTAQ48XKYaNJGsFfWHqtgEYMbbj17zUnKjarzi1Zs= X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN8PR18MB2354 X-OriginatorOrg: marvell.com X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.235, 18.0.687 definitions=2020-10-12_15:2020-10-12, 2020-10-12 signatures=0 Subject: Re: [dpdk-dev] [PATCH v2 2/2] eventdev: update app and examples for new eventdev ABI X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" >> Subject: [PATCH v2 2/2] eventdev: update app and examples for new >eventdev ABI >> >> Several data structures and constants changed, or were added, >> in the previous patch. This commit updates the dependent >> apps and examples to use the new ABI. >> >> Signed-off-by: Timothy McDaniel With fixes to trace framework Acked-by: Pavan Nikhilesh >> ---=09 > >With this patch applied, the compilation works fine, however runtime >fails. >Note that there is a dependency to the following fix which Timothy >upstreamed: >https://urldefense.proofpoint.com/v2/url?u=3Dhttp- >3A__patches.dpdk.org_patch_79713_&d=3DDwIFAg&c=3DnKjWec2b6R0mO >yPaz7xtfQ&r=3DE3SgYMjtKCMVsB-fmvgGV3o- >g_fjLhk5Pupi9ijohpc&m=3DmRL8gzBSQmAPRQfgNtiP_pu9ptgafRSt- >dqHP8c6Q_A&s=3D84_EoTViUQXiFuIh4- >YkcqBHP_PYsL73VmZzbczCTOI&e=3D > >The above linked patch increases the CTF trace size, and fixes the >following error: >./dpdk-test >EAL: __rte_trace_point_emit_field():442 CTF field is too long >EAL: __rte_trace_point_register():468 missing rte_trace_emit_header() >in register fn > > >> app/test-eventdev/evt_common.h | 11 ++++++++ >> app/test-eventdev/test_order_atq.c | 28 +++++++++++++++= - >----- >> app/test-eventdev/test_order_common.c | 1 + >> app/test-eventdev/test_order_queue.c | 29 >++++++++++++++++------ >> app/test/test_eventdev.c | 4 +-- >> .../eventdev_pipeline/pipeline_worker_generic.c | 6 +++-- >> examples/eventdev_pipeline/pipeline_worker_tx.c | 1 + >> examples/l2fwd-event/l2fwd_event_generic.c | 7 ++++-- >> examples/l2fwd-event/l2fwd_event_internal_port.c | 6 +++-- >> examples/l3fwd/l3fwd_event_generic.c | 7 ++++-- >> examples/l3fwd/l3fwd_event_internal_port.c | 6 +++-- >> 11 files changed, 80 insertions(+), 26 deletions(-) >> >> diff --git a/app/test-eventdev/evt_common.h b/app/test- >eventdev/evt_common.h >> index f9d7378..a1da1cf 100644 >> --- a/app/test-eventdev/evt_common.h >> +++ b/app/test-eventdev/evt_common.h >> @@ -104,6 +104,16 @@ evt_has_all_types_queue(uint8_t dev_id) >> true : false; >> } >> >> +static inline bool >> +evt_has_flow_id(uint8_t dev_id) >> +{ >> + struct rte_event_dev_info dev_info; >> + >> + rte_event_dev_info_get(dev_id, &dev_info); >> + return (dev_info.event_dev_cap & >> RTE_EVENT_DEV_CAP_CARRY_FLOW_ID) ? >> + true : false; >> +} >> + >> static inline int >> evt_service_setup(uint32_t service_id) >> { >> @@ -169,6 +179,7 @@ evt_configure_eventdev(struct evt_options >*opt, uint8_t >> nb_queues, >> .dequeue_timeout_ns =3D opt->deq_tmo_nsec, >> .nb_event_queues =3D nb_queues, >> .nb_event_ports =3D nb_ports, >> + .nb_single_link_event_port_queues =3D 0, >> .nb_events_limit =3D info.max_num_events, >> .nb_event_queue_flows =3D opt->nb_flows, >> .nb_event_port_dequeue_depth =3D >> diff --git a/app/test-eventdev/test_order_atq.c b/app/test- >> eventdev/test_order_atq.c >> index 3366cfc..cfcb1dc 100644 >> --- a/app/test-eventdev/test_order_atq.c >> +++ b/app/test-eventdev/test_order_atq.c >> @@ -19,7 +19,7 @@ order_atq_process_stage_0(struct rte_event >*const ev) >> } >> >> static int >> -order_atq_worker(void *arg) >> +order_atq_worker(void *arg, const bool flow_id_cap) >> { >> ORDER_WORKER_INIT; >> struct rte_event ev; >> @@ -34,6 +34,9 @@ order_atq_worker(void *arg) >> continue; >> } >> >> + if (!flow_id_cap) >> + ev.flow_id =3D ev.mbuf->udata64; >> + >> if (ev.sub_event_type =3D=3D 0) { /* stage 0 from producer >*/ >> order_atq_process_stage_0(&ev); >> while (rte_event_enqueue_burst(dev_id, port, >&ev, 1) >> @@ -50,7 +53,7 @@ order_atq_worker(void *arg) >> } >> >> static int >> -order_atq_worker_burst(void *arg) >> +order_atq_worker_burst(void *arg, const bool flow_id_cap) >> { >> ORDER_WORKER_INIT; >> struct rte_event ev[BURST_SIZE]; >> @@ -68,6 +71,9 @@ order_atq_worker_burst(void *arg) >> } >> >> for (i =3D 0; i < nb_rx; i++) { >> + if (!flow_id_cap) >> + ev[i].flow_id =3D ev[i].mbuf->udata64; >> + >> if (ev[i].sub_event_type =3D=3D 0) { /*stage 0 */ >> order_atq_process_stage_0(&ev[i]); >> } else if (ev[i].sub_event_type =3D=3D 1) { /* stage 1 >*/ >> @@ -95,11 +101,19 @@ worker_wrapper(void *arg) >> { >> struct worker_data *w =3D arg; >> const bool burst =3D evt_has_burst_mode(w->dev_id); >> - >> - if (burst) >> - return order_atq_worker_burst(arg); >> - else >> - return order_atq_worker(arg); >> + const bool flow_id_cap =3D evt_has_flow_id(w->dev_id); >> + >> + if (burst) { >> + if (flow_id_cap) >> + return order_atq_worker_burst(arg, true); >> + else >> + return order_atq_worker_burst(arg, false); >> + } else { >> + if (flow_id_cap) >> + return order_atq_worker(arg, true); >> + else >> + return order_atq_worker(arg, false); >> + } >> } >> >> static int >> diff --git a/app/test-eventdev/test_order_common.c b/app/test- >> eventdev/test_order_common.c >> index 4190f9a..7942390 100644 >> --- a/app/test-eventdev/test_order_common.c >> +++ b/app/test-eventdev/test_order_common.c >> @@ -49,6 +49,7 @@ order_producer(void *arg) >> const uint32_t flow =3D (uintptr_t)m % nb_flows; >> /* Maintain seq number per flow */ >> m->seqn =3D producer_flow_seq[flow]++; >> + m->udata64 =3D flow; >> >> ev.flow_id =3D flow; >> ev.mbuf =3D m; >> diff --git a/app/test-eventdev/test_order_queue.c b/app/test- >> eventdev/test_order_queue.c >> index 495efd9..1511c00 100644 >> --- a/app/test-eventdev/test_order_queue.c >> +++ b/app/test-eventdev/test_order_queue.c >> @@ -19,7 +19,7 @@ order_queue_process_stage_0(struct rte_event >*const ev) >> } >> >> static int >> -order_queue_worker(void *arg) >> +order_queue_worker(void *arg, const bool flow_id_cap) >> { >> ORDER_WORKER_INIT; >> struct rte_event ev; >> @@ -34,6 +34,9 @@ order_queue_worker(void *arg) >> continue; >> } >> >> + if (!flow_id_cap) >> + ev.flow_id =3D ev.mbuf->udata64; >> + >> if (ev.queue_id =3D=3D 0) { /* from ordered queue */ >> order_queue_process_stage_0(&ev); >> while (rte_event_enqueue_burst(dev_id, port, >&ev, 1) >> @@ -50,7 +53,7 @@ order_queue_worker(void *arg) >> } >> >> static int >> -order_queue_worker_burst(void *arg) >> +order_queue_worker_burst(void *arg, const bool flow_id_cap) >> { >> ORDER_WORKER_INIT; >> struct rte_event ev[BURST_SIZE]; >> @@ -68,6 +71,10 @@ order_queue_worker_burst(void *arg) >> } >> >> for (i =3D 0; i < nb_rx; i++) { >> + >> + if (!flow_id_cap) >> + ev[i].flow_id =3D ev[i].mbuf->udata64; >> + >> if (ev[i].queue_id =3D=3D 0) { /* from ordered queue >*/ >> order_queue_process_stage_0(&ev[i]); >> } else if (ev[i].queue_id =3D=3D 1) {/* from atomic >queue */ >> @@ -95,11 +102,19 @@ worker_wrapper(void *arg) >> { >> struct worker_data *w =3D arg; >> const bool burst =3D evt_has_burst_mode(w->dev_id); >> - >> - if (burst) >> - return order_queue_worker_burst(arg); >> - else >> - return order_queue_worker(arg); >> + const bool flow_id_cap =3D evt_has_flow_id(w->dev_id); >> + >> + if (burst) { >> + if (flow_id_cap) >> + return order_queue_worker_burst(arg, true); >> + else >> + return order_queue_worker_burst(arg, false); >> + } else { >> + if (flow_id_cap) >> + return order_queue_worker(arg, true); >> + else >> + return order_queue_worker(arg, false); >> + } >> } >> >> static int >> diff --git a/app/test/test_eventdev.c b/app/test/test_eventdev.c >> index 43ccb1c..62019c1 100644 >> --- a/app/test/test_eventdev.c >> +++ b/app/test/test_eventdev.c >> @@ -559,10 +559,10 @@ test_eventdev_port_setup(void) >> if (!(info.event_dev_cap & >> RTE_EVENT_DEV_CAP_IMPLICIT_RELEASE_DISABLE)) { >> pconf.enqueue_depth =3D >info.max_event_port_enqueue_depth; >> - pconf.disable_implicit_release =3D 1; >> + pconf.event_port_cfg =3D >> RTE_EVENT_PORT_CFG_DISABLE_IMPL_REL; >> ret =3D rte_event_port_setup(TEST_DEV_ID, 0, &pconf); >> TEST_ASSERT(ret =3D=3D -EINVAL, "Expected -EINVAL, %d", >ret); >> - pconf.disable_implicit_release =3D 0; >> + pconf.event_port_cfg =3D 0; >> } >> >> ret =3D rte_event_port_setup(TEST_DEV_ID, >info.max_event_ports, >> diff --git a/examples/eventdev_pipeline/pipeline_worker_generic.c >> b/examples/eventdev_pipeline/pipeline_worker_generic.c >> index 42ff4ee..f70ab0c 100644 >> --- a/examples/eventdev_pipeline/pipeline_worker_generic.c >> +++ b/examples/eventdev_pipeline/pipeline_worker_generic.c >> @@ -129,6 +129,7 @@ setup_eventdev_generic(struct worker_data >*worker_data) >> struct rte_event_dev_config config =3D { >> .nb_event_queues =3D nb_queues, >> .nb_event_ports =3D nb_ports, >> + .nb_single_link_event_port_queues =3D 1, >> .nb_events_limit =3D 4096, >> .nb_event_queue_flows =3D 1024, >> .nb_event_port_dequeue_depth =3D 128, >> @@ -143,7 +144,7 @@ setup_eventdev_generic(struct worker_data >*worker_data) >> .schedule_type =3D cdata.queue_type, >> .priority =3D >RTE_EVENT_DEV_PRIORITY_NORMAL, >> .nb_atomic_flows =3D 1024, >> - .nb_atomic_order_sequences =3D 1024, >> + .nb_atomic_order_sequences =3D 1024, >> }; >> struct rte_event_queue_conf tx_q_conf =3D { >> .priority =3D >RTE_EVENT_DEV_PRIORITY_HIGHEST, >> @@ -167,7 +168,8 @@ setup_eventdev_generic(struct worker_data >*worker_data) >> disable_implicit_release =3D (dev_info.event_dev_cap & >> > RTE_EVENT_DEV_CAP_IMPLICIT_RELEASE_DISABLE); >> >> - wkr_p_conf.disable_implicit_release =3D disable_implicit_release; >> + wkr_p_conf.event_port_cfg =3D disable_implicit_release ? >> + RTE_EVENT_PORT_CFG_DISABLE_IMPL_REL : 0; >> >> if (dev_info.max_num_events < config.nb_events_limit) >> config.nb_events_limit =3D dev_info.max_num_events; >> diff --git a/examples/eventdev_pipeline/pipeline_worker_tx.c >> b/examples/eventdev_pipeline/pipeline_worker_tx.c >> index 55bb2f7..ca6cd20 100644 >> --- a/examples/eventdev_pipeline/pipeline_worker_tx.c >> +++ b/examples/eventdev_pipeline/pipeline_worker_tx.c >> @@ -436,6 +436,7 @@ setup_eventdev_worker_tx_enq(struct >worker_data >> *worker_data) >> struct rte_event_dev_config config =3D { >> .nb_event_queues =3D nb_queues, >> .nb_event_ports =3D nb_ports, >> + .nb_single_link_event_port_queues =3D 0, >> .nb_events_limit =3D 4096, >> .nb_event_queue_flows =3D 1024, >> .nb_event_port_dequeue_depth =3D 128, >> diff --git a/examples/l2fwd-event/l2fwd_event_generic.c >b/examples/l2fwd- >> event/l2fwd_event_generic.c >> index 2dc95e5..9a3167c 100644 >> --- a/examples/l2fwd-event/l2fwd_event_generic.c >> +++ b/examples/l2fwd-event/l2fwd_event_generic.c >> @@ -126,8 +126,11 @@ l2fwd_event_port_setup_generic(struct >l2fwd_resources >> *rsrc) >> if (def_p_conf.enqueue_depth < event_p_conf.enqueue_depth) >> event_p_conf.enqueue_depth =3D >def_p_conf.enqueue_depth; >> >> - event_p_conf.disable_implicit_release =3D >> - evt_rsrc->disable_implicit_release; >> + event_p_conf.event_port_cfg =3D 0; >> + if (evt_rsrc->disable_implicit_release) >> + event_p_conf.event_port_cfg |=3D >> + RTE_EVENT_PORT_CFG_DISABLE_IMPL_REL; >> + >> evt_rsrc->deq_depth =3D def_p_conf.dequeue_depth; >> >> for (event_p_id =3D 0; event_p_id < evt_rsrc->evp.nb_ports; >> diff --git a/examples/l2fwd-event/l2fwd_event_internal_port.c >b/examples/l2fwd- >> event/l2fwd_event_internal_port.c >> index 63d57b4..203a14c 100644 >> --- a/examples/l2fwd-event/l2fwd_event_internal_port.c >> +++ b/examples/l2fwd-event/l2fwd_event_internal_port.c >> @@ -123,8 +123,10 @@ >l2fwd_event_port_setup_internal_port(struct >> l2fwd_resources *rsrc) >> if (def_p_conf.enqueue_depth < event_p_conf.enqueue_depth) >> event_p_conf.enqueue_depth =3D >def_p_conf.enqueue_depth; >> >> - event_p_conf.disable_implicit_release =3D >> - evt_rsrc->disable_implicit_release; >> + event_p_conf.event_port_cfg =3D 0; >> + if (evt_rsrc->disable_implicit_release) >> + event_p_conf.event_port_cfg |=3D >> + RTE_EVENT_PORT_CFG_DISABLE_IMPL_REL; >> >> for (event_p_id =3D 0; event_p_id < evt_rsrc->evp.nb_ports; >> > event_p_id++) { >> diff --git a/examples/l3fwd/l3fwd_event_generic.c >> b/examples/l3fwd/l3fwd_event_generic.c >> index f8c9843..c80573f 100644 >> --- a/examples/l3fwd/l3fwd_event_generic.c >> +++ b/examples/l3fwd/l3fwd_event_generic.c >> @@ -115,8 +115,11 @@ l3fwd_event_port_setup_generic(void) >> if (def_p_conf.enqueue_depth < event_p_conf.enqueue_depth) >> event_p_conf.enqueue_depth =3D >def_p_conf.enqueue_depth; >> >> - event_p_conf.disable_implicit_release =3D >> - evt_rsrc->disable_implicit_release; >> + event_p_conf.event_port_cfg =3D 0; >> + if (evt_rsrc->disable_implicit_release) >> + event_p_conf.event_port_cfg |=3D >> + RTE_EVENT_PORT_CFG_DISABLE_IMPL_REL; >> + >> evt_rsrc->deq_depth =3D def_p_conf.dequeue_depth; >> >> for (event_p_id =3D 0; event_p_id < evt_rsrc->evp.nb_ports; >> diff --git a/examples/l3fwd/l3fwd_event_internal_port.c >> b/examples/l3fwd/l3fwd_event_internal_port.c >> index 03ac581..9916a7f 100644 >> --- a/examples/l3fwd/l3fwd_event_internal_port.c >> +++ b/examples/l3fwd/l3fwd_event_internal_port.c >> @@ -113,8 +113,10 @@ l3fwd_event_port_setup_internal_port(void) >> if (def_p_conf.enqueue_depth < event_p_conf.enqueue_depth) >> event_p_conf.enqueue_depth =3D >def_p_conf.enqueue_depth; >> >> - event_p_conf.disable_implicit_release =3D >> - evt_rsrc->disable_implicit_release; >> + event_p_conf.event_port_cfg =3D 0; >> + if (evt_rsrc->disable_implicit_release) >> + event_p_conf.event_port_cfg |=3D >> + RTE_EVENT_PORT_CFG_DISABLE_IMPL_REL; >> >> for (event_p_id =3D 0; event_p_id < evt_rsrc->evp.nb_ports; >> > event_p_id++) { >> -- >> 2.6.4