Summary: | vulkan dota2 broken (segfaulting), found bug commit | ||
---|---|---|---|
Product: | Mesa | Reporter: | Sylvain BERTRAND <sylvain.bertrand> |
Component: | Drivers/Vulkan/radeon | Assignee: | mesa-dev |
Status: | RESOLVED FIXED | QA Contact: | mesa-dev |
Severity: | blocker | ||
Priority: | highest | ||
Version: | git | ||
Hardware: | x86-64 (AMD64) | ||
OS: | Linux (All) | ||
Whiteboard: | |||
i915 platform: | i915 features: |
Description
Sylvain BERTRAND
2018-04-22 09:50:39 UTC
Yeah, I noticed this too. https://patchwork.freedesktop.org/patch/218205/ should fix this. On Sun, Apr 22, 2018 at 05:28:45PM +0000, bugzilla-daemon@freedesktop.org wrote: > https://bugs.freedesktop.org/show_bug.cgi?id=106174 > > --- Comment #1 from Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> --- > Yeah, I noticed this too. > > https://patchwork.freedesktop.org/patch/218205/ > > should fix this. Since I'm not into nir, I just reverted the patch. Your patch seems to do what the commit intended to do in the first place, though. Fixed by: author Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> commit 0e945fdf23bac5a62c15edfcbfd9d6ac4eee592f nir: Do not use progress for unreachable code in return lowering. We seem to use progress for two cases: 1) When we lowered some returns. 2) When we remove unreachable code. If just case 2 happens we assert as state->return_flag has not been allocated yet, but we are still trying to do insert all predicates based on it. This splits the concerns. We only use progress internally for case 1 and then keep track of 2 in a separate variable to indicate progress in the return value of the pass. This is slightly better than transforming the assert into if (!state->return_flag) return, as the solution in this patch avoids inserting predicates even if some other part of the might need them. Fixes: 6e22ad6edc "nir: return early when lowering a return at the end of a function" CC: 18.1 <mesa-stable@lists.freedesktop.org> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=106174 Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com> |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.