dawn-cmake/include/dawn
Le Hoang Quyen 69e1c4b638 DawnNative: implement Instance::ProcessEvents
Since https://dawn-review.googlesource.com/c/dawn/+/120940, callbacks
will be deferred to be executed in next device.APITick() instead of
immediately.
However, if the device is already destroyed (last ref dropped),
user/wire_server has no chance to call device.APITick() anymore, leading
to the callbacks waiting in queue forever.

This is also possibly the cause of memory leaks in cluserfuzz tests.

This CL attempt to fix it by implementing Instance::ProcessEvents():
In this method, every created device will invoke APITick() even if it is
already lost/externally released.

bug: chromium:1422507
bug: dawn:752
Change-Id: Iec69ad3b547a7e88c6e1a2225b13ad060a501a4f
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/123420
Commit-Queue: Quyen Le <lehoangquyen@chromium.org>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: Austin Eng <enga@chromium.org>
2023-03-14 19:03:10 +00:00
..
native DawnNative: implement Instance::ProcessEvents 2023-03-14 19:03:10 +00:00
platform Add dawn version hash to cache keys. 2022-06-24 23:39:49 +00:00
wire Run ./tools/format 2022-11-18 11:57:37 +00:00
BUILD.gn Remove old src/include folder 2022-06-18 16:16:11 +00:00
EnumClassBitmasks.h Make EnumClassBitmask's BoolConvertible constructor explicit. 2023-01-30 13:51:32 +00:00
dawn_proc.h Enable build/header_guard 2022-04-11 18:30:50 +00:00
dawn_thread_dispatch_proc.h Enable build/header_guard 2022-04-11 18:30:50 +00:00
dawn_wsi.h Consistent formatting for Dawn/Tint. 2022-05-01 14:40:55 +00:00