On Mon, Jan 18, 2021 at 6:39 PM David Ahern wrote: > > Indeed, this is what we ended up doing, although we still need to > > confirm Network Manager, systemd and whatever else our customers might > > use do the necessary to satisfy the user requirement to handle the > > delayed init. > > I am not surprised about the issue - boot times have been improved and > devices have gotten more complicated. And I was wondering how network > managers (add ifupdown{2} to that list) would handle an EAGAIN. You > could have an event sent -- e.g., IFLA_EVENT_FW_READY -- to allow > managers to avoid polling. Redundant for multiple netdev's per device, > but makes it event driven. This is what I was hinting at by talking about another device state. For that, there would necessarily need to be an event to inform user space about the transition out of said state into normal open/up. Of course, the tools would need to be updated to know about such a new event too. EAGAIN does seem simpler. In our case, we don't expect to be polling too long, or frequently for that matter. It is exceptionally rare that the firmware wouldn't be ready, but it can happen. Regards, Edwin Peer