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 53F0EA04B5 for ; Tue, 3 Dec 2019 19:28:03 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 4BBE637AF; Tue, 3 Dec 2019 19:28:03 +0100 (CET) Received: from us-smtp-1.mimecast.com (us-smtp-delivery-1.mimecast.com [205.139.110.120]) by dpdk.org (Postfix) with ESMTP id C2ED51BDFD for ; Tue, 3 Dec 2019 19:28:01 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1575397681; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=GKnPVaLazc2SSxZRN4ul6FfnCZNYpW3DD4F3edbdGSc=; b=TvfgdsHHsmDjvPrts7oBpBZPPzWBhYxg/tpW+wlsVxFFnjFXuzKqvrqgGIkWspGbcMQITZ lqAjQEUbnaMzg6IE/74AqVgW/cnof1GJvawiP+pIAmaQQdU0zbjQQK6Ra6lD+yVSBqpJtM Fwp6FwYnmEqhXv/bHaLQ4/zb2pBdWH0= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-202-btKFTpt7Pq2Qx1egg6EuOg-1; Tue, 03 Dec 2019 13:27:58 -0500 Received: from smtp.corp.redhat.com (int-mx06.intmail.prod.int.phx2.redhat.com [10.5.11.16]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 0714E800EB8; Tue, 3 Dec 2019 18:27:57 +0000 (UTC) Received: from rh.redhat.com (ovpn-117-10.ams2.redhat.com [10.36.117.10]) by smtp.corp.redhat.com (Postfix) with ESMTP id 27B605C240; Tue, 3 Dec 2019 18:27:55 +0000 (UTC) From: Kevin Traynor To: Rahul Lakkireddy Cc: dpdk stable Date: Tue, 3 Dec 2019 18:26:23 +0000 Message-Id: <20191203182714.17297-14-ktraynor@redhat.com> In-Reply-To: <20191203182714.17297-1-ktraynor@redhat.com> References: <20191203182714.17297-1-ktraynor@redhat.com> MIME-Version: 1.0 X-Scanned-By: MIMEDefang 2.79 on 10.5.11.16 X-MC-Unique: btKFTpt7Pq2Qx1egg6EuOg-1 X-Mimecast-Spam-Score: 0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Subject: [dpdk-stable] patch 'net/cxgbe: add prefix to global functions' has been queued to LTS release 18.11.6 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: stable-bounces@dpdk.org Sender: "stable" Hi, FYI, your patch has been queued to LTS release 18.11.6 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 12/10/19. So please shout if anyone has objections. Also note that after the patch there's a diff of the upstream commit vs the patch applied to the branch. This will indicate if there was any rebasing needed to apply to the stable branch. If there were code changes for rebasi= ng (ie: not only metadata diffs), please double check that the rebase was correctly done. Queued patches are on a temporary branch at: https://github.com/kevintraynor/dpdk-stable-queue This queued commit can be viewed at: https://github.com/kevintraynor/dpdk-stable-queue/commit/193ed3b78aafed5b26= 1da2d7aacc3062cda3a547 Thanks. Kevin. --- >From 193ed3b78aafed5b261da2d7aacc3062cda3a547 Mon Sep 17 00:00:00 2001 From: Rahul Lakkireddy Date: Sat, 28 Sep 2019 02:00:01 +0530 Subject: [PATCH] net/cxgbe: add prefix to global functions [ upstream commit 71e9b334a23764a5baa55cbacbdd99aeb9733631 ] To avoid name collisions, add cxgbe_ prefix to some global functions. Also, make some local functions static in cxgbe_filter.c. Fixes: ee61f5113b17 ("net/cxgbe: parse and validate flows") Fixes: 9eb2c9a48072 ("net/cxgbe: implement flow create operation") Fixes: 3a381a4116ed ("net/cxgbe: query firmware for HASH filter resources") Fixes: af44a577988b ("net/cxgbe: support to offload flows to HASH region") Fixes: 41dc98b0827a ("net/cxgbe: support to delete flows in HASH region") Fixes: 23af667f1507 ("net/cxgbe: add API to program hardware layer 2 table"= ) Signed-off-by: Rahul Lakkireddy --- drivers/net/cxgbe/cxgbe_filter.c | 30 ++++++++++++++++-------------- drivers/net/cxgbe/cxgbe_filter.h | 19 +++++++++---------- drivers/net/cxgbe/cxgbe_flow.c | 6 +++--- drivers/net/cxgbe/cxgbe_main.c | 10 +++++----- drivers/net/cxgbe/l2t.c | 3 ++- drivers/net/cxgbe/l2t.h | 3 ++- 6 files changed, 37 insertions(+), 34 deletions(-) diff --git a/drivers/net/cxgbe/cxgbe_filter.c b/drivers/net/cxgbe/cxgbe_fil= ter.c index 932127018..2eee7166c 100644 --- a/drivers/net/cxgbe/cxgbe_filter.c +++ b/drivers/net/cxgbe/cxgbe_filter.c @@ -14,5 +14,5 @@ * Initialize Hash Filters */ -int init_hash_filter(struct adapter *adap) +int cxgbe_init_hash_filter(struct adapter *adap) { =09unsigned int n_user_filters; @@ -53,5 +53,6 @@ int init_hash_filter(struct adapter *adap) * if the requested features have been enabled */ -int validate_filter(struct adapter *adapter, struct ch_filter_specificatio= n *fs) +int cxgbe_validate_filter(struct adapter *adapter, +=09=09=09 struct ch_filter_specification *fs) { =09u32 fconf; @@ -133,5 +134,5 @@ static unsigned int get_filter_steerq(struct rte_eth_de= v *dev, =20 /* Return an error number if the indicated filter isn't writable ... */ -int writable_filter(struct filter_entry *f) +static int writable_filter(struct filter_entry *f) { =09if (f->locked) @@ -214,5 +215,5 @@ static inline void mk_set_tcb_field_ulp(struct filter_e= ntry *f, * Check if entry already filled. */ -bool is_filter_set(struct tid_info *t, int fidx, int family) +bool cxgbe_is_filter_set(struct tid_info *t, int fidx, int family) { =09bool result =3D FALSE; @@ -527,5 +528,5 @@ static int cxgbe_set_hash_filter(struct rte_eth_dev *de= v, =09int ret =3D 0; =20 -=09ret =3D validate_filter(adapter, fs); +=09ret =3D cxgbe_validate_filter(adapter, fs); =09if (ret) =09=09return ret; @@ -618,5 +619,5 @@ out_err: * clears the filter's "pending" status. */ -void clear_filter(struct filter_entry *f) +static void clear_filter(struct filter_entry *f) { =09if (f->clipt) @@ -690,5 +691,5 @@ static int del_filter_wr(struct rte_eth_dev *dev, unsig= ned int fidx) } =20 -int set_filter_wr(struct rte_eth_dev *dev, unsigned int fidx) +static int set_filter_wr(struct rte_eth_dev *dev, unsigned int fidx) { =09struct adapter *adapter =3D ethdev2adap(dev); @@ -868,5 +869,5 @@ int cxgbe_del_filter(struct rte_eth_dev *dev, unsigned = int filter_id, =09chip_ver =3D CHELSIO_CHIP_VERSION(adapter->params.chip); =20 -=09ret =3D is_filter_set(&adapter->tids, filter_id, fs->type); +=09ret =3D cxgbe_is_filter_set(&adapter->tids, filter_id, fs->type); =09if (!ret) { =09=09dev_warn(adap, "%s: could not find filter entry: %u\n", @@ -940,5 +941,5 @@ int cxgbe_set_filter(struct rte_eth_dev *dev, unsigned = int filter_id, =09chip_ver =3D CHELSIO_CHIP_VERSION(adapter->params.chip); =20 -=09ret =3D validate_filter(adapter, fs); +=09ret =3D cxgbe_validate_filter(adapter, fs); =09if (ret) =09=09return ret; @@ -951,5 +952,5 @@ int cxgbe_set_filter(struct rte_eth_dev *dev, unsigned = int filter_id, =09=09filter_id &=3D ~(0x3); =20 -=09ret =3D is_filter_set(&adapter->tids, filter_id, fs->type); +=09ret =3D cxgbe_is_filter_set(&adapter->tids, filter_id, fs->type); =09if (ret) =09=09return -EBUSY; @@ -1091,5 +1092,6 @@ free_tid: * Handle a Hash filter write reply. */ -void hash_filter_rpl(struct adapter *adap, const struct cpl_act_open_rpl *= rpl) +void cxgbe_hash_filter_rpl(struct adapter *adap, +=09=09=09 const struct cpl_act_open_rpl *rpl) { =09struct tid_info *t =3D &adap->tids; @@ -1159,5 +1161,5 @@ void hash_filter_rpl(struct adapter *adap, const stru= ct cpl_act_open_rpl *rpl) * Handle a LE-TCAM filter write/deletion reply. */ -void filter_rpl(struct adapter *adap, const struct cpl_set_tcb_rpl *rpl) +void cxgbe_filter_rpl(struct adapter *adap, const struct cpl_set_tcb_rpl *= rpl) { =09struct filter_entry *f =3D NULL; @@ -1308,6 +1310,6 @@ get_count: * Handle a Hash filter delete reply. */ -void hash_del_filter_rpl(struct adapter *adap, -=09=09=09 const struct cpl_abort_rpl_rss *rpl) +void cxgbe_hash_del_filter_rpl(struct adapter *adap, +=09=09=09 const struct cpl_abort_rpl_rss *rpl) { =09struct tid_info *t =3D &adap->tids; diff --git a/drivers/net/cxgbe/cxgbe_filter.h b/drivers/net/cxgbe/cxgbe_fil= ter.h index b7bcbf56a..6738ae4f1 100644 --- a/drivers/net/cxgbe/cxgbe_filter.h +++ b/drivers/net/cxgbe/cxgbe_filter.h @@ -249,9 +249,6 @@ cxgbe_bitmap_find_free_region(struct rte_bitmap *bmap, = unsigned int size, } =20 -bool is_filter_set(struct tid_info *, int fidx, int family); -void filter_rpl(struct adapter *adap, const struct cpl_set_tcb_rpl *rpl); -void clear_filter(struct filter_entry *f); -int set_filter_wr(struct rte_eth_dev *dev, unsigned int fidx); -int writable_filter(struct filter_entry *f); +bool cxgbe_is_filter_set(struct tid_info *, int fidx, int family); +void cxgbe_filter_rpl(struct adapter *adap, const struct cpl_set_tcb_rpl *= rpl); int cxgbe_set_filter(struct rte_eth_dev *dev, unsigned int filter_id, =09=09 struct ch_filter_specification *fs, @@ -261,9 +258,11 @@ int cxgbe_del_filter(struct rte_eth_dev *dev, unsigned= int filter_id, =09=09 struct filter_ctx *ctx); int cxgbe_alloc_ftid(struct adapter *adap, unsigned int family); -int init_hash_filter(struct adapter *adap); -void hash_filter_rpl(struct adapter *adap, const struct cpl_act_open_rpl *= rpl); -void hash_del_filter_rpl(struct adapter *adap, -=09=09=09 const struct cpl_abort_rpl_rss *rpl); -int validate_filter(struct adapter *adap, struct ch_filter_specification *= fs); +int cxgbe_init_hash_filter(struct adapter *adap); +void cxgbe_hash_filter_rpl(struct adapter *adap, +=09=09=09 const struct cpl_act_open_rpl *rpl); +void cxgbe_hash_del_filter_rpl(struct adapter *adap, +=09=09=09 const struct cpl_abort_rpl_rss *rpl); +int cxgbe_validate_filter(struct adapter *adap, +=09=09=09 struct ch_filter_specification *fs); int cxgbe_get_filter_count(struct adapter *adapter, unsigned int fidx, =09=09=09 u64 *c, int hash, bool get_byte); diff --git a/drivers/net/cxgbe/cxgbe_flow.c b/drivers/net/cxgbe/cxgbe_flow.= c index 7b87bdf58..17d5608fa 100644 --- a/drivers/net/cxgbe/cxgbe_flow.c +++ b/drivers/net/cxgbe/cxgbe_flow.c @@ -310,5 +310,5 @@ static int cxgbe_validate_fidxondel(struct filter_entry= *f, unsigned int fidx) =09=09return -EINVAL; =09} -=09if (!is_filter_set(&adap->tids, fidx, fs.type)) { +=09if (!cxgbe_is_filter_set(&adap->tids, fidx, fs.type)) { =09=09dev_err(adap, "Already free fidx:%d f:%p\n", fidx, f); =09=09return -EINVAL; @@ -322,5 +322,5 @@ cxgbe_validate_fidxonadd(struct ch_filter_specification= *fs, =09=09=09 struct adapter *adap, unsigned int fidx) { -=09if (is_filter_set(&adap->tids, fidx, fs->type)) { +=09if (cxgbe_is_filter_set(&adap->tids, fidx, fs->type)) { =09=09dev_err(adap, "filter index: %d is busy.\n", fidx); =09=09return -EBUSY; @@ -1017,5 +1017,5 @@ cxgbe_flow_validate(struct rte_eth_dev *dev, =09} =20 -=09if (validate_filter(adap, &flow->fs)) { +=09if (cxgbe_validate_filter(adap, &flow->fs)) { =09=09t4_os_free(flow); =09=09return rte_flow_error_set(e, EINVAL, RTE_FLOW_ERROR_TYPE_HANDLE, diff --git a/drivers/net/cxgbe/cxgbe_main.c b/drivers/net/cxgbe/cxgbe_main.= c index 38938ecc0..2cc4b6d91 100644 --- a/drivers/net/cxgbe/cxgbe_main.c +++ b/drivers/net/cxgbe/cxgbe_main.c @@ -93,17 +93,17 @@ static int fwevtq_handler(struct sge_rspq *q, const __b= e64 *rsp, =09=09const struct cpl_abort_rpl_rss *p =3D (const void *)rsp; =20 -=09=09hash_del_filter_rpl(q->adapter, p); +=09=09cxgbe_hash_del_filter_rpl(q->adapter, p); =09} else if (opcode =3D=3D CPL_SET_TCB_RPL) { =09=09const struct cpl_set_tcb_rpl *p =3D (const void *)rsp; =20 -=09=09filter_rpl(q->adapter, p); +=09=09cxgbe_filter_rpl(q->adapter, p); =09} else if (opcode =3D=3D CPL_ACT_OPEN_RPL) { =09=09const struct cpl_act_open_rpl *p =3D (const void *)rsp; =20 -=09=09hash_filter_rpl(q->adapter, p); +=09=09cxgbe_hash_filter_rpl(q->adapter, p); =09} else if (opcode =3D=3D CPL_L2T_WRITE_RPL) { =09=09const struct cpl_l2t_write_rpl *p =3D (const void *)rsp; =20 -=09=09do_l2t_write_rpl(q->adapter, p); +=09=09cxgbe_do_l2t_write_rpl(q->adapter, p); =09} else { =09=09dev_err(adapter, "unexpected CPL %#x on FW event queue\n", @@ -1180,5 +1180,5 @@ static int adap_init0(struct adapter *adap) =09if ((caps_cmd.niccaps & cpu_to_be16(FW_CAPS_CONFIG_NIC_HASHFILTER)) && =09 is_t6(adap->params.chip)) { -=09=09if (init_hash_filter(adap) < 0) +=09=09if (cxgbe_init_hash_filter(adap) < 0) =09=09=09goto bye; =09} diff --git a/drivers/net/cxgbe/l2t.c b/drivers/net/cxgbe/l2t.c index 814188fea..deee261c6 100644 --- a/drivers/net/cxgbe/l2t.c +++ b/drivers/net/cxgbe/l2t.c @@ -22,5 +22,6 @@ void cxgbe_l2t_release(struct l2t_entry *e) * the L2T index it refers to. */ -void do_l2t_write_rpl(struct adapter *adap, const struct cpl_l2t_write_rpl= *rpl) +void cxgbe_do_l2t_write_rpl(struct adapter *adap, +=09=09=09 const struct cpl_l2t_write_rpl *rpl) { =09struct l2t_data *d =3D adap->l2t; diff --git a/drivers/net/cxgbe/l2t.h b/drivers/net/cxgbe/l2t.h index 22a34e388..d2cecf411 100644 --- a/drivers/net/cxgbe/l2t.h +++ b/drivers/net/cxgbe/l2t.h @@ -54,4 +54,5 @@ struct l2t_entry *cxgbe_l2t_alloc_switching(struct rte_et= h_dev *dev, u16 vlan, =09=09=09=09=09 u8 port, u8 *dmac); void cxgbe_l2t_release(struct l2t_entry *e); -void do_l2t_write_rpl(struct adapter *p, const struct cpl_l2t_write_rpl *r= pl); +void cxgbe_do_l2t_write_rpl(struct adapter *p, +=09=09=09 const struct cpl_l2t_write_rpl *rpl); #endif /* _CXGBE_L2T_H_ */ --=20 2.21.0 --- Diff of the applied patch vs upstream commit (please double-check if non-= empty: --- --- -=092019-12-03 17:29:52.631290349 +0000 +++ 0014-net-cxgbe-add-prefix-to-global-functions.patch=092019-12-03 17:29:= 51.713750723 +0000 @@ -1 +1 @@ -From 71e9b334a23764a5baa55cbacbdd99aeb9733631 Mon Sep 17 00:00:00 2001 +From 193ed3b78aafed5b261da2d7aacc3062cda3a547 Mon Sep 17 00:00:00 2001 @@ -5,0 +6,2 @@ +[ upstream commit 71e9b334a23764a5baa55cbacbdd99aeb9733631 ] + @@ -15 +16,0 @@ -Cc: stable@dpdk.org @@ -28 +29 @@ -index 7fcee5c0a..cc8774c1d 100644 +index 932127018..2eee7166c 100644 @@ -31 +32 @@ -@@ -15,5 +15,5 @@ +@@ -14,5 +14,5 @@ @@ -38 +39 @@ -@@ -54,5 +54,6 @@ int init_hash_filter(struct adapter *adap) +@@ -53,5 +53,6 @@ int init_hash_filter(struct adapter *adap) @@ -46 +47 @@ -@@ -134,5 +135,5 @@ static unsigned int get_filter_steerq(struct rte_eth_d= ev *dev, +@@ -133,5 +134,5 @@ static unsigned int get_filter_steerq(struct rte_eth_d= ev *dev, @@ -53 +54 @@ -@@ -215,5 +216,5 @@ static inline void mk_set_tcb_field_ulp(struct filter_= entry *f, +@@ -214,5 +215,5 @@ static inline void mk_set_tcb_field_ulp(struct filter_= entry *f, @@ -60 +61 @@ -@@ -528,5 +529,5 @@ static int cxgbe_set_hash_filter(struct rte_eth_dev *d= ev, +@@ -527,5 +528,5 @@ static int cxgbe_set_hash_filter(struct rte_eth_dev *d= ev, @@ -67 +68 @@ -@@ -619,5 +620,5 @@ out_err: +@@ -618,5 +619,5 @@ out_err: @@ -74 +75 @@ -@@ -691,5 +692,5 @@ static int del_filter_wr(struct rte_eth_dev *dev, unsi= gned int fidx) +@@ -690,5 +691,5 @@ static int del_filter_wr(struct rte_eth_dev *dev, unsi= gned int fidx) @@ -81 +82 @@ -@@ -869,5 +870,5 @@ int cxgbe_del_filter(struct rte_eth_dev *dev, unsigned= int filter_id, +@@ -868,5 +869,5 @@ int cxgbe_del_filter(struct rte_eth_dev *dev, unsigned= int filter_id, @@ -88 +89 @@ -@@ -941,5 +942,5 @@ int cxgbe_set_filter(struct rte_eth_dev *dev, unsigned= int filter_id, +@@ -940,5 +941,5 @@ int cxgbe_set_filter(struct rte_eth_dev *dev, unsigned= int filter_id, @@ -95 +96 @@ -@@ -952,5 +953,5 @@ int cxgbe_set_filter(struct rte_eth_dev *dev, unsigned= int filter_id, +@@ -951,5 +952,5 @@ int cxgbe_set_filter(struct rte_eth_dev *dev, unsigned= int filter_id, @@ -102 +103 @@ -@@ -1092,5 +1093,6 @@ free_tid: +@@ -1091,5 +1092,6 @@ free_tid: @@ -110 +111 @@ -@@ -1160,5 +1162,5 @@ void hash_filter_rpl(struct adapter *adap, const str= uct cpl_act_open_rpl *rpl) +@@ -1159,5 +1161,5 @@ void hash_filter_rpl(struct adapter *adap, const str= uct cpl_act_open_rpl *rpl) @@ -117 +118 @@ -@@ -1358,6 +1360,6 @@ int cxgbe_clear_filter_count(struct adapter *adapter= , unsigned int fidx, +@@ -1308,6 +1310,6 @@ get_count: @@ -127 +128 @@ -index 0c67d2d15..1964730ba 100644 +index b7bcbf56a..6738ae4f1 100644 @@ -160 +161 @@ -index d3de689c3..848c61f02 100644 +index 7b87bdf58..17d5608fa 100644 @@ -177 +178 @@ -@@ -1020,5 +1020,5 @@ cxgbe_flow_validate(struct rte_eth_dev *dev, +@@ -1017,5 +1017,5 @@ cxgbe_flow_validate(struct rte_eth_dev *dev, @@ -185 +186 @@ -index 620f60b4d..c3e6b9557 100644 +index 38938ecc0..2cc4b6d91 100644 @@ -218 +219 @@ -index 6faf624f7..f9d651fe0 100644 +index 814188fea..deee261c6 100644 @@ -221 +222 @@ -@@ -23,5 +23,6 @@ void cxgbe_l2t_release(struct l2t_entry *e) +@@ -22,5 +22,6 @@ void cxgbe_l2t_release(struct l2t_entry *e) @@ -230 +231 @@ -index 326abfde4..2c489e4aa 100644 +index 22a34e388..d2cecf411 100644