DescriptionImprove context loss error handling
This patch implements interaction with KHR_robustness. It's especially
concerned with handling CONTEXT_LOST_KHR errors: as soon as one is
encountered, the normal context loss handling code is triggered, with
the addition that context guilt information is queried from GL. The patch
fixes asserts caused by CONTEXT_LOST_KHR errors in debug mode, which
should help with further development, and hides CONTEXT_LOST_KHR errors
from command buffer clients which are not supposed to see them.
For plumbing, bindings are added for the KHR_robustness API entry points,
and command buffer autogenerated files are updated so that
GLES2Util::GetStringEnum works with CONTEXT_LOST_KHR.
Redundant LoseContext call that was called on the context after
LoseContext was already called on the whole context group is removed from
GLES2CommandDecoderImpl::OnOutOfMemoryError. The behavior that the guilty
context is unknown when an out of memory error is generated is kept, as
it does not make sense to point the finger at a specific context on an
when it is not known which context was actually consuming the most
memory.
BUG=428332
Committed: https://crrev.com/37cc50e7e5f15299040d1b535929d0212aa06b9a
Cr-Commit-Position: refs/heads/master@{#302249}
Patch Set 1 #
Total comments: 7
Patch Set 2 : Removed command buffer autogenerated files update and addressed comments #
Messages
Total messages: 12 (3 generated)
|