mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 16:08:04 +02:00
anv: add anv_batch_set_error() and anv_batch_has_error() helpers
The anv_batch_set_error() helper will track the first error that happened while recording a command buffer. The helper returns the currently tracked error to help the job of internal functions that may generate errors that need to be tracked and return a VkResult to the caller. We will use the anv_batch_has_error() helper to guard parts of the driver that are not safe to execute if an error has been generated while recording a particular command buffer. Reviewed-by: Topi Pohjolainen <topi.pohjolainen@intel.com>
This commit is contained in:
parent
d0195bd067
commit
a8ce8e3542
1 changed files with 15 additions and 0 deletions
|
|
@ -722,6 +722,21 @@ uint64_t anv_batch_emit_reloc(struct anv_batch *batch,
|
|||
VkResult anv_device_submit_simple_batch(struct anv_device *device,
|
||||
struct anv_batch *batch);
|
||||
|
||||
static inline VkResult
|
||||
anv_batch_set_error(struct anv_batch *batch, VkResult error)
|
||||
{
|
||||
assert(error != VK_SUCCESS);
|
||||
if (batch->status == VK_SUCCESS)
|
||||
batch->status = error;
|
||||
return batch->status;
|
||||
}
|
||||
|
||||
static inline bool
|
||||
anv_batch_has_error(struct anv_batch *batch)
|
||||
{
|
||||
return batch->status != VK_SUCCESS;
|
||||
}
|
||||
|
||||
struct anv_address {
|
||||
struct anv_bo *bo;
|
||||
uint32_t offset;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue