Bug 217023

Summary: x11-servers/xorg-server: undefined symbol "shadowUpdatePacked", X does not start
Product: Ports & Packages Reporter: Helge Oldach <freebsd>
Component: Individual Port(s)Assignee: freebsd-x11 (Nobody) <x11>
Status: Closed FIXED    
Severity: Affects Many People CC: freebsd, gja822, zeising
Priority: --- Flags: bugzilla: maintainer-feedback? (x11)
Version: Latest   
Hardware: i386   
OS: Any   
See Also: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=218153

Description Helge Oldach 2017-02-12 11:39:49 UTC
Since yesterday's X.org server update to 1.18.4, drivers cannot be loaded properly. For example, with driver autodetect both the modesetting and the VESA driver result in an undefined symbol "shadowUpdatePacked":

[  4203.351] (==) Matched intel as autoconfigured driver 0
[  4203.351] (==) Matched modesetting as autoconfigured driver 1
[  4203.351] (==) Matched scfb as autoconfigured driver 2
[  4203.351] (==) Matched vesa as autoconfigured driver 3
[  4203.351] (==) Assigned the driver to the xf86ConfigLayout
[  4203.351] (II) LoadModule: "intel"
[  4203.351] (WW) Warning, couldn't open module intel
[  4203.351] (II) UnloadModule: "intel"
[  4203.351] (II) Unloading intel
[  4203.351] (EE) Failed to load module "intel" (module does not exist, 0)
[  4203.351] (II) LoadModule: "modesetting"
[  4203.351] (II) Loading /usr/local/lib/xorg/modules/drivers/modesetting_drv.so
[  4203.352] (EE) Failed to load /usr/local/lib/xorg/modules/drivers/modesetting_drv.so: /usr/local/lib/xorg/modules/drivers/modesetting_drv.so: Undefined symbol "shadowUpdatePacked"
[  4203.352] (II) UnloadModule: "modesetting"
[  4203.352] (II) Unloading modesetting
[  4203.352] (EE) Failed to load module "modesetting" (loader failed, 7)
[  4203.352] (II) LoadModule: "scfb"
[  4203.352] (WW) Warning, couldn't open module scfb
[  4203.352] (II) UnloadModule: "scfb"
[  4203.352] (II) Unloading scfb
[  4203.352] (EE) Failed to load module "scfb" (module does not exist, 0)
[  4203.352] (II) LoadModule: "vesa"
[  4203.352] (II) Loading /usr/local/lib/xorg/modules/drivers/vesa_drv.so
[  4203.352] (EE) Failed to load /usr/local/lib/xorg/modules/drivers/vesa_drv.so: /usr/local/lib/xorg/modules/drivers/vesa_drv.so: Undefined symbol "shadowUpdatePacked"
[  4203.352] (II) UnloadModule: "vesa"
[  4203.352] (II) Unloading vesa
[  4203.352] (EE) Failed to load module "vesa" (loader failed, 7)
[  4203.352] (EE) No drivers available.
[  4203.352] (EE)
Fatal server error:
[  4203.352] (EE) no screens found(EE)

Same happens when (for example) explicitly requesting the VESA driver per xorg.conf file (i.e. no autodetect).

As a result, X does not start.
Comment 1 Helge Oldach 2017-02-12 11:44:24 UTC
localhost 10.3-STABLE FreeBSD 10.3-STABLE #0 r313234: Sat Feb  4 22:54:54 CET 2017
Comment 2 Helge Oldach 2017-02-12 15:56:22 UTC
It turns out the issue can be worked around by explicitly loading the shadow library module:

Section "Module"
        Load    "shadow"
EndSection

Question however is why this doesn't happen automatically with the appropriate drivers with 1.18.4 while it was working fine with 1.17.4.
Comment 3 gja822 2017-02-15 17:43:30 UTC
Also see https://forums.freebsd.org/threads/59717/
with other "undefined symbols" from Radeon driver.
Comment 4 Niclas Zeising freebsd_committer 2017-12-16 20:28:49 UTC
Hi!
Is this still an issue?
Comment 5 Helge Oldach 2017-12-17 06:58:48 UTC
(In reply to Niclas Zeising from comment #4)
Thanks for tracking - no, the issue appears fixed now.