From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga11.intel.com ([192.55.52.93]:50354 "EHLO mga11.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752784AbcKCKse (ORCPT ); Thu, 3 Nov 2016 06:48:34 -0400 From: Felipe Balbi To: Peter Chen , David Miller Cc: Andy Duan , linux-usb@vger.kernel.org, ville.syrjala@linux.intel.com, stable@vger.kernel.org Subject: Re: [PATCH] usb: gadget: u_ether: remove interrupt throttling In-Reply-To: <20161103095356.GG894@b29397-desktop> References: <20161101112959.19640-1-felipe.balbi@linux.intel.com> <20161102060202.GD28525@b29397-desktop> <20161102.112254.1243059410485662386.davem@davemloft.net> <20161103002300.GA894@b29397-desktop> <87wpglqc15.fsf@linux.intel.com> <20161103090310.GC894@b29397-desktop> <20161103095356.GG894@b29397-desktop> Date: Thu, 03 Nov 2016 12:48:08 +0200 Message-ID: <87ins4n8k7.fsf@linux.intel.com> MIME-Version: 1.0 Content-Type: multipart/signed; boundary="=-=-="; micalg=pgp-sha256; protocol="application/pgp-signature" Sender: stable-owner@vger.kernel.org List-ID: --=-=-= Content-Type: text/plain Content-Transfer-Encoding: quoted-printable Hi, Peter Chen writes: >> > Peter Chen writes: >> > > On Wed, Nov 02, 2016 at 11:22:54AM -0400, David Miller wrote: >> > >> From: Peter Chen >> > >> Date: Wed, 2 Nov 2016 14:02:02 +0800 >> > >>=20 >> > >> > Felipe, it may increase cpu utilization since more interrupts wil= l be there, >> > >> > it may affect the SoC which has lower cpu frequency. This code ex= isted >> > >> > many years, why this problem has only reported at dwc3 recently? >> > >>=20 >> > >> It's a bug, and it's going to cause TCP sockets to potentially hang. >> > >>=20 >> > > >> > > For some controllers, it is, so we need to add parameter for user >> > > to see if interrupt migration is supported or not. >> >=20 >> > not for some controller, for ALL networking drivers. >> >=20 >> > > But just like some ethernet controllers, some USB controllers support >> > > hardware timeout mechanism which interrupt will be triggered after >> > > some uFrame occurs if the transaction has completed but not required >> > > to interrupt, it is used to support interrupt migration like etherne= t. >> >=20 >> > you're missing the point. What Dave Miller is saying is that it's ALWA= YS >> > a bug to delay completion of SKBs. The only thing you're doing with >> > chipidea is delaying interrupt by up to 125us; which is still a bug fr= om >> > the point of view of the networking layer, but it's more difficult to >> > perceive any problems because of the short time where interrupt is >> > delayed. >> >=20 >>=20 >> If it is ALWAYS a bug to delay completion of SKBs, how the local >> ethernet driver designs interrupt migration? >>=20 > > Just a quick test, I delete dev_kfree_skb_any at tx_complete, not find > any problems by using simple "ping test", just free memory is less and > less. David, do you really mean free tx skb buffer with limited time, > but not return NETDEV_TX_OK by ->ndo_start_xmit with limited time? ping *will* work just fine. One easy test to *see* the problem is to SSH to a machine using g_ether, then run: $ while true; do dmesg; done you will notice it is rather laggy. Now remove throttling and the lags are gone. =2D-=20 balbi --=-=-= Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- iQIcBAEBCAAGBQJYGxXoAAoJEMy+uJnhGpkGMvsQAL6H08rWQsTe/NiaiTWurCun CUMdbAK5xtnn1yeN2KHyKQy1kC9kBjeNWoaMhwIz4VZlT418NUnXbkY/7xGOzbKu w/LMUVlBQWrLIZZM4gcH/d8btbGVI93Lo2K0R8qhx9A73DVNEDPWKMLRfUNnw3IE pcPynmvoYSpv83Sw0TREZh3dof0Fpz7IFAq1qjvksnQiotut9MaC7+NNtUPWeox4 XyMU4RtlIMeqp9KZClctRIOVf0mywdu1d8sRi/ribhbpQLxfpld23qcNOcteWgtD V+cYlFpE4kRkRIPV4Y3krYg/ruTOvG2FkJmRrNons3kyzjWBy7zKatm+ycu/uP5s rXECh9xeZAcDBOpfIa+JwzLWVfwTNE6/vaQu+B+fUqnMNDBDfbnGe3AavPsIDU9l QI/XuhhKJDJ6WagzPFxVwW93p2oe/+eeTEfalDDbKnI+feLZm2PM8ZhEoyefcLh+ kVeMiLb2hkxU1/q2TqfsvWns0PcKEVDIUIBUv2SF37JyR6ZvNjst0Ctuol1QWL3e fExIhdBh5h8FB9cyDSt6udSxMOJ8NrN5mrfWPy3DmG/A5xL8JBhRv9vYbR0bsPeO jMf0L85RRxQfOxMEfqxt2Kd5tKqUaQT3xHw6oPcASzY387ykdrZuxBmCcBLqjx2v EP05Sb35R9FWi5/hXKsh =CrHI -----END PGP SIGNATURE----- --=-=-=--