From owner-freebsd-current@FreeBSD.ORG Thu Aug 24 00:30:30 2006 Return-Path: X-Original-To: freebsd-current@freebsd.org Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id A287116A4DF for ; Thu, 24 Aug 2006 00:30:30 +0000 (UTC) (envelope-from pyunyh@gmail.com) Received: from py-out-1112.google.com (py-out-1112.google.com [64.233.166.179]) by mx1.FreeBSD.org (Postfix) with ESMTP id C434243D4C for ; Thu, 24 Aug 2006 00:30:28 +0000 (GMT) (envelope-from pyunyh@gmail.com) Received: by py-out-1112.google.com with SMTP id o67so412989pye for ; Wed, 23 Aug 2006 17:30:28 -0700 (PDT) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:date:from:to:cc:subject:message-id:reply-to:references:mime-version:content-type:content-disposition:in-reply-to:user-agent; b=SU7YgaJSBY6OeD3Cu5yJA2HfOosbPcGrykpqHlyl4dS1+R6lzrdNG5wsFuo5angPkTt1IJ5KkGkfcSSthCmFGJ276OnUo2H7UJYFDdkbmiIjpjU2gyFl8yGfU6FUj7Nw5cdKhRiwdFMM0MExrzxWJR0Trj86+qi1+Ybou7L/DiA= Received: by 10.35.100.6 with SMTP id c6mr1643297pym; Wed, 23 Aug 2006 17:30:28 -0700 (PDT) Received: from michelle.cdnetworks.co.kr ( [211.53.35.84]) by mx.gmail.com with ESMTP id j7sm854116nzd.2006.08.23.17.30.26; Wed, 23 Aug 2006 17:30:28 -0700 (PDT) Received: from michelle.cdnetworks.co.kr (localhost.cdnetworks.co.kr [127.0.0.1]) by michelle.cdnetworks.co.kr (8.13.5/8.13.5) with ESMTP id k7O0UaGe022901 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO); Thu, 24 Aug 2006 09:30:36 +0900 (KST) (envelope-from pyunyh@gmail.com) Received: (from yongari@localhost) by michelle.cdnetworks.co.kr (8.13.5/8.13.5/Submit) id k7O0UZCT022900; Thu, 24 Aug 2006 09:30:35 +0900 (KST) (envelope-from pyunyh@gmail.com) Date: Thu, 24 Aug 2006 09:30:35 +0900 From: Pyun YongHyeon To: Oleg Bulyzhin Message-ID: <20060824003035.GB22634@cdnetworks.co.kr> References: <20060822042023.GC12848@cdnetworks.co.kr> <20060822091107.A3909@fw.reifenberger.com> <20060822073201.GI12848@cdnetworks.co.kr> <20060822144341.L5561@fw.reifenberger.com> <20060822204342.GA4943@lath.rinet.ru> <20060823005554.GC17902@cdnetworks.co.kr> <20060823124035.GA18628@lath.rinet.ru> <20060823125434.GA19111@lath.rinet.ru> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20060823125434.GA19111@lath.rinet.ru> User-Agent: Mutt/1.4.2.1i Cc: Michael Reifenberger , freebsd-current@freebsd.org Subject: Re: call for bge(4) testers X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: pyunyh@gmail.com List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 24 Aug 2006 00:30:30 -0000 On Wed, Aug 23, 2006 at 04:54:34PM +0400, Oleg Bulyzhin wrote: > On Wed, Aug 23, 2006 at 04:40:35PM +0400, Oleg Bulyzhin wrote: > > On Wed, Aug 23, 2006 at 09:55:54AM +0900, Pyun YongHyeon wrote: > > > On Wed, Aug 23, 2006 at 12:43:42AM +0400, Oleg Bulyzhin wrote: > > > > On Tue, Aug 22, 2006 at 02:44:34PM +0200, Michael Reifenberger wrote: > > > > > On Tue, 22 Aug 2006, Pyun YongHyeon wrote: > > > > > ... > > > > > >I'm not familiar with vge(4) and don't have hardwares supported by > > > > > >vge(4). Because vge(4) supports a kind of interrupt moderation, there > > > > > >is a possiblity to have the same issue seen on em(4). > > > > > >If you want my blind patch I can send a patch for you. > > > > > > > > > > > Yes, please! > > > > > I can test it (on RELENG_6 though). > > > > > > > > I have an idea why those timeouts can happen. Could you please test > > > > attached patch? It may help (or may not). Anyway would be fine > > > > to know results. > > > > > > > > > > Since vge(4) uses MTX_RECURSE mutex and miibus(4) handler is > > > protected with the mutex I guess it wouldn't help much. > > > I guess it needs a seperate mutex to protect miibus(4) handler > > > and should remove the use of MTX_RECURSE. > > > > Hmm. > > 1) _ifmedia_upd() & _ifmedia_sts() functions are not called from mii layer. > > 2) As i can see MII layer is not protected by anything, unless you > > specially acquire driver lock prior to calling mii_ function. > > Locking ifmedia callbacks should be done (though, it may not help > > with watchdogs timeout), otherwise we have race on accessing PHY registers. > > (kern/98738). > > > > As i can see, random watchdog timeouts was reported for em, bge, vge, sk > > (and maybe others, those ones which i remember) drivers. > > All of them has unlocked _ifmedia_ functions. > > > > My idea was: perhaps, under certain condition, concurrent access to PHY could > > lead to hardware deadlock. > > > > > > > vge(4) also has a bug > > > if mbuf chain is too long(7 or higher) and defragmentation with > > > m_defrag(9) fails it would access an invalid mbuf chain. > > > All these requires lots of work and need a real hardware. > > > Oleg, if you have hardware, would you fix it? > > > > Unfortunately i don't have vge hardware. > > > > > > -- > > > Regards, > > > Pyun YongHyeon > > > > -- > > Oleg. > > > > Forgot one thing: i think we need no dedicated mutex for mii layer if we lock > ifmedia callbacks. > If we use the diver mutex in MII access it would require MTX_RECURSE mutex. I want simple MTX_DEF mutex. -- Regards, Pyun YongHyeon