2ca3b1e3c4
The problem is that net_if_call_timestamp_cb only checked if the callback was registered for the PORT which invoked the whole action. There is a possibility, that the callback will be registered, and packet A will be passed to eth driver. Before the driver is finished with packet A, network layer will start handling another packet (B) - so it will unregister the callback for packet A and register it for B. After that the network driver will finish processing packet A and invoke the timestamp callback. The mechanism would then only check if a callback is registered for the port of the driver and invoke the callback for the packet that was registered earlier (so A instead of B). This commit fixes that by storing info not only about the port but about the packet too. Signed-off-by: Tomasz Gorochowik <tgorochowik@antmicro.com> |
||
---|---|---|
.. | ||
main.c |