2016-04-25 11:49, martin_curran-gray at keysight.com: > But if the link was "active" when dpdk and my app starts up, > then no interrupt is generated, which then means that global > structure is not filled in
You are describing the case of interrupts enabled but never called. It has been fixed in DPDK 2.0: http://dpdk.org/commit/99610782 But a race condition has been seen if interrupt fires during rte_eth_dev_start() call. The decision was to remove link update if interrupt is enabled (DPDK 2.2): http://dpdk.org/commit/d5790b03 This "fix" was a bit strange: - Is it possible to fix the race condition with link_update in the drivers? - Is it possible to update the link status in dev_start of each driver without race condition with the interrupt? - Why calling link_update() from rte_eth_dev_start() in the polling case? > I saw a submission to the patchwork 7160, dated Sep 24 2015 > but it was marked as not applicable , archived..... It has been re-submitted and applied (hence the problem): http://dpdk.org/patch/8112