From owner-freebsd-net@FreeBSD.ORG Sun Oct 30 17:54:36 2011 Return-Path: Delivered-To: freebsd-net@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 51C23106566B for ; Sun, 30 Oct 2011 17:54:36 +0000 (UTC) (envelope-from jfvogel@gmail.com) Received: from mail-wy0-f182.google.com (mail-wy0-f182.google.com [74.125.82.182]) by mx1.freebsd.org (Postfix) with ESMTP id CB4328FC08 for ; Sun, 30 Oct 2011 17:54:35 +0000 (UTC) Received: by wyh11 with SMTP id 11so1176227wyh.13 for ; Sun, 30 Oct 2011 10:54:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=n0ZznAjjit9oNMKBU/8qvkyBpLSY3YAt+OYDm++cJ74=; b=FTD+ZdBZPeBfsq2tIB/pP5XMu1xe8tuNsI1jVN2/vlQuzmczmee/cYpMOAC/UkhVBO ck5snCd/rzVkUs5ImksCmRR4z2nq1jJaLn+5IggCffL9rhd459nkJ+XHieYfIW5ZPe++ JBwwI8IQT00wEi39X8APw2BZvfCeveGoQs/Ro= MIME-Version: 1.0 Received: by 10.227.205.76 with SMTP id fp12mr15362801wbb.17.1319997274610; Sun, 30 Oct 2011 10:54:34 -0700 (PDT) Received: by 10.180.24.232 with HTTP; Sun, 30 Oct 2011 10:54:34 -0700 (PDT) In-Reply-To: <4EAD7490.4040108@gmail.com> References: <4E8F157A.40702@sentex.net> <4E8F51D4.1060509@sentex.net> <4EA7E203.3020306@sepehrs.com> <4EA80818.3030504@sentex.net> <4EA80F88.4000400@hotplug.ru> <4EA82715.2000404@gmail.com> <4EA8FA40.7010504@hotplug.ru> <4EA91836.2040508@gmail.com> <4EA959EE.2070806@hotplug.ru> <4EAD116A.8090006@gmail.com> <4EAD7490.4040108@gmail.com> Date: Sun, 30 Oct 2011 10:54:34 -0700 Message-ID: From: Jack Vogel To: Hooman Fazaeli Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Cc: pyunyh@gmail.com, freebsd-net@freebsd.org, Ryan Stone , Jason Wolfe , Emil Muratov Subject: Re: Intel 82574L interface wedging on em 7.1.9/7.2.3 when MSIX enabled X-BeenThere: freebsd-net@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Networking and TCP/IP with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 30 Oct 2011 17:54:36 -0000 I have a delta to em that is coming, it has some changes that effect 82574 anyway and everyone with issues should test it. I'll give this issue some thought tomorrow. Jack On Sun, Oct 30, 2011 at 9:00 AM, Hooman Fazaeli wrote: > On 10/30/2011 6:03 PM, Ryan Stone wrote: > >> On Sun, Oct 30, 2011 at 4:57 AM, Hooman Fazaeli> >> wrote: >> >>> IMHO, this is not a driver issue and the real fix would be to change >>> IFQ_HANDOFF to call if_start when the queue is full. >>> >> I'm not sure that's the right approach. 99% of the time, calling >> if_start when the queue is full will be a waste of time. It seems to >> me that the link interrupt handler needs to kick off the tx task to >> drain the tx queue instead. >> > If the queue were not full, system would consume the CPU for sending > packets. Now, that it is full, a much little time is used to recover > from a (temporary) problem. Not a big deal! > > Furthermore, the most common case for queue being full is stack > sending packets too fast. In this case OACTIVE is set and if_start > is not called at all. > > Changing HANDOFF has the benefit that it is simple, can be implemented > fast and > fixes the problem once for all drivers and for all such dangerous bugs not > yet > discovered. It also makes drivers' code simpler. > > >