)]}'
{
  "commit": "2cdff7f620ebd3b5246cf0c0d1f6fa0eededa4ca",
  "tree": "579628c500f643464fd8138d68257d1e9dfc1968",
  "parents": [
    "12ade7609004bb1b09a845c144b36ea1850854c7"
  ],
  "author": {
    "name": "Stefan Hajnoczi",
    "email": "stefanha@redhat.com",
    "time": "Mon Aug 04 16:56:33 2014 +0100"
  },
  "committer": {
    "name": "Stefan Hajnoczi",
    "email": "stefanha@redhat.com",
    "time": "Fri Aug 29 15:59:17 2014 +0100"
  },
  "message": "linux-aio: avoid deadlock in nested aio_poll() calls\n\nIf two Linux AIO request completions are fetched in the same\nio_getevents() call, QEMU will deadlock if request A\u0027s callback waits\nfor request B to complete using an aio_poll() loop.  This was reported\nto happen with the mirror blockjob.\n\nThis patch moves completion processing into a BH and makes it resumable.\nNested event loops can resume completion processing so that request B\nwill complete and the deadlock will not occur.\n\nCc: Kevin Wolf \u003ckwolf@redhat.com\u003e\nCc: Paolo Bonzini \u003cpbonzini@redhat.com\u003e\nCc: Ming Lei \u003cming.lei@canonical.com\u003e\nCc: Marcin Gibuła \u003cm.gibula@beyond.pl\u003e\nReported-by: Marcin Gibuła \u003cm.gibula@beyond.pl\u003e\nSigned-off-by: Stefan Hajnoczi \u003cstefanha@redhat.com\u003e\nTested-by: Marcin Gibuła \u003cm.gibula@beyond.pl\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "7ac7e8c99c72f6e6e2c7b8fb176835e8c6a8e95d",
      "old_mode": 33188,
      "old_path": "block/linux-aio.c",
      "new_id": "9aca758b10f54f187b1147febd09fdfa1a5da656",
      "new_mode": 33188,
      "new_path": "block/linux-aio.c"
    }
  ]
}
