LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Linux - Software (https://www.linuxquestions.org/questions/linux-software-2/)
-   -   Compiz won't start after upgrade (https://www.linuxquestions.org/questions/linux-software-2/compiz-wont-start-after-upgrade-761409/)

prushik 10-12-2009 11:43 AM

Compiz won't start after upgrade
 
I upgraded my Ubuntu system from Jaunty to Karmic the other day and now compiz will not work. I tried changing my video driver in xorg.conf, and rebooted my computer many times. I tried "ati", "radeon", "flgrx", and "fbdev". ati and radeon work (makes sense since its a radeon card), but compiz still wont work. When I go to appearance settings and click on effects, it says that desktop effects can not be enabled. So I ran "compiz.real --replace" from the command line and it core dumped. So I ran compiz from the command line, and it failed, but I will post the output here:
Code:

Checking for Xgl: not present.
xset q doesn't reveal the location of the log file. Using fallback /var/log/Xorg.0.log
Detected PCI ID for VGA:
Checking for texture_from_pixmap: not present.
Trying again with indirect rendering:
Checking for texture_from_pixmap: not present.
aborting and using fallback: /usr/bin/metacity

It worked before, I don't know what the problem is.

gold_leaf 10-12-2009 02:42 PM

Code:

Checking for Xgl: not present.
That is the problem; no Open GL, no compiz. The question is why it's absent, radeon drivers support Xgl. Could try looking over Xorg's log for errors or warnings:

Code:

grep '(EE)' /var/log/Xorg.0.log
grep '(WW)' /var/log/Xorg.0.log


prushik 10-12-2009 04:14 PM

Code:

prushik@ubuntu:~$ grep '(EE)' /var/log/Xorg.0.log > errorland
prushik@ubuntu:~$ grep '(WW)' /var/log/Xorg.0.log >> errorland
prushik@ubuntu:~$ cat errorland
        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(EE) RADEON(0): [dri] RADEONDRIGetVersion failed to open the DRM
(EE) GLX error: Can not get required symbols.
        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(WW) The directory "/usr/share/fonts/X11/cyrillic" does not exist.
(WW) RADEON(0): LVDS Info:
(WW) RADEON(0): Direct rendering disabled
prushik@ubuntu:~$

That doesn't sound good. GLX can not get the required symbols. Could this be a library problem? Either something missing or a problem with a new version?

gold_leaf 10-13-2009 02:55 PM

Possibly not a library issue - the error might be indicating that X is trying to use the radeon driver without loading the kernel's radeon DRM driver, apparently. This seems possible or even likely given the history of trying the fglrx drivers; these may be getting in the way.

Code:

sudo rmmod fglrx
sudo modprobe radeon

Hope that helps, if not there's other possible causes.

"errorland" is a scary and depressing place :/

adamk75 10-14-2009 04:11 AM

Quote:

Originally Posted by prushik (Post 3716925)
Code:

prushik@ubuntu:~$ grep '(EE)' /var/log/Xorg.0.log > errorland
prushik@ubuntu:~$ grep '(WW)' /var/log/Xorg.0.log >> errorland
prushik@ubuntu:~$ cat errorland
        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(EE) RADEON(0): [dri] RADEONDRIGetVersion failed to open the DRM
(EE) GLX error: Can not get required symbols.
        (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(WW) The directory "/usr/share/fonts/X11/cyrillic" does not exist.
(WW) RADEON(0): LVDS Info:
(WW) RADEON(0): Direct rendering disabled
prushik@ubuntu:~$

That doesn't sound good. GLX can not get the required symbols. Could this be a library problem? Either something missing or a problem with a new version?

Please show us the full /var/log/Xorg.0.log file as well as the output of 'dmesg | grep drm' and 'lsmod'. The real error is the "failed to open the DRM" message.

Adam

adamk75 10-14-2009 04:12 AM

Quote:

Originally Posted by gold_leaf (Post 3716843)
Code:

Checking for Xgl: not present.
That is the problem; no Open GL, no compiz.

That is completely incorrect. Xgl is not required and not even wanted.

Adam

gold_leaf 10-15-2009 03:41 AM

Quote:

Originally Posted by adamk75 (Post 3718620)
That is completely incorrect. Xgl is not required and not even wanted.

Adam

D'oh! Really? I've been under a bad impression the whole time, apologies to the OP; could you help me, Adam, understand why it is checked for, and what texture_from_pixmap means in this context? I'm none too graphics code savvy. TIA.

adamk75 10-15-2009 05:35 AM

texture_from_pixmap refers to the opengl extension GLX_EXT_texture_from_pixmap. The X server stores all windows and their contents as pixmaps, and that opengl extension allows your drivers to convert those pixmaps easily to an opengl texture. compiz relies upon this extension and, in fact, this extension was originally specified by the (former) primary compiz developer. However, he was aware of the fact that it would take a while for all opengl driver implementations for linux to support this opengl extension. In addition, not all drivers even supported the Xorg COMPOSITE extension. So this developer (David Reveman) wrote a nested X server, called Xgl. This X server runs on top of Xorg, provides the Composite extension and, when used in conjunction with Mesa, can provide the GLX_EXT_texture_from_pixmap extension.

However, at the present time, intel, nvidia, AMD and, supposedly, VIA all produce drivers that support Composite and texture_from_pixmap. They are the only cards known to run compiz. So, in this day and age, there is no reason to use Xgl. Development on Xgl stopped a long time ago, and I'm not aware of any recent distribution that actually ships with Xgl. However, the compiz-manager script still checks for the presence of Xgl. So, in short, the lack of presence of Xgl has nothing to do with whether or not a persons opengl drivers are setup properly.

Adam

gold_leaf 10-16-2009 10:16 AM

Thanks for clearing that up for me.

prushik 10-18-2009 02:29 AM

Here's dmesg

Code:

prushik@ubuntu:~$ dmesg | grep -i drm
[  281.789186] [drm] Initialized drm 1.1.0 20060810
[  281.850352] [drm] radeon default to kernel modesetting DISABLED.
[  281.850552] [drm] Initialized radeon 1.31.0 20080528 for 0000:01:00.0 on minor 0

And heres lsmod

Code:

prushik@ubuntu:~$ lsmod
Module                  Size  Used by
radeon                636000  0
ttm                    36212  1 radeon
drm                  159584  2 radeon,ttm
i2c_algo_bit            5760  1 radeon
binfmt_misc            8356  1
ppdev                  6688  0
lp                      8964  0
parport                35340  2 ppdev,lp
vboxnetflt            84840  0
vboxnetadp            78344  0
vboxdrv              121160  1 vboxnetflt
bridge                47952  0
stp                    2272  1 bridge
bnep                  12060  2
snd_intel8x0          30168  2
snd_ac97_codec        101216  1 snd_intel8x0
ac97_bus                1532  1 snd_ac97_codec
snd_pcm_oss            37920  0
snd_mixer_oss          16028  1 snd_pcm_oss
snd_pcm                75296  3 snd_intel8x0,snd_ac97_codec,snd_pcm_oss
snd_seq_dummy          2656  0
arc4                    1660  2
snd_seq_oss            28576  0
snd_seq_midi            6432  0
snd_rawmidi            22208  1 snd_seq_midi
ecb                    2524  2
snd_seq_midi_event      6940  2 snd_seq_oss,snd_seq_midi
snd_seq                50224  7 snd_seq_dummy,snd_seq_oss,snd_seq_midi,snd_seq_midi_event
snd_timer              22276  2 snd_pcm,snd_seq
pcmcia                36808  0
b43                  122136  0
joydev                10272  0
snd_seq_device          6920  5 snd_seq_dummy,snd_seq_oss,snd_seq_midi,snd_rawmidi,snd_seq
mac80211              181236  1 b43
snd                    59204  15 snd_intel8x0,snd_ac97_codec,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_seq_oss,snd_rawmidi,snd_seq,snd_timer,snd_seq_device
soundcore              7264  1 snd
tifm_7xx1              5372  0
yenta_socket          24200  1
sdhci_pci              7100  0
rsrc_nonstatic        11644  1 yenta_socket
iptable_filter          3100  0
psmouse                56180  0
cfg80211              93052  2 b43,mac80211
snd_page_alloc          9156  2 snd_intel8x0,snd_pcm
tifm_core              7832  1 tifm_7xx1
sdhci                  17472  1 sdhci_pci
pcmcia_core            35792  3 pcmcia,yenta_socket,rsrc_nonstatic
serio_raw              5280  0
ip_tables              11692  1 iptable_filter
led_class              4096  2 b43,sdhci
btusb                  11856  2
nfsd                  241100  0
x_tables              16544  1 ip_tables
exportfs                4412  1 nfsd
nfs                  271912  0
lockd                  67724  2 nfsd,nfs
nfs_acl                2844  2 nfsd,nfs
auth_rpcgss            36576  2 nfsd,nfs
sunrpc                191712  6 nfsd,nfs,lockd,nfs_acl,auth_rpcgss
dm_raid45              84228  0
xor                    15620  1 dm_raid45
usbhid                38208  0
ohci1394              29900  0
ssb                    35300  1 b43
8139too                22620  0
ieee1394              86596  1 ohci1394
8139cp                19260  0
mii                    5212  2 8139too,8139cp
video                  19380  0
output                  2780  1 video
intel_agp              27484  0
agpgart                34988  3 ttm,drm,intel_agp

I can't post my full xorg.0.log because its too big. Tell me what I should grep out of it and I'll post that.



I did try to rmmod fglrx but it said that fglrx wasn't loaded. So that didn't help.

Still looking for a solution..

prushik 10-18-2009 02:57 AM

I'm not sure if this is relevant, but I ran glxinfo, and heres the output:
Code:

prushik@ubuntu:~$ glxinfo
name of display: :0.0
X Error of failed request:  BadRequest (invalid request code or no such operation)
  Major opcode of failed request:  135 (GLX)
  Minor opcode of failed request:  19 (X_GLXQueryServerString)
  Serial number of failed request:  16
  Current serial number in output stream:  16


adamk75 10-18-2009 07:00 AM

We really need to see your full Xorg log. Please use a service like http://pastebin.com/ and give us the URL here. Also, please show us the full output of 'LIBGL_DEBUG=verbose glxinfo'.

Adam

prushik 10-18-2009 02:32 PM

http://pastebin.com/m15db4ac1

Thats Xorg.0.log


'LIBGL_DEBUG=verbose glxinfo' was exactly the same as 'glxinfo'

adamk75 10-18-2009 03:37 PM

Did you compile your own kernel? What is the output of 'dmesg | grep drm' ?

Oh, actually, first remove fglrx completely from your box. You still have it at least partially installed.

Adam

prushik 10-18-2009 08:03 PM

Quote:

Originally Posted by adamk75 (Post 3724100)
Did you compile your own kernel? What is the output of 'dmesg | grep drm' ?

Oh, actually, first remove fglrx completely from your box. You still have it at least partially installed.

Adam

Nope. I did not compile my own kernel, I'm using kernel 2.6.31-14-generic from the Ubuntu karmic repositories.
I already posted the output of 'dmesg | grep drm' (I added a '-i' to grep) it was:
Code:

prushik@ubuntu:~$ dmesg | grep -i drm
[  281.789186] [drm] Initialized drm 1.1.0 20060810
[  281.850352] [drm] radeon default to kernel modesetting DISABLED.
[  281.850552] [drm] Initialized radeon 1.31.0 20080528 for 0000:01:00.0 on minor 0

How should I remove fglrx? Through synaptic or apt or what?

prushik 10-19-2009 12:20 AM

[Solved]
 
Ok. Problem solved.

It actually was an issue with OpenGL.
It was a problem with my version of Mesa. I'm not sure, but I'm guessing something went wrong in the update, I uninstalled gl1-mesa-glx and installed gl1-mesa-dri and gl1-mesa-swx11. Then I ran "compiz --replace" and it worked, but very slowly and there were thick black borders on my windows. I saw in the output that texture_from_pixmap was present and that it never tried indirect rendering. So I uninstalled gl1-mesa-swx11 and installed gl1-mesa-glx again and then compiz ran perfectly. I saw in the output that texture_from_pixmap was not present, but then it tried indirect rendering and then it found texture from pixmap.
Now everything is working except the "unsupported" plugins. They disable themselves whenever I enable them. Anybody know how to force them to work?

adamk75 10-19-2009 03:47 AM

Quote:

Originally Posted by prushik (Post 3724329)
Nope. I did not compile my own kernel, I'm using kernel 2.6.31-14-generic from the Ubuntu karmic repositories.
I already posted the output of 'dmesg | grep drm' (I added a '-i' to grep) it was:
Code:

prushik@ubuntu:~$ dmesg | grep -i drm
[  281.789186] [drm] Initialized drm 1.1.0 20060810
[  281.850352] [drm] radeon default to kernel modesetting DISABLED.
[  281.850552] [drm] Initialized radeon 1.31.0 20080528 for 0000:01:00.0 on minor 0

How should I remove fglrx? Through synaptic or apt or what?

Depends on how you installed it. If you installed it via synaptic, then that's how you should remove it.

Adam


All times are GMT -5. The time now is 11:23 PM.