Bug 94025 - [bisected] r600_texture.c:562: r600_texture_get_htile_size: Assertion `0' failed
Summary: [bisected] r600_texture.c:562: r600_texture_get_htile_size: Assertion `0' failed
Status: RESOLVED DUPLICATE of bug 94019
Alias: None
Product: Mesa
Classification: Unclassified
Component: Drivers/Gallium/radeonsi (show other bugs)
Version: git
Hardware: Other All
: medium normal
Assignee: Default DRI bug account
QA Contact: Default DRI bug account
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-02-06 17:46 UTC by Alexandre Demers
Modified: 2016-02-07 16:11 UTC (History)
1 user (show)

See Also:
i915 platform:
i915 features:


Attachments
backtrace (2.77 KB, text/plain)
2016-02-06 17:46 UTC, Alexandre Demers
Details

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.