)]}'
{
  "commit": "db4d635c46d4cb19e3bdf739ac94458c419f59f1",
  "tree": "e0a9bd5260bde9597e9e62a46922d72fc575f15b",
  "parents": [
    "58e3aee92a22604b9c75715fad45822e80229f46"
  ],
  "author": {
    "name": "Hugo Lefeuvre",
    "email": "hugo.lefeuvre@scisemi.com",
    "time": "Thu Jun 13 13:11:05 2024 +0200"
  },
  "committer": {
    "name": "David Chisnall",
    "email": "davidchisnall@users.noreply.github.com",
    "time": "Tue Jun 18 10:21:36 2024 +0100"
  },
  "message": "Add APIs to retrieve the thread ID of the owner of a lock.\n\nIt is commonly needed in error handlers to have to check if the thread\non which the error handler was invoked was holding a particular lock\nwhen it crashed. Typically, we would want to do this to be able to\nforcefully release the lock. This is currently difficult to do, as the\nthread ID which is stored in priority inheriting flag locks is not\nexposed through the C/C++ APIs.\n\nThis commit adds news APIs `get_owner_thread_id` (C++) and\n`flaglock_priority_inheriting_get_owner_thread_id` (C) to retrieve the\nthread ID of the owner of a lock.\n\nFollowing this commit, error handlers can call `get_owner_thread_id` (or\n`flaglock_priority_inheriting_get_owner_thread_id`) on a lock and\ncompare the result with `thread_id_get` to know if the thread which\ncrashed owned the lock.\n\nSigned-off-by: Hugo Lefeuvre \u003chugo.lefeuvre@scisemi.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "1dbab8c7a3757d39957614a67a36625538940d94",
      "old_mode": 33188,
      "old_path": "sdk/include/locks.h",
      "new_id": "c33474a8dc4ca4fd8aa02303d51e29b7d03981b6",
      "new_mode": 33188,
      "new_path": "sdk/include/locks.h"
    },
    {
      "type": "modify",
      "old_id": "3f7808e204a86a5f2d1197470f22812de85b23d6",
      "old_mode": 33188,
      "old_path": "sdk/include/locks.hh",
      "new_id": "6819f841337fa4937e88e43472b228c5cf067554",
      "new_mode": 33188,
      "new_path": "sdk/include/locks.hh"
    },
    {
      "type": "modify",
      "old_id": "20798c8131f61a0e9bd31dfee2c6255d1723e04e",
      "old_mode": 33188,
      "old_path": "tests/locks-test.cc",
      "new_id": "7b8db43f16b5fddc712165ac3b372c653fffec38",
      "new_mode": 33188,
      "new_path": "tests/locks-test.cc"
    }
  ]
}
