Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 661502 - x11-drivers/xf86-video-amdgpu-18.0.1-r1 regression, undefined symbols for fb, shadow,
Summary: x11-drivers/xf86-video-amdgpu-18.0.1-r1 regression, undefined symbols for fb,...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo X packagers
URL:
Whiteboard:
Keywords:
: 662282 (view as bug list)
Depends on:
Blocks:
 
Reported: 2018-07-18 13:26 UTC by Duncan
Modified: 2018-08-08 19:25 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Duncan 2018-07-18 13:26:12 UTC
After upgrading to xf86-video-amdgpu-18.0.1-r1 today and rebooting, xorg wouldn't start.  Xorg.0.log complains about undefined symbols in amdgpu_drv.so.  Downgrading back to 18.0.1 (binpkg) got me back a working X.

The initial undefined symbol is fbImageGlyphBlt.  Googling it yielded a solution, a *.conf file dropped in the xorg.conf.d with the following, which allowed me to binpkg-upgrade back to -r1 and still have a working X:

Section "Module"
    Load    "shadow"
    Load    "fb"
    Load    "glamoregl"
EndSection

Note that I actually had the glamoregl line but at some point I had commented it out and things still worked thru 18.0.1, but not with 18.0.1-r1.

Also note that I tried just the fb line first, but ended up with further missing symbols and ultimately had to uncomment all three lines as suggested by the google results -- just one didn't do it.

So looking at the changes between 18.0.1 and 18.0.1-r1, it's a jump from EAPI 5 to EAPI 7, but it's ALSO a drop of the xorg-2 inherit and doing more stuff in the ebuild itself, apparently due to xorg-2.eclass only supporting eapis 3,4,5.

My guess is that the eclass somehow arranged for video drivers to pull in those modules automatically so they didn't have to be listed in xorg.conf.

If that's correct, then it's likely to be more than amdgpu that regressed, and a fix ASAP is needed to prevent too many people seeing this regression.  Maybe just have all driver packages that need it drop a file like that in modules.conf.d and be done with it?
Comment 1 Duncan 2018-07-18 13:37:54 UTC
Just confirmed that rebuilding 18.0.1, commenting those module-loading lines in the conf snippet, and restarting X, does indeed work.  So it's not something else I installed since the original 18.0.1, it's gotta be that -r1 missing whatever it was that had xorg auto-loading those modules for -r0.
Comment 2 Reva Denis 2018-07-20 15:29:01 UTC
I when I upgrade to xf86-video-amdgpu-18.0.1-r1, I have X working unstable and when I run any opengl application I get hard freeze.
So xf86-video-amdgpu-18.0.1-r1 looks too unstable.
Comment 3 Alexander Tsoy 2018-08-01 18:46:03 UTC
Please test the patch from my PR.
Comment 4 Matt Turner gentoo-dev 2018-08-01 18:49:17 UTC
(In reply to Alexander Tsoy from comment #3)
> Please test the patch from my PR.

That seems like a hack.

Does a clean rebuild of 18.0.1-r1 fix the problem? Does -r2 fix it?
Comment 5 Matt Turner gentoo-dev 2018-08-01 18:50:24 UTC
(In reply to Matt Turner from comment #4)
> Does -r2 fix it?

Oops. Thinking of a different driver. There is no -r2.
Comment 6 Alexander Tsoy 2018-08-01 19:54:25 UTC
(In reply to Matt Turner from comment #4)
> That seems like a hack.
BIND_NOW breaks xorg and this is a known problem.
Comment 7 Chí-Thanh Christopher Nguyễn gentoo-dev 2018-08-01 22:06:39 UTC
*** Bug 662282 has been marked as a duplicate of this bug. ***
Comment 8 Larry the Git Cow gentoo-dev 2018-08-08 19:25:47 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7d2a1c345f249f7ba6f8f786e3f81662bb0c481c

commit 7d2a1c345f249f7ba6f8f786e3f81662bb0c481c
Author:     Matt Turner <mattst88@gentoo.org>
AuthorDate: 2018-08-08 19:11:36 +0000
Commit:     Matt Turner <mattst88@gentoo.org>
CommitDate: 2018-08-08 19:24:50 +0000

    Revert "x11-drivers/xf86-video-amdgpu: port to EAPI 7"
    
    In the port to EAPI=7, we stopped inheriting xorg-2 since that eclass is
    not EAPI 7 ready. Unfortunately it was providing some critical
    functionality:
    
    [[ ${PN} == xf86-video-* || ${PN} == xf86-input-* ]] && DRIVER="yes"
    ...
    xorg-2_flags_setup() {
    ...
    [[ ${PN} = xorg-server || -n ${DRIVER} ]] && append-ldflags -Wl,-z,lazy
    
    In order to revert this commit, we must revert some commits that fix
    problems introduced by it as well. In total:
    
    This reverts commit 568eca2a556b1f5ba09d5486374cec7346ab1fce.
    
    Revert "x11-drivers/xf86-video-amdgpu: add --disable-selective-werror"
    
    This reverts commit 66c24d866e939044601f58d1521e00224ca8bf4b.
    
    Revert "x11-drivers/xf86-video-amdgpu: fix xorg-server:= dependency"
    
    This reverts commit e900d1be730882c962354203277ebb1ba499c0d3.
    
    Closes: https://bugs.gentoo.org/661502

 .../xf86-video-amdgpu-18.0.1-r1.ebuild             | 52 ----------------------
 .../xf86-video-amdgpu-9999.ebuild                  | 51 +++++----------------
 2 files changed, 11 insertions(+), 92 deletions(-)