# RE: \[PATCH net v4\] igb: Fix XDP with PTP enabled

- From: Penigalapati, Sandeep \<hidden\>
- Date: 2021-06-03 11:30:57 
- List: netdev
- Page: https://ratatoskr.run/netdev/2021/06/7771801
- Thread: https://ratatoskr.run/netdev/2021/05/7768480/t.md

```text
>-----Original Message-----
>From: Kurt Kanzenbach <kurt@linutronix.de>
>Sent: Monday, May 3, 2021 12:58 PM
>To: Brandeburg, Jesse <redacted>; Nguyen, Anthony L
>[ref]; David S. Miller [ref];
>Jakub Kicinski [ref]
>Cc: Alexei Starovoitov <ast@kernel.org>; Daniel Borkmann
>[ref]; Jesper Dangaard Brouer [ref]; John
>Fastabend [ref]; Sven Auhagen
>[ref]; intel-wired-lan@lists.osuosl.org;
>netdev@vger.kernel.org; bpf@vger.kernel.org; Ilias Apalodimas
>[ref]; Lorenzo Bianconi [ref];
>Sebastian Andrzej Siewior [ref]; Richard Cochran
>[ref]; Alexander Duyck
>[ref]; Tyler S [ref];
>Fijalkowski, Maciej [ref]; Kurt Kanzenbach
>[ref]
>Subject: [PATCH net v4] igb: Fix XDP with PTP enabled
>
>When using native XDP with the igb driver, the XDP frame data doesn't point
>to the beginning of the packet. It's off by 16 bytes. Everything works as
>expected with XDP skb mode.
>
>Actually these 16 bytes are used to store the packet timestamps. Therefore,
>pull the timestamp before executing any XDP operations and adjust all other
>code accordingly. The igc driver does it like that as well.
>
>Tested with Intel i210 card and AF_XDP sockets.
>
>Fixes: 9cbc948b5a20 ("igb: add XDP support")
>Signed-off-by: Kurt Kanzenbach <kurt@linutronix.de>
>---
>
>Changes since v3:
>
> * Get rid of timestamp check in hot path (Maciej Fijalkowski)
>
>Changes since v2:
>
> * Check timestamp for validity (Nguyen, Anthony L)
>
>Changes since v1:
>
> * Use xdp_prepare_buff() (Lorenzo Bianconi)
>
>Changes since RFC:
>
> * Removed unused return value definitions (Alexander Duyck)
>
>Previous versions:
>
> * https://lkml.kernel.org/netdev/20210422052617.17267-1-
>kurt@linutronix.de/
> * https://lkml.kernel.org/netdev/20210419072332.7246-1-
>kurt@linutronix.de/
> * https://lkml.kernel.org/netdev/20210415092145.27322-1-
>kurt@linutronix.de/
> * https://lkml.kernel.org/netdev/20210412101713.15161-1-
>kurt@linutronix.de/
>
> drivers/net/ethernet/intel/igb/igb.h      |  2 +-
> drivers/net/ethernet/intel/igb/igb_main.c | 45 +++++++++++++----------
>drivers/net/ethernet/intel/igb/igb_ptp.c  | 23 +++++-------
> 3 files changed, 37 insertions(+), 33 deletions(-)
>
Tested-by: Sandeep Penigalapati <redacted>
```
