Bug 503819

Summary: Google Earth is not displayed correctly unless KMS is disabled on Intel 855GM
Product: [Fedora] Fedora Reporter: Walter Francis <wally>
Component: xorg-x11-drv-intelAssignee: Adam Jackson <ajax>
Status: CLOSED CURRENTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: 11CC: ajax, andreas.freiherr, masao-takahashi, mcepl, xgl-maint
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2009-09-12 16:19:31 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Walter Francis 2009-06-02 20:58:45 UTC
Description of problem:

Google Earth 5.3 displays a small piece of the sky, a little square in the upper-lefthand corner of the screen.  It uses lots of CPU, and never draws properly.  If I boot with nomodeset, it displays correctly.

glxinfo reports (typed, please excuse any typoes):

direct rendering: Yes
server glx vendor string: SGI
server glx version string: 1.2
[..]
OpenGL vendor string: Tungsten Graphics, Inc
OpenGL rendering string: Mesa DRI Intel(R) 852GM/855GM GEM 20090114
x86/MMX/SSE2
OpenGL version string: 1.3 Mesa 7.5-devel  

I attempted to take a screenshot, but it just turns out to be garbage.  Probably need to log a separate bug on that.

It also outputs the following to the terminal when running:

do_wait: drmWaitVBlank returned -1; IRQs don't seem to be working correctly.
Try adjusting the vblank_mode configuration parameter.

Version-Release number of selected component (if applicable):

I am using xorg-x11-drv-intel-2.7.0-7 on a 32 bit install, kernel is 2.6.29.4-167.fc11.i686.PAE

How reproducible:

100%

Steps to Reproduce:
1. Install Google Earth
2. Run Google Earth
3.
  
Actual results:

Tiny, unusable display in upper lefthand corner of window.

Expected results:

Normal full display within window created by Google Earth.

Additional info:

The average human emits approximately 95 watts of energy as heat in the form of infrared light.

Comment 1 Walter Francis 2009-06-02 21:03:32 UTC
Smolt profile for this machine:  http://www.smolts.org/client/show/pub_58dc2291-c20e-4e06-8832-42634c02e4c5

Comment 2 Matěj Cepl 2009-07-24 13:32:36 UTC
Thanks for the bug report.  We have reviewed the information you have provided above, and there is some additional information we require that will be helpful in our diagnosis of this issue.

Please attach your X server config file (/etc/X11/xorg.conf, if available), /var/log/dmesg, and X server log file (/var/log/Xorg.*.log) to the bug report as individual uncompressed file attachments using the bugzilla file attachment link below.

We will review this issue again once you've had a chance to attach this information.

Thanks in advance.

Comment 3 Walter Francis 2009-08-04 13:36:31 UTC
As of this moment, with modesetting AT DEFAULTS (and seems to be working, no Framebuffer, graphical Plymouth) and xorg-x11-drv-intel-2.7.0-7 and kernel 2.6.29.4-167 Google Earth's 3d rendering looks fine!  There is some problem with the fonts, I'm going to research/log that one separately.  I think this bug is fixed.

Comment 4 Andreas Freiherr 2009-08-04 23:49:21 UTC
How do you get Google Earth to run at all? - Since I tried last time, I upgraded to Kernel 2.6.29.6-213.fc11.i686.PAE, and what I get now when I remove my xorg.conf, make sure there is NO "nomodeset" in grub.conf and reboot, is...

[andreas@langnux ~]$ googleearth 
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Google Earth has caught signal 11.

