From owner-svn-src-all@FreeBSD.ORG Tue Mar 24 12:44:10 2015 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C825FFC5; Tue, 24 Mar 2015 12:44:10 +0000 (UTC) Received: from cell.glebius.int.ru (glebius.int.ru [81.19.69.10]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "cell.glebius.int.ru", Issuer "cell.glebius.int.ru" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4F7CF103; Tue, 24 Mar 2015 12:44:09 +0000 (UTC) Received: from cell.glebius.int.ru (localhost [127.0.0.1]) by cell.glebius.int.ru (8.14.9/8.14.9) with ESMTP id t2OCi6GK003261 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Tue, 24 Mar 2015 15:44:06 +0300 (MSK) (envelope-from glebius@FreeBSD.org) Received: (from glebius@localhost) by cell.glebius.int.ru (8.14.9/8.14.9/Submit) id t2OCi6wI003260; Tue, 24 Mar 2015 15:44:06 +0300 (MSK) (envelope-from glebius@FreeBSD.org) X-Authentication-Warning: cell.glebius.int.ru: glebius set sender to glebius@FreeBSD.org using -f Date: Tue, 24 Mar 2015 15:44:06 +0300 From: Gleb Smirnoff To: Andrew Rybchenko Subject: Re: svn commit: r280374 - head/sys/dev/sfxge Message-ID: <20150324124405.GM64665@FreeBSD.org> References: <201503231544.t2NFiI90045847@svn.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201503231544.t2NFiI90045847@svn.freebsd.org> User-Agent: Mutt/1.5.23 (2014-03-12) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 24 Mar 2015 12:44:10 -0000 On Mon, Mar 23, 2015 at 03:44:18PM +0000, Andrew Rybchenko wrote: A> Author: arybchik A> Date: Mon Mar 23 15:44:17 2015 A> New Revision: 280374 A> URL: https://svnweb.freebsd.org/changeset/base/280374 A> A> Log: A> sfxge: assert either kernel or internal copy of interface flags A> A> ioctl to put interface down sets ifp->if_flags which holds the intended A> administratively defined state and calls driver callback to apply it. A> When everything is done, driver updates internal copy of A> interface flags sc->if_flags which holds the operational state. A> So, transmit from Rx path is possible when interface is intended to be A> administratively down in accordance with ifp->if_flags, but not applied A> yet and the operational state is up in accordance with sc->if_flags. A> A> Sponsored by: Solarflare Communications, Inc. A> Differential Revision: https://reviews.freebsd.org/D2075 In the future ifnet API, that is now being developed in projects/ifnet, the stack promises to change if_flags only via SIOCSIFFLAGS, so driver can and should cashe the value and later access it using internal locking. The if_flags need not be accessed at all by the driver. -- Totus tuus, Glebius.