New issue
Advanced search Search tips
Starred by 2 users

Issue metadata

Status: Accepted
Owner: ----
Components:
OS: ----
Pri: 2
Type: Task



Sign in to add a comment
link

Issue 19: Use Error.h error handling inside backends

Reported by cwallez@chromium.org, Sep 11 Project Member

Issue description

Dawn should be stable even when backends fail in weird ways. Instead of asserting things worked like we do in backends now, we should use proper error handling, using the Error.h mechanisms.
 

Comment 1 by bugdroid1@chromium.org, Nov 29

Project Member
The following revision refers to this bug:
  https://dawn.googlesource.com/dawn/+/df72914a60d570678b60ccc2e23b2ff13396f218

commit df72914a60d570678b60ccc2e23b2ff13396f218
Author: Corentin Wallez <cwallez@chromium.org>
Date: Thu Nov 29 12:40:26 2018

Result: Add default template for Result<T, E>

It currently is a tagged pair instead of a tagged union because it was
much easier to write and the optimization can come later.

BUG=dawn:19

Change-Id: Idbfd86d559655b38871c2d1768bdd758e797dfbd
Reviewed-on: https://dawn-review.googlesource.com/c/2701
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Stephen White <senorblanco@chromium.org>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>

[modify] https://crrev.com/df72914a60d570678b60ccc2e23b2ff13396f218/src/tests/unittests/ResultTests.cpp
[modify] https://crrev.com/df72914a60d570678b60ccc2e23b2ff13396f218/src/common/Result.h

Comment 2 by bugdroid1@chromium.org, Dec 3

Project Member
The following revision refers to this bug:
  https://dawn.googlesource.com/dawn/+/85df07a1e54e97187f582089db1a00092d66466d

commit 85df07a1e54e97187f582089db1a00092d66466d
Author: Corentin Wallez <cwallez@chromium.org>
Date: Mon Dec 03 12:49:56 2018

Vulkan: Handle errors on device creation.

This is both something we should strive for for robustness of the
backends and in this case helped debug what the issue was on the
linux-dawn-rel builder that was failing all Vulkan tests.

BUG=dawn:19

Change-Id: Ibe9f5ad76b7766575bb74fe4993625cf82cdf13f
Reviewed-on: https://dawn-review.googlesource.com/c/2702
Commit-Queue: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Kai Ninomiya <kainino@chromium.org>

[modify] https://crrev.com/85df07a1e54e97187f582089db1a00092d66466d/src/dawn_native/Error.h
[modify] https://crrev.com/85df07a1e54e97187f582089db1a00092d66466d/src/dawn_native/vulkan/VulkanInfo.cpp
[modify] https://crrev.com/85df07a1e54e97187f582089db1a00092d66466d/src/dawn_native/vulkan/VulkanFunctions.cpp
[modify] https://crrev.com/85df07a1e54e97187f582089db1a00092d66466d/src/dawn_native/vulkan/NativeSwapChainImplVk.cpp
[modify] https://crrev.com/85df07a1e54e97187f582089db1a00092d66466d/src/dawn_native/vulkan/DeviceVk.cpp
[modify] https://crrev.com/85df07a1e54e97187f582089db1a00092d66466d/src/dawn_native/vulkan/DeviceVk.h
[modify] https://crrev.com/85df07a1e54e97187f582089db1a00092d66466d/src/dawn_native/vulkan/VulkanFunctions.h
[modify] https://crrev.com/85df07a1e54e97187f582089db1a00092d66466d/src/dawn_native/Error.cpp
[modify] https://crrev.com/85df07a1e54e97187f582089db1a00092d66466d/src/dawn_native/vulkan/VulkanInfo.h

Sign in to add a comment