Prepare to copy the XDP metadata into an skb extension in skb_metadata_set.

Adjust the driver to pull from skb->data before calling skb_metadata_set.

Signed-off-by: Jakub Sitnicki <[email protected]>
---
 drivers/net/ethernet/intel/igc/igc_main.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/ethernet/intel/igc/igc_main.c 
b/drivers/net/ethernet/intel/igc/igc_main.c
index 7aafa60ba0c8..ba758399615b 100644
--- a/drivers/net/ethernet/intel/igc/igc_main.c
+++ b/drivers/net/ethernet/intel/igc/igc_main.c
@@ -2024,8 +2024,8 @@ static struct sk_buff *igc_construct_skb(struct igc_ring 
*rx_ring,
               ALIGN(headlen + metasize, sizeof(long)));
 
        if (metasize) {
-               skb_metadata_set(skb, metasize);
                __skb_pull(skb, metasize);
+               skb_metadata_set(skb, metasize);
        }
 
        /* update all of the pointers */
@@ -2752,8 +2752,8 @@ static struct sk_buff *igc_construct_skb_zc(struct 
igc_ring *ring,
               ALIGN(totalsize, sizeof(long)));
 
        if (metasize) {
-               skb_metadata_set(skb, metasize);
                __skb_pull(skb, metasize);
+               skb_metadata_set(skb, metasize);
        }
 
        if (ctx->rx_ts) {

-- 
2.43.0

Reply via email to