)]}'
{
  "commit": "da44df7daa86ecf3ca8086792e344a7452db08c3",
  "tree": "e3df40dce673e00239403f90b8722882307e0762",
  "parents": [
    "56e1566899bb18c74427054b7a1946e9155441ac"
  ],
  "author": {
    "name": "Jiawei Shao",
    "email": "jiawei.shao@intel.com",
    "time": "Tue Aug 04 17:43:47 2026 -0700"
  },
  "committer": {
    "name": "dawn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "email": "dawn-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Tue Aug 04 17:43:47 2026 -0700"
  },
  "message": "D3D12: Enable `SharedBufferMemoryFromWindowsHandle` on all UMA\n\nThis patch enables `SharedBufferMemoryFromWindowsHandle` on all\nUMA so that we can test this feature on non-cache-coherent UMA.\n\nThis patch also fixes a bug in `CanUseCopyResource()`. When a\nbuffer is created from shared buffer memory backed by a Windows\nfile mapping handle, `InitializeAsExternalBuffer()` sets\n`mAllocatedSize` to the wgpu buffer descriptor size, while the\nunderlying D3D12 resource is always the full shared heap\nallocation. When a small shared-memory buffer and a small device\nbuffer had matching `GetAllocatedSize()` values, `CopyResource`\nwas selected in `CanUseCopyResource()` even though the two D3D12\nresources had different widths, triggering a D3D12 validation\nerror: \"Source and Destination buffer resource must have the same\nsize/width.\".\n\nThis patch fixes the above issue by comparing the actual D3D12\nresource widths `GetDesc().Width` instead of `GetAllocatedSize()`.\n\nThis patch also uses `utils::SystemHandle` instead of raw `HANDLE`\nin the tests to ensure we never leak any `HANDLE`s in the tests.\n\nBug: 386255678\nChange-Id: I78a9a07c00de4de6e5a1a69dfa6538d6473ea224\nReviewed-on: https://dawn-review.googlesource.com/c/dawn/+/326495\nCommit-Queue: Shao, Jiawei \u003cjiawei.shao@intel.com\u003e\nReviewed-by: Corentin Wallez \u003ccwallez@chromium.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "b6352834dcd7684000ae2b2405e8ea651e0ca4dd",
      "old_mode": 33188,
      "old_path": "src/dawn/native/d3d12/BufferD3D12.cpp",
      "new_id": "59f3316455f3e49f7aebf3a78a943c49134d98b1",
      "new_mode": 33188,
      "new_path": "src/dawn/native/d3d12/BufferD3D12.cpp"
    },
    {
      "type": "modify",
      "old_id": "146a08d6652971e6c75dac0acc2a434b38b163af",
      "old_mode": 33188,
      "old_path": "src/dawn/native/d3d12/PhysicalDeviceD3D12.cpp",
      "new_id": "6e94a1c91e03cc09c7a75a48f4f8bc50a4c10230",
      "new_mode": 33188,
      "new_path": "src/dawn/native/d3d12/PhysicalDeviceD3D12.cpp"
    },
    {
      "type": "modify",
      "old_id": "356550c5786dc9e76702afc00d22c9272339ec20",
      "old_mode": 33188,
      "old_path": "src/dawn/tests/white_box/SharedBufferMemoryTests_win.cpp",
      "new_id": "b7d5f7bcb5ce83741b297a749d1f668ab64d53b5",
      "new_mode": 33188,
      "new_path": "src/dawn/tests/white_box/SharedBufferMemoryTests_win.cpp"
    }
  ]
}
