Bug 80414

Summary: gnome-terminal fails without XRENDER
Product: [Retired] Red Hat Linux Reporter: Felipe Alfaro Solana <felipe_alfaro>
Component: vteAssignee: Nalin Dahyabhai <nalin>
Status: CLOSED RAWHIDE QA Contact: David Lawrence <dkl>
Severity: medium Docs Contact:
Priority: medium    
Version: 9CC: herrold, otaylor, pmatilai, p.van.egdom, redhat, tim_clymo, tommy.mcneely, twaugh, wtogami
Target Milestone: ---   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2003-07-28 21:52:48 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:
Bug Depends On:    
Bug Blocks: 79578, 81117    

Description Felipe Alfaro Solana 2002-12-26 00:58:49 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.3a) Gecko/20021212

Description of problem:
I've installed Phoebe i386 and, besides some bugs during installation I have
had, I think there are some changes made to the new XFree86 version that are
breaking X servers like VNC X server, VMware X server module and programs like
"gnome-terminal".

When I run "gnome-terminal" from a remote session using VNC client (on my
laptop) and X VNC server (running on Phoebe), it dies unexpectedly with the
following error message:

--- BEGIN ERROR ---
Xlib:  extension "RENDER" missing on display ":1.0".

Gdk-ERROR **: The program 'gnome-terminal' received an X Window
System error.
This probably reflects a bug in the program.
The error was 'BadAlloc (insufficient resources for operation)'.
  (Details: serial 973 error_code 11 request_code 53 minor_code 0)
  (Note to programmers: normally, X errors are reported
asynchronously;
   that is, you will receive the error a while after causing it.
   To debug your program, run it with the --sync command line
   option to change this behavior. You can then get a meaningful
   backtrace from your debugger if you break on the gdk_x_error()
function.)
aborting...

(process:3539): Gdk-ERROR (recursed) **: The program 'gnome-terminal'
received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadGC (invalid GC parameter)'.
  (Details: serial 976 error_code 13 request_code 60 minor_code 0)
  (Note to programmers: normally, X errors are reported
asynchronously;
   that is, you will receive the error a while after causing it.
   To debug your program, run it with the --sync command line
   option to change this behavior. You can then get a meaningful
   backtrace from your debugger if you break on the gdk_x_error()
function.)
aborting...
Multiple segmentation faults occurred; can't display error dialog
--- END ERROR ---

The problem can be consistently reproduced when connecting to a
remote session running either on Xvnc X server ("vnc-server" RPM package that
comes with Phoebe), or else, when running Phoebe under a
VMware-emulated virtual machine using the VMware supplied X server
module. The VNware supplied X server module can be installed by installing
VMware tools under the guest system in order to speed graphics display.

However, if I connect locally to the Phoebe machine (using the local, Matrox
G200 hardware accelerated X server, for example), at the console, through GDM,
"gnome-terminal" works as expected.

Maybe something related to changes like shadowed mouse pointers?

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


How reproducible:
Always

Steps to Reproduce:
1. Log on as "root".
2. Modify "/etc/sysconfig/vncserver", uncomment the last line and make sure it
reads VNCSERVERS="1:root".
3. Run "vncpasswd" and set a password for the VNC server.
4. Start "vncserver" by issuing "/etc/init.d/vncserver start".
5. From a remote computer running Linux, execute "vncviewer" and point to the
machine running Phoebe.
6. Launch an "xterm" console.
7. Try to run "gnome-terminal".
8. You'll see the error message described above.

Actual Results:  "gnome-terminal" crashes. Sometimes, even the X VNC server
itself crashes too and brings down the whole remote session.

Expected Results:  I should be able to run "gnome-terminal" from a remote
session when using an X VNC server and VNC client software.

Additional info:

Please, don't hesitate to contact me for more information.

