)]}'
{
  "commit": "f327fdf61534e1e9993b5b86b3d7fde04b40ba19",
  "tree": "2b548dd08ef4fb65af07a9e4fb696aef0f988bd8",
  "parents": [
    "820c2464a8398c887223a2f10337aa2ea5ae5d6b"
  ],
  "author": {
    "name": "Le Hoang Quyen",
    "email": "lehoangquyen@chromium.org",
    "time": "Wed Feb 11 22:24:51 2026 -0800"
  },
  "committer": {
    "name": "Dawn LUCI CQ",
    "email": "dawn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Wed Feb 11 22:24:51 2026 -0800"
  },
  "message": "D3D11: Remove device lock from Buffer::APIDestroy\n\nRefactors pending buffer map tracking to use an intrusive linked list\nstructure with nodes embedded directly in the Buffer class. This\nensures efficient O(1) cancellation and avoids heap allocations.\n\nKey changes:\n- Embeds BufferMapRequest nodes in Buffer to track pending maps.\n- Queue uses an ordered map of intrusive lists for serial processing.\n- Makes DestroyImpl() thread-safe via CancelScheduledBufferMapping().\n- D3D11 overrides UseDeviceGuardForDestroy() to return nullopt.\n\nBug: 481211676\nChange-Id: I7d88d5866382fa13d40116f073836b0a1636c75c\nReviewed-on: https://dawn-review.googlesource.com/c/dawn/+/288775\nReviewed-by: Corentin Wallez \u003ccwallez@chromium.org\u003e\nCommit-Queue: Quyen Le \u003clehoangquyen@chromium.org\u003e\nReviewed-by: Loko Kung \u003clokokung@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "ac649e2dcfa8916085f8ff0472e98897db1eeacb",
      "old_mode": 33188,
      "old_path": "src/dawn/dawn.json",
      "new_id": "574ab661e3b3da6a008d65496f5226b3500b7479",
      "new_mode": 33188,
      "new_path": "src/dawn/dawn.json"
    },
    {
      "type": "modify",
      "old_id": "ca7b12c9cf9aeb510ff48521a3fff0f81e053200",
      "old_mode": 33188,
      "old_path": "src/dawn/native/Buffer.cpp",
      "new_id": "34e704a64dbc4d2a8404c03a6b8cb808b0d3d266",
      "new_mode": 33188,
      "new_path": "src/dawn/native/Buffer.cpp"
    },
    {
      "type": "modify",
      "old_id": "91070b5654d0d391110af9a587c1d78ea0aab9db",
      "old_mode": 33188,
      "old_path": "src/dawn/native/Buffer.h",
      "new_id": "2da5466e5d827a444006d65f995e2ac1ef00254a",
      "new_mode": 33188,
      "new_path": "src/dawn/native/Buffer.h"
    },
    {
      "type": "modify",
      "old_id": "276bd4d05ff1e7ffc6de8305f61906105a5fda8c",
      "old_mode": 33188,
      "old_path": "src/dawn/native/d3d11/BufferD3D11.cpp",
      "new_id": "15a7b20f3a5f678ab9f1ed93f303519003b07569",
      "new_mode": 33188,
      "new_path": "src/dawn/native/d3d11/BufferD3D11.cpp"
    },
    {
      "type": "modify",
      "old_id": "98b6cec7d603275fe65b099121484889dcdb0bdc",
      "old_mode": 33188,
      "old_path": "src/dawn/native/d3d11/BufferD3D11.h",
      "new_id": "282ebed1e68b9d846721c985824faf7274f326ea",
      "new_mode": 33188,
      "new_path": "src/dawn/native/d3d11/BufferD3D11.h"
    },
    {
      "type": "modify",
      "old_id": "abb06fc6a856756dd69f5921cfc49461b5c66bca",
      "old_mode": 33188,
      "old_path": "src/dawn/native/d3d11/QueueD3D11.cpp",
      "new_id": "8c62a84a3963f00f726043f420b14f1fc6b06cf1",
      "new_mode": 33188,
      "new_path": "src/dawn/native/d3d11/QueueD3D11.cpp"
    },
    {
      "type": "modify",
      "old_id": "37ac47eb4f8dd64e3ca998b496f3c34786a9d004",
      "old_mode": 33188,
      "old_path": "src/dawn/native/d3d11/QueueD3D11.h",
      "new_id": "4470445a114e9dd69401b79774438dd02f57029f",
      "new_mode": 33188,
      "new_path": "src/dawn/native/d3d11/QueueD3D11.h"
    }
  ]
}
