Bug 148901

Summary: Xfree crash on multiple alt-tab with glx program
Product: Red Hat Enterprise Linux 3 Reporter: Eric Desjardins <desjare>
Component: XFree86Assignee: Mike A. Harris <mharris>
Status: CLOSED ERRATA QA Contact: David Lawrence <dkl>
Severity: medium Docs Contact:
Priority: medium    
Version: 3.0CC: cjones, ltroan, shillman, xgl-maint
Target Milestone: ---Keywords: Regression
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: RHBA-2006-0071 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-03-15 15:40:16 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: 168424    
Attachments:
Description Flags
Source code to make it crash none

Description Eric Desjardins 2005-02-16 19:45:13 UTC
Description of problem:

When running opengl program (glutplane.c with motion from glut source for
example), doing alt-tab very fast in gnome or kde will crash X.

I am running on a NV35GL/AGP/SSE2 with latest nvidia driver.

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

Redhat Enterprise Update 3. Xfree doesn't crash on Update 1.

How reproducible:


Steps to Reproduce:
1. Compile glutplane.c 
2. Run it and enable motion
3. Alt-tab very fast multiple time and click with the mouse in
   your gl window.
  
Actual results:

Xfree will crash. Here is the output:

AUDIT: Wed Feb 16 10:19:40 2005: 7246 X: client 16 rejected from local host
 
   *** If unresolved symbols were reported above, they might not
   *** be the reason for the server aborting.
 
Fatal server error:
Caught signal 11.  Server aborting
 
 
If you encounter a server crash, please report the problem by filing a bug
report in the XFree86.org bugzilla at http://bugs.xfree86.org and/or Red Hat
bugzilla at http://bugzilla.redhat.com/bugzilla.  When filing your report, it
is very important that you explain your problem in as much detail as possible,
and include a complete description on how to reproduce the problem.  After
submitting the bug report, attach the following files as uncompressed
individual file attachments using the bugzilla file attachment feature:
        - X server log file: /var/log/XFree86.0.log
        - X server config file: /etc/X11/XF86Config
        - Kernel log file: /var/log/messages
 
ksmserver: Fatal IO error: client killed
ICE default IO error handler doing an exit(), pid = 7332, errno = 2
The application 'pam-panel-icon' lost its connection to the display :0.0;
most likely the X server was shut down or you killed/destroyed
the application.
ICE default IO error handler doing an exit(), pid = 7348, errno = 0
xinit:  connection to X server lost.
Hangup
GOT SIGHUP
startkde: Shutting down...
KLauncher: Exiting on signal 1
klauncher: Fatal IO error: client killed
startkde: Running shutdown scripts...
startkde: Done.


Expected results:

Should not crash.

Additional info:

Comment 1 Eric Desjardins 2005-02-16 19:45:13 UTC
Created attachment 111133 [details]
Source code to make it crash

Comment 6 Larry Troan 2005-09-12 17:43:24 UTC
Red Hat Engineering has reviewed this bug and determined it is based on a
problem with an nVidia proprietary driver. There is therefore nothing Red Hat
can really do to fix them since we don;t have access to the source code. I an
therefore closing as "Not a Red Hat bug." 

If you disagree or can recreate the problem on a video driver shipped with Red
Hat Enterprise Linux, please reopen this bug with the additional information.

Comment 7 Eric Desjardins 2005-09-12 17:57:14 UTC
Here a patch that fix the problem:

diff -urN xfree.orig/xc/programs/Xserver/xkb/xkbAccessX.c xfree/xc/programs/Xser
ver/xkb/xkbAccessX.c
--- xfree.orig/xc/programs/Xserver/xkb/xkbAccessX.c     2001-08-23 10:33:25.0000
00000 -0400
+++ xfree/xc/programs/Xserver/xkb/xkbAccessX.c  2005-08-10 08:05:16.000000000 -0 400
@@ -384,7 +384,7 @@
     KeyCode            key;
 #endif
 {
-    if (xkbi->repeatKey==key)
+    if ( xkbi && xkbi->repeatKey==key)
        xkbi->repeatKey= 0;
     return;
 }


Comment 8 Mike A. Harris 2005-09-12 19:33:25 UTC
Thanks for narrowing the problem down, and removing the proprietary
Nvidia driver from the equation.  Reopening bug for re-review and
consideration in future update.



Comment 14 Mike A. Harris 2005-11-28 22:12:54 UTC
Patch from comment #7 applied to CVS for XFree86-4.3.0-98.EL

Comment 15 Mike A. Harris 2005-11-29 00:31:35 UTC
XFree86-4.3.0-98.EL rpms built for RHEL3 U7 are temporarily available for
download and testing at the following URL:

    ftp://people.redhat.com/mharris/testing/3.0E

Please download a copy right away, even if you can't test them right away,
as I have limited disk quota, and the files will be removed to make space
for other things soon.

Setting status to "MODIFIED", and waiting for testing feedback from
bug reporter.

Comment 19 Red Hat Bugzilla 2006-03-15 15:40:17 UTC
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on the solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHBA-2006-0071.html