From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by dpdk.org (Postfix) with ESMTP id 2C3CB2BCD for ; Thu, 3 May 2018 08:10:49 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga106.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 02 May 2018 23:10:49 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.49,356,1520924400"; d="scan'208";a="221253524" Received: from fmsmsx105.amr.corp.intel.com ([10.18.124.203]) by orsmga005.jf.intel.com with ESMTP; 02 May 2018 23:10:48 -0700 Received: from shsmsx151.ccr.corp.intel.com (10.239.6.50) by FMSMSX105.amr.corp.intel.com (10.18.124.203) with Microsoft SMTP Server (TLS) id 14.3.319.2; Wed, 2 May 2018 23:10:48 -0700 Received: from shsmsx103.ccr.corp.intel.com ([169.254.4.210]) by SHSMSX151.ccr.corp.intel.com ([169.254.3.179]) with mapi id 14.03.0319.002; Thu, 3 May 2018 14:10:46 +0800 From: "Zhang, Qi Z" To: "Ananyev, Konstantin" , "Yigit, Ferruh" CC: "Dai, Wei" , "Lu, Wenzhuo" , "Wang, Xiao W" , "dev@dpdk.org" Thread-Topic: [PATCH 1/3] net/ixgbe: remove dependence on Tx queue flags Thread-Index: AQHT4cP5IYkqRaBRW0eBBg9QMXfEnqQbxjCAgAFtR0CAAFIx0A== Date: Thu, 3 May 2018 06:10:46 +0000 Message-ID: <039ED4275CED7440929022BC67E70611531AB85B@SHSMSX103.ccr.corp.intel.com> References: <20180502031626.66443-1-qi.z.zhang@intel.com> <20180502031626.66443-2-qi.z.zhang@intel.com> <2601191342CEEE43887BDE71AB977258AEDC15F0@irsmsx105.ger.corp.intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiYWE3OTc0MzktODM0MC00ZmNhLWJhMzAtOTNkNDhhNzMwZjA4IiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjIuNS4xOCIsIlRydXN0ZWRMYWJlbEhhc2giOiJuMkNCRGxNSjJHb3RZd0VLSFwvdGo1dk9WVzMrd0FQUHdMZnNKSmhUUHJ1T1kwTzFra1Q4eXpCVkJVOFwvbDBqVk4ifQ== x-ctpclassification: CTP_NT dlp-product: dlpe-windows dlp-version: 11.0.200.100 dlp-reaction: no-action x-originating-ip: [10.239.127.40] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH 1/3] net/ixgbe: remove dependence on Tx queue flags 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: , X-List-Received-Date: Thu, 03 May 2018 06:10:50 -0000 > -----Original Message----- > From: Zhang, Qi Z > Sent: Thursday, May 3, 2018 9:49 AM > To: Ananyev, Konstantin ; Yigit, Ferruh > > Cc: Dai, Wei ; Lu, Wenzhuo ; > Wang, Xiao W ; dev@dpdk.org > Subject: RE: [PATCH 1/3] net/ixgbe: remove dependence on Tx queue flags >=20 > Hi Konstantin: >=20 > > -----Original Message----- > > From: Ananyev, Konstantin > > Sent: Wednesday, May 2, 2018 7:23 PM > > To: Zhang, Qi Z ; Yigit, Ferruh > > > > Cc: Dai, Wei ; Lu, Wenzhuo ; > > Wang, Xiao W ; dev@dpdk.org > > Subject: RE: [PATCH 1/3] net/ixgbe: remove dependence on Tx queue > > flags > > > > > > > > > -----Original Message----- > > > From: Zhang, Qi Z > > > Sent: Wednesday, May 2, 2018 4:16 AM > > > To: Yigit, Ferruh > > > Cc: Dai, Wei ; Lu, Wenzhuo > > > ; Ananyev, Konstantin > > > ; Wang, Xiao W > > > ; dev@dpdk.org; Zhang, Qi Z > > > > > > Subject: [PATCH 1/3] net/ixgbe: remove dependence on Tx queue flags > > > > > > Since we move to new offload APIs, txq_flags is no long needed. > > > This patch remove the dependence on that. > > > > > > Fixes: 51215925a32f ("net/ixgbe: convert to new Tx offloads API") > > > > > > Signed-off-by: Qi Zhang > > > --- > > > drivers/net/ixgbe/ixgbe_ethdev.c | 6 ------ > > > drivers/net/ixgbe/ixgbe_rxtx.c | 2 -- > > > drivers/net/ixgbe/ixgbe_rxtx.h | 1 - > > > 3 files changed, 9 deletions(-) > > > > > > diff --git a/drivers/net/ixgbe/ixgbe_ethdev.c > > > b/drivers/net/ixgbe/ixgbe_ethdev.c > > > index 6088c7e48..709251fbb 100644 > > > --- a/drivers/net/ixgbe/ixgbe_ethdev.c > > > +++ b/drivers/net/ixgbe/ixgbe_ethdev.c > > > @@ -3727,9 +3727,6 @@ ixgbe_dev_info_get(struct rte_eth_dev *dev, > > struct rte_eth_dev_info *dev_info) > > > }, > > > .tx_free_thresh =3D IXGBE_DEFAULT_TX_FREE_THRESH, > > > .tx_rs_thresh =3D IXGBE_DEFAULT_TX_RSBIT_THRESH, > > > - .txq_flags =3D ETH_TXQ_FLAGS_NOMULTSEGS | > > > - ETH_TXQ_FLAGS_NOOFFLOADS | > > > - ETH_TXQ_FLAGS_IGNORE, > > > .offloads =3D 0, > > > }; > > > > > > But old apps still use txq_flags returned by dev_info_get. > > Removing it right now will mean this value will be undefined. >=20 > My understanding is PMD should not be aware of txq_flags anymore. > and ethdev layer is the place to responsible for the conversion if we thi= nk it still > necessary to support txq_flags for old applicaiton >=20 > But I got your point, there is something missing if we only have the PMD = patch, > so I'd like to hold this until ethdev layer is ready and I think this wil= l not block > https://dpdk.org/ml/archives/dev/2018-May/099864.html since txq_flags is > not be involved to any decision already. I've submitted the patch for the conversion in ethdev. https://dpdk.org/dev/patchwork/patch/39277/ =20 >=20 > Regards > Qi >=20 > > > > > > > > @@ -3835,9 +3832,6 @@ ixgbevf_dev_info_get(struct rte_eth_dev *dev, > > > }, > > > .tx_free_thresh =3D IXGBE_DEFAULT_TX_FREE_THRESH, > > > .tx_rs_thresh =3D IXGBE_DEFAULT_TX_RSBIT_THRESH, > > > - .txq_flags =3D ETH_TXQ_FLAGS_NOMULTSEGS | > > > - ETH_TXQ_FLAGS_NOOFFLOADS | > > > - ETH_TXQ_FLAGS_IGNORE, > > > .offloads =3D 0, > > > }; > > > > > > diff --git a/drivers/net/ixgbe/ixgbe_rxtx.c > > > b/drivers/net/ixgbe/ixgbe_rxtx.c index 2892436e9..47045ddd0 100644 > > > --- a/drivers/net/ixgbe/ixgbe_rxtx.c > > > +++ b/drivers/net/ixgbe/ixgbe_rxtx.c > > > @@ -2620,7 +2620,6 @@ ixgbe_dev_tx_queue_setup(struct rte_eth_dev > > *dev, > > > txq->reg_idx =3D (uint16_t)((RTE_ETH_DEV_SRIOV(dev).active =3D=3D 0= ) ? > > > queue_idx : RTE_ETH_DEV_SRIOV(dev).def_pool_q_idx + > > queue_idx); > > > txq->port_id =3D dev->data->port_id; > > > - txq->txq_flags =3D tx_conf->txq_flags; > > > txq->offloads =3D tx_conf->offloads; > > > txq->ops =3D &def_txq_ops; > > > txq->tx_deferred_start =3D tx_conf->tx_deferred_start; @@ -5441,7 > > > +5440,6 @@ ixgbe_txq_info_get(struct rte_eth_dev *dev, uint16_t > > > queue_id, > > > > > > qinfo->conf.tx_free_thresh =3D txq->tx_free_thresh; > > > qinfo->conf.tx_rs_thresh =3D txq->tx_rs_thresh; > > > - qinfo->conf.txq_flags =3D txq->txq_flags; > > > > > > Same here - old apps can still use it. > > Ideally we'll have to fill it based on txq->offloads value. > > Konstantin > > > > > qinfo->conf.offloads =3D txq->offloads; > > > qinfo->conf.tx_deferred_start =3D txq->tx_deferred_start; } diff > > > --git a/drivers/net/ixgbe/ixgbe_rxtx.h > > > b/drivers/net/ixgbe/ixgbe_rxtx.h index 7dbbbe5b3..20ef7b6ff 100644 > > > --- a/drivers/net/ixgbe/ixgbe_rxtx.h > > > +++ b/drivers/net/ixgbe/ixgbe_rxtx.h > > > @@ -222,7 +222,6 @@ struct ixgbe_tx_queue { > > > uint8_t pthresh; /**< Prefetch threshold > register. > > */ > > > uint8_t hthresh; /**< Host threshold register. > */ > > > uint8_t wthresh; /**< Write-back threshold > reg. > > */ > > > - uint32_t txq_flags; /**< Holds flags for this TXq */ > > > uint64_t offloads; /**< Tx offload flags of DEV_TX_OFFLOAD_* */ > > > uint32_t ctx_curr; /**< Hardware context states. > */ > > > /** Hardware context0 history. */ > > > -- > > > 2.13.6