)]}'
{
  "commit": "43b18d23f1be9ea4e01da9f164d1dbbb510978df",
  "tree": "2754022b7d0de7d728af3832ba5af146a858c540",
  "parents": [
    "43e7da53d189d2da034ac6ffcdb391eb8633e72f"
  ],
  "author": {
    "name": "Kyle Charbonneau",
    "email": "kylechar@google.com",
    "time": "Sat Nov 16 00:17:54 2024 +0000"
  },
  "committer": {
    "name": "Dawn LUCI CQ",
    "email": "dawn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Sat Nov 16 00:17:54 2024 +0000"
  },
  "message": "Revert \"Use mutex with DeviceVk deallocation queue\"\n\nThis reverts commit ae9acbdf215860b1474735cd00abffc2ecd79f8f.\n\nReason for revert: Causes mutex order inversion\n\nOriginal change\u0027s description:\n\u003e Use mutex with DeviceVk deallocation queue\n\u003e\n\u003e DeviceVk::mDescriptorAllocatorsPendingDeallocation can be accessed from\n\u003e an arbitrary thread without holding the device mutex. BindGroup\n\u003e destruction ends up appending values to the queue in\n\u003e Device::EnqueueDeferredDeallocation(). Add a mutex to protect\n\u003e mDescriptorAllocatorsPendingDeallocation against data races.\n\u003e\n\u003e Adding MutexProtected wouldn\u0027t work with the existing iteration through\n\u003e the queue. This is because mutex would only be held for the duration of\n\u003e IterateUpTo() function call which builds BeginEnd. BeginEnd holds\n\u003e iterators into the container and if the container is modified while\n\u003e BeginEnd exists those iterators may be invalidated. Instead, add\n\u003e SerialStorage::TakeUpTo() which makes a new container that contains all\n\u003e the elements up to specific serial and removes them from the original\n\u003e container.\n\u003e\n\u003e Bug: 372651189\n\u003e Change-Id: I125a575e8b2ee632a681685ede744ae57f790bfa\n\u003e Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/214734\n\u003e Reviewed-by: Corentin Wallez \u003ccwallez@chromium.org\u003e\n\u003e Commit-Queue: Kyle Charbonneau \u003ckylechar@google.com\u003e\n\n# Not skipping CQ checks because original CL landed \u003e 1 day ago.\n\nBug: 372651189\nChange-Id: I6f8a187c7dd07d8e91d93b23be9304b97dbdf465\nReviewed-on: https://dawn-review.googlesource.com/c/dawn/+/215254\nCommit-Queue: Kyle Charbonneau \u003ckylechar@google.com\u003e\nAuto-Submit: Kyle Charbonneau \u003ckylechar@google.com\u003e\nReviewed-by: Loko Kung \u003clokokung@google.com\u003e\nCommit-Queue: Loko Kung \u003clokokung@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "6fc69c7427b08d4d7640a0eb28b50dba28da23f0",
      "old_mode": 33188,
      "old_path": "src/dawn/native/vulkan/DeviceVk.cpp",
      "new_id": "2e6d2dc3dc99c60b534b52c88a15746f6f73d495",
      "new_mode": 33188,
      "new_path": "src/dawn/native/vulkan/DeviceVk.cpp"
    },
    {
      "type": "modify",
      "old_id": "aa713c73c02684030a2c55c6814c71763fab4d60",
      "old_mode": 33188,
      "old_path": "src/dawn/native/vulkan/DeviceVk.h",
      "new_id": "75df610612e0e0c3c12409db776bd3d386dd1878",
      "new_mode": 33188,
      "new_path": "src/dawn/native/vulkan/DeviceVk.h"
    }
  ]
}