Stacktrace from glibc:
  ./googleearth-bin [0x806c343]
  ./googleearth-bin [0x806c8b6]
  [0x5d0400]
  /opt/google-earth/libevll.so(_ZN5earth4evll12LightManager6updateERKNS0_8ViewInfoE+0x58) [0x35cbcc8]
  /opt/google-earth/libevll.so(_ZN5earth4evll13VisualContext6RenderEb+0x4dc) [0x376e43c]
  /opt/google-earth/libevll.so(_ZN5earth4evll13VisualContext4DrawEbb+0x349) [0x376f8f9]
  /opt/google-earth/libevll.so(_ZN5earth4evll17RenderContextImpl4drawEv+0x15c) [0x362a46c]
  ./librender.so(_ZN12RenderWidget6SetApiEPN5earth4evll3APIE+0x16a) [0xdaef8a]
  ./librender.so(_ZN5earth6render12RenderWindow12createWidgetEv+0xae) [0xd8e92e]
  ./libgoogleearth_lib.so(_ZN5earth6client12ModuleWidget9showEventEP10QShowEvent+0x8e) [0x68c14e]
  ./libQtGui.so.4(_ZN7QWidget5eventEP6QEvent+0x7cf) [0x107f15f]
  ./libQtGui.so.4(_ZN19QApplicationPrivate13notify_helperEP7QObjectP6QEvent+0xa8) [0x103d130]
  ./libQtGui.so.4(_ZN12QApplication6notifyEP7QObjectP6QEvent+0x122) [0x1044916]
  ./libQtCore.so.4(_ZN16QCoreApplication14notifyInternalEP7QObjectP6QEvent+0x9a) [0x2242f2]
  ./libQtGui.so.4(_ZN14QWidgetPrivate11show_helperEv+0x11f) [0x1081fc3]
  ./libQtGui.so.4(_ZN14QWidgetPrivate14show_recursiveEv+0x7b) [0x1081d0f]
  ./libQtGui.so.4(_ZN14QWidgetPrivate12showChildrenEb+0x15c) [0x1081e98]
  ./libQtGui.so.4(_ZN14QWidgetPrivate11show_helperEv+0x42) [0x1081ee6]
  ./libQtGui.so.4(_ZN7QWidget10setVisibleEb+0x3bb) [0x10824bb]
  ./libQtGui.so.4(_ZN14QWidgetPrivate12showChildrenEb+0x146) [0x1081e82]
  ./libQtGui.so.4(_ZN14QWidgetPrivate11show_helperEv+0x42) [0x1081ee6]
  ./libQtGui.so.4(_ZN14QWidgetPrivate14show_recursiveEv+0x7b) [0x1081d0f]
  ./libQtGui.so.4(_ZN14QWidgetPrivate12showChildrenEb+0x15c) [0x1081e98]
  ./libQtGui.so.4(_ZN14QWidgetPrivate11show_helperEv+0x42) [0x1081ee6]
  ./libQtGui.so.4(_ZN7QWidget10setVisibleEb+0x3bb) [0x10824bb]
  ./libQtGui.so.4(_ZN14QWidgetPrivate12showChildrenEb+0x146) [0x1081e82]
  ./libQtGui.so.4(_ZN14QWidgetPrivate11show_helperEv+0x42) [0x1081ee6]
  ./libQtGui.so.4(_ZN7QWidget10setVisibleEb+0x3bb) [0x10824bb]
  ./libQtGui.so.4(_ZN14QWidgetPrivate12showChildrenEb+0x146) [0x1081e82]
  ./libQtGui.so.4(_ZN14QWidgetPrivate11show_helperEv+0x42) [0x1081ee6]
  ./libQtGui.so.4(_ZN7QWidget10setVisibleEb+0x3bb) [0x10824bb]
  ./libQtGui.so.4(_ZN14QWidgetPrivate12showChildrenEb+0x146) [0x1081e82]
  ./libQtGui.so.4(_ZN14QWidgetPrivate11show_helperEv+0x42) [0x1081ee6]
  ./libQtGui.so.4(_ZN7QWidget10setVisibleEb+0x3bb) [0x10824bb]
  ./libQtGui.so.4(_ZN14QWidgetPrivate12showChildrenEb+0x146) [0x1081e82]
  ./libQtGui.so.4(_ZN14QWidgetPrivate11show_helperEv+0x42) [0x1081ee6]
  ./libQtGui.so.4(_ZN7QWidget10setVisibleEb+0x3bb) [0x10824bb]
  ./libQtGui.so.4(_ZN7QWidget10showNormalEv+0x4a) [0x107780e]
  ./libgoogleearth_lib.so(_ZN10MainWindow18readScreensizeInfoEv+0xbfa) [0x65d95a]
  ./libgoogleearth_lib.so(_ZN5earth6client11Application12SetupMainWinERK7QStringb+0x1f0) [0x6c6890]
  ./libgoogleearth_lib.so(_ZN5earth6client11Application3runEv+0x313) [0x6c75f3]
  ./googleearth-bin(main+0x286) [0x806cde6]
  /lib/libc.so.6(__libc_start_main+0xe6) [0x9cfa66]
  ./googleearth-bin [0x806bad1]




