)]}'
{
  "commit": "e2dbca033710efea20b0b0a26ca05570dcdabd49",
  "tree": "9df6c8ed2f408e9ceea2b125a40f6cf028099eff",
  "parents": [
    "1bce34aaa9d324b6d4aaf681e634e1840ca5d04e"
  ],
  "author": {
    "name": "Paolo Bonzini",
    "email": "pbonzini@redhat.com",
    "time": "Wed Apr 12 11:23:00 2023 +0200"
  },
  "committer": {
    "name": "Paolo Bonzini",
    "email": "pbonzini@redhat.com",
    "time": "Tue Sep 26 18:09:08 2023 +0200"
  },
  "message": "block: mark mixed functions that can suspend\n\nThe marking should be extended transitively to all functions that call\nthese ones, so that static analysis can be done much more efficiently.\nHowever, this is a start and makes it possible to use vrc\u0027s path-based\nsearches to find potential bugs where coroutine_fns call blocking functions.\n\nSigned-off-by: Paolo Bonzini \u003cpbonzini@redhat.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "209a6da0c8e74098d33d7a6fd4d257825cf65b54",
      "old_mode": 33188,
      "old_path": "block/io.c",
      "new_id": "e7f9448d5a33b0b52c04be7815c5be51805d7c11",
      "new_mode": 33188,
      "new_path": "block/io.c"
    },
    {
      "type": "modify",
      "old_id": "af43d59d76871074706c080657ca28911f617564",
      "old_mode": 33188,
      "old_path": "block/qcow2.c",
      "new_id": "5a3c537f1465ff94460fd4635bbe45dc4a67295f",
      "new_mode": 33188,
      "new_path": "block/qcow2.c"
    },
    {
      "type": "modify",
      "old_id": "b2604d9dad3c2bae2e6524d88d0d410e1ca09290",
      "old_mode": 33188,
      "old_path": "block/qed.c",
      "new_id": "45ae320290dfb6ae100b87a9c9893d8f06b65e3a",
      "new_mode": 33188,
      "new_path": "block/qed.c"
    },
    {
      "type": "modify",
      "old_id": "3eda4c4e3deee9de3c83c5a4259fb17f39d4e453",
      "old_mode": 33188,
      "old_path": "block/throttle-groups.c",
      "new_id": "f5c0fac5814be07423233690764a35d402b6114a",
      "new_mode": 33188,
      "new_path": "block/throttle-groups.c"
    }
  ]
}
