Date: Mon, 23 Dec 2013 12:23:56 -0500 From: John Baldwin <jhb@freebsd.org> To: freebsd-net@freebsd.org Cc: Jack F Vogel <jfv@freebsd.org>, Adrian Chadd <adrian@freebsd.org>, Luigi Rizzo <rizzo@iet.unipi.it>, Mike Karels <mike@karels.net>, "net@freebsd.org" <net@freebsd.org> Subject: Re: IFF_DRV_OACTIVE handling in *_stop() for intel nic drivers ? Message-ID: <201312231223.56698.jhb@freebsd.org> In-Reply-To: <20131214012308.GB82745@onelab2.iet.unipi.it> References: <CAJ-Vmom8u9mw9h-Eq5EKvcwcpMKjNzdxcwVJLtg_jRfA0DWYxg@mail.gmail.com> <201312140008.rBE08tnO062920@mail.karels.net> <20131214012308.GB82745@onelab2.iet.unipi.it>
next in thread | previous in thread | raw e-mail | index | archive | help
On Friday, December 13, 2013 8:23:08 pm Luigi Rizzo wrote: > On Fri, Dec 13, 2013 at 06:08:55PM -0600, Mike Karels wrote: > > > ... OACTIVE by design is racy. We should just not be using it in newer drivers. > > > > > I think the correct thing to do is to just plain ignore setting it ever. > > > > I agree; OACTIVE is totally obsolete for drivers that use if_transmit, > > and not particularly useful for other drivers. It might be time to remove > > OACTIVE, or define it to be 0. (And I added the original IFF_OACTIVE). > > ok thanks for the clarification In particular, it is useless (and AFAIK ignored) if you are using if_transmit. I've fixed it in igb before, has it crept back in? It should only be used in drivers using if_start() when the ifq is full, and cleared when a tx completion interrupt fires. -- John Baldwin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201312231223.56698.jhb>