)]}'
{
  "commit": "873363ac591a1774aa3ced84f7ea3d93a3eb9b07",
  "tree": "d03127bc1e8cda62e2bce4c2b51481c84c8f4f6c",
  "parents": [
    "c1f04ea0aa0f8799a303dc412b3a4820f2aedfe5"
  ],
  "author": {
    "name": "Daniel Machon",
    "email": "daniel.machon@microchip.com",
    "time": "Thu Oct 29 12:48:10 2026 +0100"
  },
  "committer": {
    "name": "Paolo Abeni",
    "email": "pabeni@redhat.com",
    "time": "Mon Nov 02 15:31:20 2026 +0100"
  },
  "message": "net: sparx5/lan969x: release the in-flight slot of a stale TX skb\n\nsparx5_ptp_txtstamp_request() counts every two step TX skb waiting for\nits timestamp in sparx5-\u003eptp_skbs, and refuses new ones once\nSPARX5_MAX_PTP_ID are in flight. sparx5_ptp_txtstamp_old_release()\nfrees the skbs that have waited longer than SPARX5_PTP_TIMEOUT.\n\nBefore this patch, old_release() does not decrement ptp_skbs, so every\nskb whose timestamp never arrives, for example because the switch\ndiscarded the frame, keeps its slot forever. Once SPARX5_MAX_PTP_ID\nslots are lost, two step frames fail to transmit on every port of the\nswitch.\n\nReturn the number of released skbs from old_release() and subtract it\nfrom ptp_skbs in txtstamp_request(), under the ptp_ts_id_lock it already\ntakes.\n\nThis fixes the accounting only. A port\u0027s stale skbs are still aged out\nonly when that port sends a two step frame, so a port that stops sending\nthem keeps its stale skbs, and their slots, until it sends one again.\nThat behaviour is unchanged by this patch.\n\nFound by an AI code review agent. Reproduced on a lan9696 board with a\nmodified kernel that drops the TX timestamps of two step frames, after\nwhich two step timestamping stopped working on the port. With the fix,\ntimestamping keeps working on that board and on a sparx5 PCB135 board.\n\nFixes: 70dfe25cd866 (\"net: sparx5: Update extraction/injection for timestamping\")\nSigned-off-by: Daniel Machon \u003cdaniel.machon@microchip.com\u003e\nReviewed-by: Simon Horman \u003chorms@kernel.org\u003e\nLink: https://patch.msgid.link/20261029-sparx5-ptp-stale-tx-slot-v1-1-ec15f391bbb7@microchip.com\nSigned-off-by: Paolo Abeni \u003cpabeni@redhat.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "2826e48af1033e5c8fdb0e04f125e5968831bbb0",
      "old_mode": 33188,
      "old_path": "drivers/net/ethernet/microchip/sparx5/sparx5_ptp.c",
      "new_id": "9f61692b243b7e3b2668462d1dc96ad43d24ad5d",
      "new_mode": 33188,
      "new_path": "drivers/net/ethernet/microchip/sparx5/sparx5_ptp.c"
    }
  ]
}
