Re: [PATCH] Fix OACTIVE for an(4)

From: Adrian Chadd <adrian_at_freebsd.org>
Date: Fri, 3 Oct 2014 01:29:51 -0700
Having them as flags that can be seen from external is good for diagnostics.

Having external things change behaviour (like queuing packets and
running if_start) is error prone.

It isn't a wrong concept. Computers just grew up a bit more.


-a


On 3 October 2014 01:13, Gleb Smirnoff <glebius_at_freebsd.org> wrote:
> On Thu, Oct 02, 2014 at 11:16:27AM -0400, John Baldwin wrote:
> J> > I haven't looked at the rest of the driver; is everything else around
> J> > OACTIVE locked correctly and consistently?
> J>
> J> As well as OACTIVE is for any other driver.
>
> Let me jump into this topic and discuss the if_drv_flags :)
>
> It seems to me that this in general was a wrong concept, both
> IFF_DRV_OACTIVE and IFF_DRV_RUNNING. The internal state of
> the driver can be known only to the driver itself and should
> be stored in the softc, covered with internal lock.
>
> There is simply no way to racelessly tell the state from the
> outside, without obtaining driver lock.
>
> In my ifnet plans I am considering to remove if_drv_flags.
> Can anyone convince me that this is a wrong idea and they
> should be kept?
>
> --
> Totus tuus, Glebius.
Received on Fri Oct 03 2014 - 06:29:54 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:52 UTC