)]}'
{
  "commit": "ddb279d64b724b197dec829c016b5d386314b970",
  "tree": "85e98e25e14f87bfa37e3ef3f8e73a2dda2c05a3",
  "parents": [
    "09c45065257b5b194e08a1b4749daeebb961675e"
  ],
  "author": {
    "name": "Jakub Kicinski",
    "email": "kuba@kernel.org",
    "time": "Wed Aug 26 12:40:06 2020 -0700"
  },
  "committer": {
    "name": "Greg Kroah-Hartman",
    "email": "gregkh@linuxfoundation.org",
    "time": "Sat Sep 12 14:18:55 2020 +0200"
  },
  "message": "net: disable netpoll on fresh napis\n\n[ Upstream commit 96e97bc07e90f175a8980a22827faf702ca4cb30 ]\n\nnapi_disable() makes sure to set the NAPI_STATE_NPSVC bit to prevent\nnetpoll from accessing rings before init is complete. However, the\nsame is not done for fresh napi instances in netif_napi_add(),\neven though we expect NAPI instances to be added as disabled.\n\nThis causes crashes during driver reconfiguration (enabling XDP,\nchanging the channel count) - if there is any printk() after\nnetif_napi_add() but before napi_enable().\n\nTo ensure memory ordering is correct we need to use RCU accessors.\n\nReported-by: Rob Sherwood \u003crsher@fb.com\u003e\nFixes: 2d8bff12699a (\"netpoll: Close race condition between poll_one_napi and napi_disable\")\nSigned-off-by: Jakub Kicinski \u003ckuba@kernel.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@linuxfoundation.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "56cd7b83a38293bcc246857c158de381327b2d79",
      "old_mode": 33188,
      "old_path": "net/core/dev.c",
      "new_id": "cdc1c3a144e1f1825e520cac76b3dde1e4963292",
      "new_mode": 33188,
      "new_path": "net/core/dev.c"
    },
    {
      "type": "modify",
      "old_id": "849380a622ef9d7fc2e8970c342245e15997fbda",
      "old_mode": 33188,
      "old_path": "net/core/netpoll.c",
      "new_id": "cb67d36f3adb03cc08c67ffde8a8391fce4fc6af",
      "new_mode": 33188,
      "new_path": "net/core/netpoll.c"
    }
  ]
}
