From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga05.intel.com (mga05.intel.com [192.55.52.43]) by dpdk.org (Postfix) with ESMTP id B7435D4A8 for ; Thu, 30 Mar 2017 16:28:47 +0200 (CEST) Received: from fmsmga005.fm.intel.com ([10.253.24.32]) by fmsmga105.fm.intel.com with ESMTP; 30 Mar 2017 07:28:46 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.36,246,1486454400"; d="scan'208";a="82329454" Received: from kmsmsx152.gar.corp.intel.com ([172.21.73.87]) by fmsmga005.fm.intel.com with ESMTP; 30 Mar 2017 07:28:45 -0700 Received: from pgsmsx101.gar.corp.intel.com ([169.254.1.119]) by KMSMSX152.gar.corp.intel.com ([169.254.11.139]) with mapi id 14.03.0248.002; Thu, 30 Mar 2017 22:28:44 +0800 From: "Dai, Wei" To: "Su, David W" , "dev@dpdk.org" CC: "Su, David W" Thread-Topic: [dpdk-dev] [PATCH] net/ixgbe: keep interrupt throttling disabled Thread-Index: AQHSc3J+JZUXV573r0OABwdph84f36Gt1z/g Date: Thu, 30 Mar 2017 14:28:44 +0000 Message-ID: <49759EB36A64CF4892C1AFEC9231E8D650A23B96@PGSMSX101.gar.corp.intel.com> References: <1484953825-3203-1-git-send-email-david.w.su@intel.com> In-Reply-To: <1484953825-3203-1-git-send-email-david.w.su@intel.com> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiMjJlMzU2NDItNTY0ZC00MmViLWI4MGItYWQ3ZjlkZGRlNWIxIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX0lDIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE1LjkuNi42IiwiVHJ1c3RlZExhYmVsSGFzaCI6IitQR1YweHJqMmQyQWVyNWR2Z0xYZTQ0czFJM2pNckFGMTZXNE1oU0xvWmc9In0= x-ctpclassification: CTP_IC x-originating-ip: [172.30.20.206] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH] net/ixgbe: keep interrupt throttling disabled 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, 30 Mar 2017 14:28:48 -0000 Hi, David The code to be removed set the minimum interrupt interval of queue 0 to 0x7= 9E. According to datasheet, this value has something wrong because it wirte the= least=20 reserved 3 bits to 110. Anyway, it intends to set a non-zero minimum interr= upt interval. ixgbe_configure_msix( ) is only called by ixgbe_dev_start( ). After it is called, ixgbe_dev_rx_ini( ) is called. And ixgbe_set_rsc( ) is called in ixgbe_dev_rx_init( ). In ixgbe_set_rsc( ), if RSC is enabled, the ITR (interrupt interval) is set= to 500us again. So I think enabling immediate interrupt response by removing these codes is= not suitable. It should be done in other code where interrupt mode Rx is configured. > Subject: [dpdk-dev] [PATCH] net/ixgbe: keep interrupt throttling disabled >=20 > The code being removed would enable time-based interrupt throttling for t= he > first MSI-X interrupt vector. This would throttle link status change int= errupts > for NICs bound to vfio_pci driver; but for igb_uio driver, rx queue 0 int= errupts > would be throttled. This resulted in inconsistent latencies in a DPDK in= terrupt > mode packet forwarding application between the 2 drivers. >=20 > We'd like DPDK interrupt mode applications to be awaken by inbound packet > interrupts as soon as they are received regardless of interrupt interval, > interrupt throttling should be kept disabled. >=20 > Signed-off-by: David Su > --- > drivers/net/ixgbe/ixgbe_ethdev.c | 2 -- > 1 files changed, 0 insertions(+), 2 deletions(-) >=20 > diff --git a/drivers/net/ixgbe/ixgbe_ethdev.c > b/drivers/net/ixgbe/ixgbe_ethdev.c > index bdf4e2b..fdfb7a6 100644 > --- a/drivers/net/ixgbe/ixgbe_ethdev.c > +++ b/drivers/net/ixgbe/ixgbe_ethdev.c > @@ -5815,8 +5815,6 @@ ixgbe_configure_msix(struct rte_eth_dev *dev) > default: > break; > } > - IXGBE_WRITE_REG(hw, IXGBE_EITR(IXGBE_MISC_VEC_ID), > - IXGBE_MIN_INTER_INTERRUPT_INTERVAL_DEFAULT & 0xFFF); >=20 > /* set up to autoclear timer, and the vectors */ > mask =3D IXGBE_EIMS_ENABLE_MASK; > -- > 1.7.0.4