We apologize for the inconvenience, but Google Earth has crashed.
 This is a bug in the program, and should never happen under normal
 circumstances. A bug report and debugging data are now being written
 to this text file:

    /home/andreas/.googleearth/crashlogs/crashlog-C1BBCCDF.txt

This bug report will be sent to Google automatically next time you run
 Google Earth. Its data, which contains no personal information, will help
 us correct problems without bothering you further. If you would rather
 this info not be transmitted, please delete the above file before running
 the program again. If you want bug reports to NEVER be sent, remove the
 above 'crashlogs' directory's read/write permissions.

---

Google Earth is not the only application that has trouble with GLX:

[andreas@langnux ~]$ glxinfo 
name of display: :0.0
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Error: couldn't find RGB GLX visual or fbconfig

Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Xlib:  extension "GLX" missing on display ":0.0".
Segmentation fault

---

And, of course, since I enabled tiling again when I removed xorg.conf, all the trouble with screen garbage in numerous applications is back, as described in other open bugs.

Sorry guys, but with this chip, Fedora is currently a pretty tricky adventure:

[root@langnux ~]# lspci -v -s 0:2
00:02.0 VGA compatible controller: Intel Corporation 82845G/GL[Brookdale-G]/GE Chipset Integrated Graphics Device (rev 01) (prog-if 00 [VGA controller])
	Subsystem: Dell Device 0126
	Flags: bus master, fast devsel, latency 0, IRQ 16
	Memory at f0000000 (32-bit, prefetchable) [size=128M]
	Memory at ff680000 (32-bit, non-prefetchable) [size=512K]
	Expansion ROM at <unassigned> [disabled]
	Capabilities: [d0] Power Management version 1
	Kernel driver in use: i915
	Kernel modules: i915

I recognize that the original post mentioned a slightly different chip, but it is using the same driver. Should we file separate bugs for 845 and 855?

Comment 5 Walter Francis 2009-08-05 03:17:49 UTC
Certainly could be, I can't say enough about Intel chipsets to say what's similar with 845 and 855.  Mine with modesetting *ON*, I can run Google Earth.  It's slow, but it's tolerable.  I've seen worse.

With modesetting *OFF*, I can't run anything GLX.  I am actually planning on investigating that more and logging a bug if I can't find one logged but just haven't had much time, the 855GM machine I have is at work and work has been hectic recently.

Comment 6 Matěj Cepl 2009-09-10 09:09:29 UTC
OK, just not to make this discussion club about Google Earth, let me make some order in this:

a) Walter, could you please restate what is the current problem with Fedora packages for you?
b) Andreas, the same for you? What exactly is the problem with Fedora software (we cannot fix Google Earth itself)? Could you provide us with backtrace?

Please install -debuginfo for all packages you need for Google Earth using

debuginfo-install <name of the package>

Then run

gdb <full-path>/googleearth

and let it crash. When it happens, you should go back to the gdb and run

	(gdb) thread apply all backtrace

This produces usually many screens of the text. Copy all of them into a text editor and attach the file to the bug as an uncompressed attachment.

We will review this issue again once you've had a chance to attach this information.

Thanks in advance.

Comment 7 Walter Francis 2009-09-10 16:47:08 UTC
For me right now Google Earth is fine with default settings.  As is Extreme Tuxracer, but Desktop Effects crashes.  However I'll look up and log a separate bug on that, as well as GLX problems without KMS.

Andreas might want to file a separate bug specific to his chipset.

Comment 8 Matěj Cepl 2009-09-12 16:19:31 UTC
OK, so closing this one. Andreas, please, follow the instructions in the comment 6 and file a new bug.

Thank you very much both for helping Fedora.