Am Donnerstag 01 Dezember 2005 13:48 schrieb Krzysztof Halasa:

> - kernel driver signals lower-level down
> - kernel driver signals lower-level up (dormant = 1)
> - slow userspace (in this case, could be a kernel module if strict
>   serialization of all operational status changes isn't required) doesn't
>   (yet) see the above events and sets "fully operational"?

If the supplicant is able to set states, it should also be able look if new 
events have piled up on netlink. I'm aware this isn't perfect. For me, one 
important point is that driver and userspace do not interfere uncontrolled, 
so that we have no situation where both driver and userspace start setting 
operstate and in the end create some crazy value that no one is aware of. I 
think this goal is reached due to setting operstate from process context only 
and echo changes made by userspace back via netlink. We have also caught the 
situation when userspace is not able to run at all after a up-down-up 
transition.

I'm more unhappy about the fact that a driver can (and could) do a 
netif_carrier_off()/-on() sequence too fast for the workqueue to follow. But 
changing this requires major surgery in netdev_state_change() and hey, I'm 
not a networking core guru.

> Look, you (I mean Thomas and Jamal, too) can ignore that problem (or
> "problem"), pretend it's fixed when it's not, exactly like you ignore
> existence of my patch.

No one ignored your patch. I only plead guilty for willing to solve both your 
problem and userspace interaction. And I think we have reached a compromise 
that is acceptable for both. So no need for flaming.

Stefan
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to