Comment 1 Mike A. Harris 2002-12-27 05:20:01 UTC
If you're using Xvnc, then you're using a completely separate X server
itself, and not using XFree86 so I'm not sure I see the XFree86 problem
here.

VMware is totally unsupported by Red Hat, and we do not ship the vmware_drv
driver.  Using vmware_drv.o from an older XFree86 release with current
XFree86 in phoebe is not likely to work, as the driver was not intended
to work with this XFree86 release.  You would have to recompile a new
VMware XFree86 driver yourself, or wait for VMware Inc. to do so.

>Xlib:  extension "RENDER" missing on display ":1.0".

That's telling you your X server (Xvnc presumeably) does not support
the Render extension.  That's not a bug in XFree86 (which does support
the Render extension).  That would be a lack-of-feature in Xvnc.

>Actual Results:  "gnome-terminal" crashes.

If gnome-terminal crashes, then that would be a gnome-terminal bug, not
an XFree86 bug.

>Sometimes, even the X VNC server itself crashes too and brings down
>the whole remote session.

If Xvnc X server crashes, that would be an Xvnc bug.

There may be an XFree86 bug perhaps somewhere, but with gnome-terminal
and Xvnc crashing, those applications contain bugs that should be fixed.

Applications using Xft require an X server that supports the RENDER
extension.  That's not a bug, but a software requirement.  Xvnc does not
meet that requirment as far as I know.

I'm leaving this open for now to see if Tim Waugh or Owen might see something
that perhaps I am overlooking here, or might like to comment.




Comment 2 Felipe Alfaro Solana 2002-12-27 10:36:10 UTC
OK, I must admit it... After reading your response, I remove the
"gnome-terminal" and "vte" packages from my Phoebe installation and instead,
installed "gnome-terminal-2.0.1-5.i386.rpm" and "vte-0.18.19-1.i386.rpm" from
RedHat 8.0.

Now, I can run "gnome-terminal" on VNC sessions and VMware.

Conclusion: It must be a problem with "gnome-terminal" and "vte". So, should I
change this bug to point to those components? Will you do that instead?

Comment 3 Tim Waugh 2002-12-27 11:42:37 UTC
Looks like an OOM.

Comment 4 Mike A. Harris 2002-12-27 18:23:31 UTC
Date: Fri, 27 Dec 2002 09:28:14 -0800
From: Todd.Booher
To: phoebe-list
Content-Type: text/plain;
 charset=iso-8859-1
List-Id: <phoebe-list.redhat.com>
Subject: RE: Changes to XFree86 breaks VNC & VMware
 
Glad to know the issue is confirmed to be a legit problem.  I filed
a bug on it a few days ago.  I'll try the downgrade until they come
out with a fixed version in rawhide.
 
Todd
 
 
-----Original Message-----
From: Felipe Alfaro Solana [mailto:felipe alfaro]
Sent: Friday, December 27, 2002 3:14 AM
To: phoebe-list
Subject: RE: Changes to XFree86 breaks VNC & VMware
 
 
Phoebe runs find under VMware. However, after installing
"vmware-tools", it upgrades the X server modules so video display can
run accelerated. The problem is that "gnome-terminal" crashes in this
scenario.
 
It's a problem with "gnome-terminal" and "vte" packages that come with
Phoebe. Don't know why, but I downgraded them to the versions that
came with RedHat 8.0 and now "gnome-terminal" runs fine!

Comment 5 Tommy McNeely 2003-01-05 06:17:03 UTC
My gnome-terminal crashes completely on vmware.. thank god for XTERM.. let me
know when we have something to test this (other than telling vmware/vnc that
they need to support XRENDER :)

Tommy

Comment 6 Tommy McNeely 2003-01-05 06:26:15 UTC
*** Bug 81117 has been marked as a duplicate of this bug. ***

Comment 7 Tommy McNeely 2003-01-05 06:29:39 UTC
 You tried to change the short_desc field from "Changes to XFree86 breaks VNC &
