)]}'
{
  "commit": "fcdef3bcbb2c04e06ae89f8faff2cd6416b3a467",
  "tree": "475de1ea7e073a1e930306b749e7b65e3434268b",
  "parents": [
    "7470a7a63dc162f07c26dbf960e41ee1e248d80e"
  ],
  "author": {
    "name": "Bui Quang Minh",
    "email": "minhquangbui99@gmail.com",
    "time": "Tue Jan 06 22:04:36 2026 +0700"
  },
  "committer": {
    "name": "Jakub Kicinski",
    "email": "kuba@kernel.org",
    "time": "Sat Jan 10 11:12:48 2026 -0800"
  },
  "message": "virtio-net: don\u0027t schedule delayed refill worker\n\nWhen we fail to refill the receive buffers, we schedule a delayed worker\nto retry later. However, this worker creates some concurrency issues.\nFor example, when the worker runs concurrently with virtnet_xdp_set,\nboth need to temporarily disable queue\u0027s NAPI before enabling again.\nWithout proper synchronization, a deadlock can happen when\nnapi_disable() is called on an already disabled NAPI. That\nnapi_disable() call will be stuck and so will the subsequent\nnapi_enable() call.\n\nTo simplify the logic and avoid further problems, we will instead retry\nrefilling in the next NAPI poll.\n\nFixes: 4bc12818b363 (\"virtio-net: disable delayed refill when pausing rx\")\nReported-by: Paolo Abeni \u003cpabeni@redhat.com\u003e\nCloses: https://lore.kernel.org/526b5396-459d-4d02-8635-a222d07b46d7@redhat.com\nCc: stable@vger.kernel.org\nSuggested-by: Xuan Zhuo \u003cxuanzhuo@linux.alibaba.com\u003e\nSigned-off-by: Bui Quang Minh \u003cminhquangbui99@gmail.com\u003e\nAcked-by: Michael S. Tsirkin \u003cmst@redhat.com\u003e\nLink: https://patch.msgid.link/20260106150438.7425-2-minhquangbui99@gmail.com\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "22d894101c018a11e4a027fab10101750251ecdc",
      "old_mode": 33188,
      "old_path": "drivers/net/virtio_net.c",
      "new_id": "fd8859bd41c7c73c1f8114c5370771adf418432f",
      "new_mode": 33188,
      "new_path": "drivers/net/virtio_net.c"
    }
  ]
}
