more annoying pedantry ... from include/uapi/linux/if.h:
* @IFF_RUNNING: interface RFC2863 OPER_UP. Volatile. however, both the code in net/core/dev.c: /** * netif_oper_up - test if device is operational * @dev: network device * * Check if carrier is operational */ static inline bool netif_oper_up(const struct net_device *dev) { return (dev->operstate == IF_OPER_UP || dev->operstate == IF_OPER_UNKNOWN /* backward compat */); } and the explanation in operstates.txt: ifinfomsg::if_flags & IFF_RUNNING: Interface is in RFC2863 operational state UP or UNKNOWN. suggests IFF_RUNNING represents *either* of the operational states UP or UNKNOWN, not just UP as the comment in if.h claims. is this misleading? or is this a deliberate explanation somehow taking into account that the UNKNOWN state is for backward compatibility (whatever that means)? i ask since, in my testing, when the interface should have been up, the attribute file "operstate" for that interface showed "unknown", and i wondered how worried i should be about that. rday -- ======================================================================== Robert P. J. Day Ottawa, Ontario, CANADA http://crashcourse.ca/dokuwiki Twitter: http://twitter.com/rpjday LinkedIn: http://ca.linkedin.com/in/rpjday ========================================================================