VMware" to "Changes to gnome-terminal and/or vte breaks VNC & VMware", but only
the owner or submitter of the bug, or a sufficiently empowered user, may change
that field.

Comment 8 Havoc Pennington 2003-01-24 21:22:03 UTC
Mike - Xft apps certainly are supposed to work without RENDER.

Apps need to be working on servers without render, there are tons of 
servers like that out there, and we got about a million duplicate reports
when vte didn't work without render in 8.0.

Comment 9 Mike A. Harris 2003-01-24 22:00:27 UTC
havoc) Fair enough...  XFree86 supports RENDER however, so there's
no lack of RENDER there.

I've updated the summary to reflect.

Comment 10 Warren Togami 2003-02-02 20:37:48 UTC
gnome-terminal-2.2.0-2
vte-0.10.16-1

These versions from Rawhide still exhibit this behavior.

Comment 11 Warren Togami 2003-02-02 21:11:45 UTC
Shouldn't the summary be something like "gnome-terminal fails without XRENDER"?


Comment 12 Tommy McNeely 2003-02-02 23:40:14 UTC
Agreed.. I tried to change it back on note #7 .. but I think something like

"gnome-terminal (vte) does not work without RENDER extension (VNC/VMWARE)"

To keep those "key words" in the summary if you will :)

Tommy

Comment 13 Nalin Dahyabhai 2003-02-08 00:25:03 UTC
I'm not sure what's going on here.  I can run gnome-terminal without failures in
both vncviewer connecting to Xvnc, and Xnest, neither of which claim to support
the RENDER extension.

Comment 14 Warren Togami 2003-02-08 09:29:53 UTC
I still reproduce this with pure Rawhide.  All X servers that lack XRENDER
trigger 100% CPU usage and large amounts of memory to be eaten.   Most of the
time it segfaults, but sometimes doesn't and causes OOM.  This memory eating to
OOM behavior is consistent with many other applications that break when RENDER
isn't available.

Comment 15 Tommy McNeely 2003-02-09 23:12:33 UTC
I reproduced it (and got a screenshot and a backtrace) ... the backtrace looks
completely useless to me since it has no debugging symbols in anything.

http://www.redneck.nu/~tommy/gnome-terminal-eatingmemory.png

http://www.redneck.nu/~tommy/gnome-terminal-crashed.png

http://www.redneck.nu/~tommy/gnome-terminal.backtrace

I would attach the files directly, but none of them seem that useful.. perhaps
if someone wants to recompile all the gnome stuff in debug mode :-/ :)

Tommy

Comment 16 Bill Nottingham 2003-02-11 05:52:44 UTC
*** Bug 84004 has been marked as a duplicate of this bug. ***

Comment 17 Jeff Adams 2003-02-13 18:38:40 UTC
The same problem occurs when I use X-Win32 (Windows based Xserver) from a remote
machine running XP Professional and X-Win32 V 5.4

Comment 18 Havoc Pennington 2003-02-13 20:35:39 UTC
Only happens with AA fonts, won't happen when using a bitmap font.

Comment 19 Warren Togami 2003-02-13 21:01:06 UTC
Is there a way to run an individual application with Xft antialiasing turned off?


Comment 20 Kjartan Maraas 2003-02-13 23:11:52 UTC
GDK_XFT=0 <app>?

Comment 21 Warren Togami 2003-02-13 23:35:10 UTC
gnome-terminal-2.2.1-2 behaves a bit differently now.

When you run it without XRENDER, it causes 100% CPU usage for a long while and
memory usage went to 400MB briefly.  Eventually after a minute or so it displays
the bash prompt, however typing anything causes memory and CPU usage to balloon
again.  "ls" takes perhaps 15 seconds.

GDK_XFT=0 doesn't seem to change this behavior.


Comment 22 Nalin Dahyabhai 2003-02-14 19:04:49 UTC
This looks like an Xft bug.  The code path which causes the problem isn't
exercised if you set VTE_USE_XFT2=0 in your environment.

