From owner-freebsd-stable@FreeBSD.ORG Mon May 27 04:39:38 2013 Return-Path: Delivered-To: freebsd-stable@freebsd.org Received: from mx1.freebsd.org (mx1.FreeBSD.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id ABFA581F; Mon, 27 May 2013 04:39:38 +0000 (UTC) (envelope-from pyunyh@gmail.com) Received: from mail-pa0-f52.google.com (mail-pa0-f52.google.com [209.85.220.52]) by mx1.freebsd.org (Postfix) with ESMTP id 74B879E; Mon, 27 May 2013 04:39:38 +0000 (UTC) Received: by mail-pa0-f52.google.com with SMTP id bg2so6423912pad.11 for ; Sun, 26 May 2013 21:39:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:date:to:cc:subject:message-id:reply-to:references:mime-version :content-type:content-disposition:in-reply-to:user-agent; bh=AWG0/dAyAQ2F88Dy7RukTSczJvH1C6VsbkRHqatZs1E=; b=r7X7cHsIdkgdrVqs0JKT8apy/3AYAJYoLyUogtMPGyc8uCHHr0MLots0RHWS0IeRrj jmHXfC8TF5n+/w7ADiCC2kI6gB69lNi4TcLNouLU0ggquqmHgy9qNcTbZVD8tSt0mbgP c215Wh5oogJVZbtww+xPkBkVK3gx79U++x6kZLHwrD8+NV1t/OVrBnZtjL1pc6UMHjLZ Ha1FIPPOZ5oIktn3t6zNzMF8POBYIXduATQ03PcimzrskK5L79qbIwz5bXN35KHVpA9O UsggN3k33BQp94ZIZzGhmDak2OP11JpALAxVWfxJNVqBVzgky5oq+JzNn4dahtCVqJun uIJw== X-Received: by 10.68.12.98 with SMTP id x2mr27985359pbb.92.1369629571647; Sun, 26 May 2013 21:39:31 -0700 (PDT) Received: from pyunyh@gmail.com (lpe4.p59-icn.cdngp.net. [114.111.62.249]) by mx.google.com with ESMTPSA id 3sm26878379pbj.46.2013.05.26.21.39.27 for (version=TLSv1 cipher=RC4-SHA bits=128/128); Sun, 26 May 2013 21:39:30 -0700 (PDT) Received: by pyunyh@gmail.com (sSMTP sendmail emulation); Mon, 27 May 2013 13:39:23 +0900 From: YongHyeon PYUN Date: Mon, 27 May 2013 13:39:23 +0900 To: Hiroki Sato Subject: Re: Apparent fxp regression in FreeBSD 8.4-RC3 Message-ID: <20130527043923.GA1480@michelle.cdnetworks.com> References: <20130524044919.GA41292@icarus.home.lan> <20130524054720.GA1496@michelle.cdnetworks.com> <20130524.162926.395058052118975996.hrs@allbsd.org> <20130524.163646.628115045676432731.hrs@allbsd.org> <20130526113841.GA1511@michelle.cdnetworks.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20130526113841.GA1511@michelle.cdnetworks.com> User-Agent: Mutt/1.4.2.3i Cc: jdc@koitsu.org, gjb@freebsd.org, freebsd-stable@freebsd.org, re@freebsd.org X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list Reply-To: pyunyh@gmail.com List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 May 2013 04:39:38 -0000 On Sun, May 26, 2013 at 08:38:41PM +0900, YongHyeon PYUN wrote: > On Fri, May 24, 2013 at 04:36:46PM +0900, Hiroki Sato wrote: > > Hiroki Sato wrote > > in <20130524.162926.395058052118975996.hrs@allbsd.org>: > > > > hr> YongHyeon PYUN wrote > > hr> in <20130524054720.GA1496@michelle.cdnetworks.com>: > > hr> > > hr> A workaround is specifying the following line in rc.conf: > > hr> > > hr> ifconfig_fxp0="DHCP media 100baseTX mediaopt full-duplex" > > > > Hmm, I guess this can happen on other NICs when the link negotiation > > causes a link-state flap. Is it true? > > Probably not. AFAIK fxp(4) is the only controller that requires two > full resets to support flow control. Multicast programming for > fxp(4) also requires full controller reset so trying to renew its > existing lease for fxp(4) looks wrong to me. > After reading code again, I think the dhclient change may affect all controllers that don't have protection against multiple initialization of upper stack. if_init() of driver is called whenever an IP address is assigned to an interface. The stack could be changed to call if_init() only when IFF_DRV_RUNNING flag is not set but that would break old drivers which may require full controller reset for multicast filter reprogramming. I also guess there may be several drivers that do not implement reinitialization protection in arm/mips. It seems fxp(4)'s simple protection against unnecessary controller initialization does not work well due to the limitation of controller. We may be able to improve fxp(4) case but other old/buggy drivers should be fixed too.