Argoden,
Could you please do the following to check if the issue you saw was
the same one? Ssh in as root, then "
init 3", "
startx". If you see
the msg "undefined symbol: drm_intel_bufmgr_gem_set_vma_cache_size",
we know we found it.
The fix: "
yum update libdrm".
Please let me know how it goes for you.
The details.
----------------------------------------------------------------------
Eventually I found one laptop with Intel graphics chips and was able
to reproduce something similar. Same as Argoden, I was able to ssh
into the box but neither ESC nor removing rhgb helps. Once ssh in, I
did "ps -aef" and saw no X server running (bad). So I did "init 3" as
root, then "startx" to start X server manually. ThenI saw the
following:
Quote:
# init 3
# startx
/usr/bin/X: symbol lookup error:
/usr/lib64/xorg/modules/drivers/intel_drv.so: undefined symbol:
drm_intel_bufmgr_gem_set_vma_cache_size
# rpm -qf /usr/lib64/xorg/modules/drivers/intel_drv.so
xorg-x11-drv-intel-2.19.0-3.fc16.x86_64
# debuginfo-install xorg-x11-drv-intel
# f=/usr/lib/debug//usr/lib64/xorg/modules/drivers/intel_drv.so.debug
# s=drm_intel_bufmgr_gem_set_vma_cache_size
# nm $f | grep $s
U drm_intel_bufmgr_gem_set_vma_cache_size
## ^^ U means undefined
|
X dies because a symbol in intel_drv.so was not resolved. How does
a regular F16 work then? I installed regular F16 on the same box,
and found the missing symbol was from libdrm_intel.so.1:
Quote:
# ldd /usr/lib/debug//usr/lib64/xorg/modules/drivers/intel_drv.so.debug
libdrm_intel.so.1 => /usr/lib64/libdrm_intel.so.1 (0x00007f02a15db000)
# rpm -qf /usr/lib64/libdrm_intel.so.1
libdrm-2.4.26-3.fc16.x86_64
# debuginfo-install libdrm
# rpm -ql libdrm-debuginfo | grep libdrm_intel
# f=/usr/lib/debug/usr/lib64/libdrm_intel.so.1.0.0.debug
# s=drm_intel_bufmgr_gem_set_vma_cache_size
# nm $f | grep $s
0000000000008960 T drm_intel_bufmgr_gem_set_vma_cache_size
## T means "text", ie. symbol is defined here.
|
Hmmm, but libdrm.rpm was present when X died? They are different
version. I'll use the following shorthands for discussion:
Quote:
#1 xorg-x11-drv-intel-2.16.0-2.fc16.x86_64 (good)
#2 xorg-x11-drv-intel-2.19.0-3.fc16.x86_64 (bad)
#3 libdrm-2.4.26-3.fc16.x86_64
#4 libdrm-2.4.33-1.fc16.x86_64
#5 the symbol drm_intel_bufmgr_gem_set_vma_cache_size
|
When F16 was first released, it comes with #1 and #3. Since #5 was
not used by #1, #1 worked fine when I first released GNOME2.F16 in Apr
2012.
Around 2012-05-29 #2 was released. #2 requiers #5, which is provided
by #4. If you acquires #2 via "yum update", #4 will be updated also.
#2 is happy with #4, and X is happy.
Unfortunately this posed an issue for those of us who do "yum install
xorg-x11-drv-intel", include GNOME2.F16 users, after #2 is released.
Why? Let's see what #2 requires and what #3 provides:
# rpm -q --requires xorg-x11-drv-intel-2.19.0-3.fc16.x86_64
libdrm_intel.so.1()(64bit)
# rpm -q --provides libdrm-2.4.26-3.fc16.x86_64
libdrm_intel.so.1()(64bit)
Note that #3 is part of F16 minimum installation. So when we install
#2, yum/rpm says, "yup, #3 provides what #2 requires; no need to
update #3 to #4." But #3 actually does not provide what #2 needs
(#5). Thus our issue at hand.