Comment 23 Mike A. Harris 2003-02-14 19:51:30 UTC
Nalin just tracked this down to Xft, and we've got a patch that should fix
it which will be in my next XFree86 build.

Comment 24 Mike A. Harris 2003-02-15 21:06:50 UTC
XFree86-4.2.99.901-20030213.1 fixes this.  Changing bug to MODIFIED state,
please test to confirm, and set bug status to either RAWHIDE or ASSIGNED.

Thanks.

Comment 25 Warren Togami 2003-02-16 02:52:26 UTC
Upgraded server side (host running gnome-terminal) to pure Rawhide (Feb 15)
which has XFree86-4.2.99.901-20030213.0 and tested with both Xvnc and X-Win32
5.0.  Behavior is identical to Comment #21.  Please change back to ASSIGNED.

Using VTE_USE_XFT2=0 makes it stable and fast on these displays.

Comment 26 Tim Clymo 2003-02-17 11:52:28 UTC
XFree86-4.2.99.901-20030213.1 fixed it for me, but it's slooow - a bit like 
running telnet over a low bandwidth WAN connection. Loads of pauses while 
scrolling large output (eg ps -ef), and delays responding to a simple enter to 
redisplay the current command prompt.

Comment 27 Warren Togami 2003-02-17 20:46:23 UTC
Tim, Are you sure it was the XFree86 update that caused that?  In Comment #21
gnome-terminal-2.2.1-2 no longer crashed, but was extremely slow (ate lots of
RAM and CPU).


Comment 28 Tim Clymo 2003-02-17 21:56:08 UTC
I wouldn't say it was this latest XFree86 update which caused it - I never tried
VTE_USE_XFT2=0 at all - I've been running a downgraded gnome-terminal and vte
from RH8.0 just recently to work around this bug, so this is the first time I've
actually seen the current g-t (2.2.1-3) work at all on a "foreign" xserver.

Having said that, the downgraded g-t was like molasses too. Neither that nor
2.2.1-3 eat excessive RAM or CPU (ps -el reports g-t size around 5M, and it's
chewed no more than 6s CPU all day).

Given that there was never a problem with RH8.0 running against a foreign
xserver, I can only think that something else has happened, probably due to the
transition from XFree86 4.2->4.3.

Xterm works fine though :)

Comment 29 Nalin Dahyabhai 2003-02-20 01:05:30 UTC
A combination of vte-0.10.20-1, gnome-terminal-2.2.1-3, and
XFree86-4.2.99.902-20030218.0 all seem to give me a working gnome-terminal in
Xnest.  Mike, should I assign this to XFree86?

Setting to ASSIGNED as Mike asked in comment 24.

Comment 30 Matt Wilson 2003-02-20 03:07:11 UTC
OK, I think everyone is saying that this should be working now.  Please verify.


Comment 31 Warren Togami 2003-02-22 01:07:51 UTC
Okay it now works for me.  Good job!


Comment 32 William Hooper 2003-02-22 01:26:25 UTC
Works here, too.  Did this make Phoebe-3?

Comment 33 Warren Togami 2003-02-22 01:42:08 UTC
I'm not sure, I'm using Rawhide.


Comment 34 Tim Waugh 2003-02-25 18:39:49 UTC
*** Bug 85102 has been marked as a duplicate of this bug. ***

Comment 35 William Hooper 2003-03-14 02:59:35 UTC
For the record, this bug is still present in a fresh install of Phoebe-3.  I'm 
downloading the XFree 4.3.0 unstable RPMs to test against.

Comment 36 William Hooper 2003-03-19 21:46:08 UTC
Fixed in XFree 4.3.0.

Comment 37 Bill Nottingham 2003-07-28 21:52:48 UTC
Closing some bugs that have been in MODIFIED for a while. Please reopen if the
problem persists.