)]}'
{
  "commit": "8ad4202bf61bc1d124ff26016cfe17cb261cc392",
  "tree": "3a3a924610494044c38c8aa3fd5289501671ab9b",
  "parents": [
    "2cdff7f620ebd3b5246cf0c0d1f6fa0eededa4ca"
  ],
  "author": {
    "name": "Stefan Hajnoczi",
    "email": "stefanha@redhat.com",
    "time": "Mon Aug 18 16:07:12 2014 +0100"
  },
  "committer": {
    "name": "Stefan Hajnoczi",
    "email": "stefanha@redhat.com",
    "time": "Fri Aug 29 16:01:10 2014 +0100"
  },
  "message": "block: acquire AioContext in do_drive_del()\n\nMake drive_del safe for dataplane where another thread may be running\nthe BlockDriverState\u0027s AioContext.\n\nNote the assumption that AioContext\u0027s lifetime exceeds DriveInfo and\nBlockDriverState.  We release AioContext after DriveInfo and\nBlockDriverState are potentially freed.\n\nThis is clearly safe with the global AioContext but also with -object\niothread and implicit iothreads created by -device\nvirtio-blk-pci,x-data-plane\u003don (their lifetime is tied to DeviceState,\nnot BlockDriverState).\n\nSigned-off-by: Stefan Hajnoczi \u003cstefanha@redhat.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "eeb414efc0bb14a1465d773c12b36f2ed371bb8f",
      "old_mode": 33188,
      "old_path": "blockdev.c",
      "new_id": "e37b068e9e5eb55bc51aff9399237cdaa0ba41df",
      "new_mode": 33188,
      "new_path": "blockdev.c"
    }
  ]
}
