)]}'
{
  "commit": "af25e7277d3e95a3ea31023f31d8097ab5e2ac84",
  "tree": "863e07f7049b458f905211a0330ad6c81286b1e5",
  "parents": [
    "bc79082e4cd12c1241fa03b0abceacf45f537740",
    "c07bc2c1658fffeee08eb46402b2f66d55b07586"
  ],
  "author": {
    "name": "Peter Maydell",
    "email": "peter.maydell@linaro.org",
    "time": "Fri Oct 23 18:14:42 2015 +0100"
  },
  "committer": {
    "name": "Peter Maydell",
    "email": "peter.maydell@linaro.org",
    "time": "Fri Oct 23 18:14:42 2015 +0100"
  },
  "message": "Merge remote-tracking branch \u0027remotes/kevin/tags/for-upstream\u0027 into staging\n\nBlock layer patches\n\n# gpg: Signature made Fri 23 Oct 2015 17:59:56 BST using RSA key ID C88F2FD6\n# gpg: Good signature from \"Kevin Wolf \u003ckwolf@redhat.com\u003e\"\n\n* remotes/kevin/tags/for-upstream: (37 commits)\n  tests: Add test case for aio_disable_external\n  block: Add \"drained begin/end\" for internal snapshot\n  block: Add \"drained begin/end\" for transactional blockdev-backup\n  block: Add \"drained begin/end\" for transactional backup\n  block: Add \"drained begin/end\" for transactional external snapshot\n  block: Introduce \"drained begin/end\" API\n  aio: introduce aio_{disable,enable}_external\n  dataplane: Mark host notifiers\u0027 client type as \"external\"\n  nbd: Mark fd handlers client type as \"external\"\n  aio: Add \"is_external\" flag for event handlers\n  throttle: Remove throttle_group_lock/unlock()\n  blockdev: Allow more options for BB-less BDS tree\n  blockdev: Pull out blockdev option extraction\n  blockdev: Do not create BDS for empty drive\n  block: Prepare for NULL BDS\n  block: Add blk_insert_bs()\n  block: Prepare remaining BB functions for NULL BDS\n  block: Fail requests to empty BlockBackend\n  block: Make some BB functions fall back to BBRS\n  block: Add BlockBackendRootState\n  ...\n\nSigned-off-by: Peter Maydell \u003cpeter.maydell@linaro.org\u003e\n",
  "tree_diff": []
}
