Bug 94025

Summary: [bisected] r600_texture.c:562: r600_texture_get_htile_size: Assertion `0' failed
Product: Mesa Reporter: Alexandre Demers <alexandre.f.demers>
Component: Drivers/Gallium/radeonsiAssignee: Default DRI bug account <dri-devel>
Status: RESOLVED DUPLICATE QA Contact: Default DRI bug account <dri-devel>
Severity: normal    
Priority: medium CC: maraeo
Version: git   
Hardware: Other   
OS: All   
See Also: https://bugs.freedesktop.org/show_bug.cgi?id=94019
Whiteboard:
i915 platform: i915 features:
Attachments: backtrace

Description Alexandre Demers 2016-02-06 17:46:19 UTC
Created attachment 121557 [details]
backtrace

Since yesterday night, I've been unable to get a window manage running (see attached backtrace). After bisecting Mesa (was the only thing recompiled), I found out that the following commit was the culprit. Any application being launched while bisecting from and after that commit ends up with a "r600_texture.c:562: r600_texture_get_htile_size: Assertion `0' failed" error.

294ec530c9829aead97487b1feb06361ef97cc2d is the first bad commit
commit 294ec530c9829aead97487b1feb06361ef97cc2d
Author: Marek Olšák <marek.olsak@amd.com>
Date:   Sat Jan 30 01:52:58 2016 +0100

    gallium/radeon: just get num_tile_pipes from the winsys
    
    Reviewed-by: Michel Dänzer <michel.daenzer@amd.com>

:040000 040000 71cb2da01a5912443f2ca74f97e46533f50f50d8 964978b8372e95f18eb09db4158b032bf25611fb M	src
Comment 1 Alexandre Demers 2016-02-06 18:03:44 UTC
I added a line to output the value of "num_pipes" when it can't be matched to the defined values in the switch:
fprintf(stderr, "Driver was unable to determine num_pipes (value = %i)\n", num_pipes);

I ended up outputting "Driver was unable to determine num_pipes (value = 12)", which is not coverded in the switch... Expected?

In commit 294ec530, r600_get_gb_tiling_config() was removed. num_pipes was defined there and a comment was telling:
"/* Convert Sea Islands register values GB_ADDR_CFG and MC_ADDR_CFG
 * into GB_TILING_CONFIG register which is only present on R600-R700. */"

I'm using and R9 290X, which is a Sea Islands, covered by this comment.
Comment 2 Alexandre Demers 2016-02-06 23:30:42 UTC
(In reply to Alexandre Demers from comment #1)
> I'm using and R9 290X, which is a Sea Islands, covered by this comment.

I meant R9 280X (Tahiti family, thus Southern Islands). So, was it included in the removed r600_get_gb_tiling_config()? It seems so, but then the comment would have been slightly wrong.
Comment 3 Alexandre Demers 2016-02-07 06:52:17 UTC
With the code prior to the bad commit, num_pipes was defined as 8 (while now it is 12, thus hitting default and asserting)...
Comment 4 Nick Sarnie 2016-02-07 15:14:48 UTC
Likely duplicate of https://bugs.freedesktop.org/show_bug.cgi?id=94019
Comment 5 Alexandre Demers 2016-02-07 16:11:32 UTC

*** This bug has been marked as a duplicate of bug 94019 ***

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.