)]}'
{
  "commit": "77a6b90ce56bc982dcfa94229b8e28e6abb16e95",
  "tree": "b0eb340983a1a9528d273b170e237255f038c236",
  "parents": [
    "5e8e2a9624df72fca7c736b2966b2cbf6c9c3ff6"
  ],
  "author": {
    "name": "Til Kaiser",
    "email": "mail@tk154.de",
    "time": "Sun Jun 07 15:49:43 2026 +0200"
  },
  "committer": {
    "name": "Paolo Abeni",
    "email": "pabeni@redhat.com",
    "time": "Thu Jun 11 09:57:31 2026 +0200"
  },
  "message": "net: mvpp2: build skb from XDP-adjusted data on XDP_PASS\n\nWhen an XDP program uses bpf_xdp_adjust_head() or bpf_xdp_adjust_tail()\nand then returns XDP_PASS, mvpp2 still builds the skb from fixed offsets\nderived from the original RX descriptor. Packet geometry changes made by\nthe XDP program are therefore discarded before the skb reaches the stack.\n\nUpdate rx_offset and rx_bytes from xdp.data and xdp.data_end for\nXDP_PASS. This makes skb_reserve() and skb_put() reflect the packet seen\nby XDP, and makes RX byte accounting for XDP_PASS follow the length of the\nskb passed to the network stack.\n\nKeep a separate rx_sync_size for page-pool recycling on skb allocation\nfailure, which must stay tied to the received buffer range.\n\nNon-PASS verdicts continue to account the descriptor length because no skb\nis passed up in those cases.\n\nFixes: 07dd0a7aae7f (\"mvpp2: add basic XDP support\")\nSigned-off-by: Til Kaiser \u003cmail@tk154.de\u003e\nLink: https://patch.msgid.link/20260607134943.21996-5-mail@tk154.de\nSigned-off-by: Paolo Abeni \u003cpabeni@redhat.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "481daafdc1cbc7fc337c1118772a082ac555d7c5",
      "old_mode": 33188,
      "old_path": "drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c",
      "new_id": "ccc24a1301f22d683713c332987e9ada7abd32f7",
      "new_mode": 33188,
      "new_path": "drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c"
    }
  ]
}
