zephyr/subsys/net/ip
Tomasz Gorochowik 2ca3b1e3c4 net: if: Fix TX timestamp callbacks invocation
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>
2018-07-04 16:26:35 -04:00
..
6lo_private.h net: Convert raw timeout values to use K_MSEC() macro 2018-05-28 17:20:11 -04:00
6lo.c net: 6lo: Do not try compressing IPHC header if not set 2018-03-02 07:11:46 +01:00
6lo.h
CMakeLists.txt net: shell: Add gptp command 2018-06-28 16:50:50 +03:00
connection.c net: stats: do not use deallocated packet pointer 2018-06-11 17:33:17 -04:00
connection.h
dhcpv4.c net: dhcpv4: Detect network interface on/off events 2018-06-11 17:27:29 -04:00
dhcpv4.h
icmpv4.c net: icmpv4: Simplify the flow at net_icmpv4_get_hdr() 2018-07-03 15:38:43 +03:00
icmpv4.h net: icmpv4: Merge process_icmpv4_pkt() into net_icmpv4_input() 2018-07-02 17:33:44 +03:00
icmpv6.c net/ipv6: Properly separate what belongs to ipv6 from the rest 2018-07-02 12:34:12 +03:00
icmpv6.h net: icmp: Remove NET_ICMP_HDR() macro and direct access to net_buf 2017-07-07 15:24:00 +03:00
ipv4.c net: icmpv4: Merge process_icmpv4_pkt() into net_icmpv4_input() 2018-07-02 17:33:44 +03:00
ipv4.h net/ipv4: Properly separate what belongs to ipv4 from the rest 2018-07-02 12:34:12 +03:00
ipv6.c net/ipv6: Properly separate what belongs to ipv6 from the rest 2018-07-02 12:34:12 +03:00
ipv6.h net/ipv6: Properly separate what belongs to ipv6 from the rest 2018-07-02 12:34:12 +03:00
Kconfig net: l2: Move the layer 2 code into subsys/net/ 2018-06-27 17:02:59 +03:00
Kconfig.debug net: Add initial TX and RX traffic class support 2018-03-27 10:06:54 -04:00
Kconfig.ipv4 net: if: vlan: Add virtual lan support 2018-04-05 08:54:19 -04:00
Kconfig.ipv6 net: if: vlan: Add virtual lan support 2018-04-05 08:54:19 -04:00
Kconfig.mgmt net/mgmt: Ensure that event order is kept as FIFO 2018-03-26 15:07:00 +03:00
Kconfig.rpl net: rpl: Fix malformed Kconfig default 2018-06-13 13:35:56 -04:00
Kconfig.stack
Kconfig.stats net: stats: Add infrastructure for collecting ethernet stats 2018-04-11 16:49:48 +03:00
nbr.c net: nbr: Use the real size of the neighbor pool 2017-08-14 11:06:34 +03:00
nbr.h net: nbr: Use the real size of the neighbor pool 2017-08-14 11:06:34 +03:00
net_context.c net/ipv6: Properly separate what belongs to ipv6 from the rest 2018-07-02 12:34:12 +03:00
net_core.c net/arp: No need to expose publicly arp header 2018-06-29 12:57:45 +03:00
net_if.c net: if: Fix TX timestamp callbacks invocation 2018-07-04 16:26:35 -04:00
net_mgmt.c net/mgmt: Move NET_EVENT_INFO_MAX_SIZE into net core's private header 2018-04-12 09:56:07 -04:00
net_pkt.c net: pkt: Fix comment typo in word tailroom 2018-06-18 09:17:47 -04:00
net_private.h net: gptp: Initial core IEEE 802.1AS support 2018-06-28 16:50:50 +03:00
net_shell.c net: gptp: Fix validation of non-numeric inputs from net shell 2018-07-04 16:26:35 -04:00
net_shell.h net: shell: Remove net_shell_init() as it is not needed 2017-08-01 14:45:06 +03:00
net_stats.c net: stats: Make statistics collection per network interface 2018-04-10 13:29:39 +03:00
net_stats.h net: stats: handle_na_input: unref packet after stats are updated 2018-06-11 17:33:17 -04:00
net_tc.c net: tc: dont yield during net_rc tx/rx workq init 2018-05-30 20:26:25 -04:00
route.c net: route: Do not dereference NULL pointer while getting next hop 2018-03-02 07:11:46 +01:00
route.h
rpl-mrhof.c net: Fix indentation issues 2017-08-09 16:01:28 +03:00
rpl-of0.c net: Fix indentation issues 2017-08-09 16:01:28 +03:00
rpl.c net/ipv6: Properly separate what belongs to ipv6 from the rest 2018-07-02 12:34:12 +03:00
rpl.h net/pkt: Use IS_ENABLED instead of ifdef 2018-06-11 17:21:12 -04:00
tcp_internal.h net: tcp: expose some TCP helper functions 2018-05-15 18:07:47 +03:00
tcp.c net/ipv6: Properly separate what belongs to ipv6 from the rest 2018-07-02 12:34:12 +03:00
trickle.c net: trickle: Do clock wrap check properly 2017-08-07 21:32:03 -04:00
udp_internal.h net: udp: Remove NET_UDP_HDR() macro and direct access to net_buf 2017-07-07 15:24:00 +03:00
udp.c net: udp: Remove NET_UDP_HDR() macro and direct access to net_buf 2017-07-07 15:24:00 +03:00
utils.c net: Create helper to convert MAC strings to array of bytes 2018-03-18 20:47:36 -04:00