Menu

#5 X crashes on exit

open
None
5
2010-11-17
2010-11-05
Ben Mesman
No

If I start Xorg with hidtouch support, Xorg crashes when terminating the session. Even when using the most basic start-script available:

Xorg -dpi 96 -nolisten tcp vt7 &
DISPLAY=:0 xterm

If I can make the screen display anything after the crash, I has the following error:

*** glibc detected *** Xorg: double free or corruption (!prev): 0x093ec118 ***

The system is running a very minimal Debian Testing. With xorg-server 2:1.7.7-8 and a self-compiled hidtouch driver version 10.05.23.

Discussion

  • Ben Mesman

    Ben Mesman - 2010-11-05

    xorg.conf

     
  • David Sporn

    David Sporn - 2010-11-17
    • assigned_to: nobody --> davidsporn
     
  • David Sporn

    David Sporn - 2010-11-17

    Sorry, I was not available last week.

    I do not see anything wrong in the xorg.conf. Did you try to run X without the driver (commenting all line related to hidtouch and associated device) ?

     
  • Ben Mesman

    Ben Mesman - 2010-11-17

    No problem.

    I tried running X without the hidtouch driver. It did not crash then.

     
  • David Sporn

    David Sporn - 2010-11-19

    ok, so it should be in my code T_T

    However on my log, I don't have this kind of message, I only see those 2 lines (my hidtouch device is named ETT Touch Panel) :
    (II) ETT Touch Panel: Off.
    (II) UnloadModule: "hidtouch"

    In other word no error for me, BUT I don't start X.org manually. Could you add a log file for X.org ?

    By the way, here is the beginning of my log :

    X.Org X Server 1.7.6
    Release Date: 2010-03-17
    X Protocol Version 11, Revision 0
    Build Operating System: Linux 2.6.24-27-server i686 Ubuntu
    Current Operating System: Linux reina 2.6.32-25-generic #44-Ubuntu SMP Fri Sep 17 20:26:08 UTC 2010 i686
    Kernel command line: root=UUID=98301dbe-103c-4d05-8f03-e795744e31bc ro quiet splash
    Build Date: 21 July 2010 12:47:34PM
    xorg-server 2:1.7.6-2ubuntu7.3 (For technical support please see http://www.ubuntu.com/support\)
    Current version of pixman: 0.16.4
    Before reporting problems, check http://wiki.x.org
    to make sure that you have the latest version.
    Markers: (--) probed, (**) from config file, (==) default setting,
    (++) from command line, (!!) notice, (II) informational,
    (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
    (==) Log file: "/var/log/Xorg.0.log", Time: Wed Nov 17 22:43:54 2010
    (==) Using config file: "/etc/X11/xorg.conf"
    (==) Using config directory: "/usr/lib/X11/xorg.conf.d"
    (==) ServerLayout "Default Layout"
    (**) |-->Screen "Default Screen" (0)
    (**) | |-->Monitor "Configured Monitor"
    (**) | |-->Device "Configured Video Device"
    (**) |-->Input Device "ETT Touch Panel"
    (==) Automatically adding devices
    (==) Automatically enabling devices
    (WW) The directory "/usr/share/fonts/X11/cyrillic" does not exist.
    Entry deleted from font path.
    (==) FontPath set to:
    /usr/share/fonts/X11/misc,
    /usr/share/fonts/X11/100dpi/:unscaled,
    /usr/share/fonts/X11/75dpi/:unscaled,
    /usr/share/fonts/X11/Type1,
    /usr/share/fonts/X11/100dpi,
    /usr/share/fonts/X11/75dpi,
    /var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType,
    built-ins
    (==) ModulePath set to "/usr/lib/xorg/extra-modules,/usr/lib/xorg/modules"
    (II) The server relies on udev to provide the list of input devices.
    If no devices become available, reconfigure udev or disable AutoAddDevices.
    (II) Loader magic: 0x81f0e80
    (II) Module ABI versions:
    X.Org ANSI C Emulation: 0.4
    X.Org Video Driver: 6.0
    X.Org XInput driver : 7.0
    X.Org Server Extension : 2.0
    (++) using VT number 7

     
  • Ben Mesman

    Ben Mesman - 2010-11-22

    Xorg logfile with X crash on exit

     
  • Ben Mesman

    Ben Mesman - 2010-11-22

    I added the Xorg logfile where X crashed on exit. I don't think there is an error in the logfile, but X still crashes.

    The effect of the crash is (1) the screen is blanked, because there's no input signal (2) I can't use a key-combination to switch vt's. The only way to really see the crash-information is, to switch to a console (vt1), stop X and then switch back to the vt where X was running (vt7).

    Note: for this logfile, I did not switch vt's at all.

     
  • David Sporn

    David Sporn - 2010-12-27

    Sorry for the delay, I didn't had time to look at the code this month.

    I had a look at the code that is likely to be called on shutdown of the driver, in hidtouch__body.h :

    In function hdtOnDeviceOff (around line 114) there is a call to xf86RemoveEnabledDevice(pInfo) before changing the pInfo struct again.

    You might try the following alternatives :
    - comment the call to xf86RemoveEnabledDevice
    - comment out xf86RemoveEnabledDevice, comment further modification of pInfo
    - put the call to xf86RemoveEnabledDevice after the modification of pInfo
    - comment xf86RemoveEnabledDevice and further modification of pInfo

    maybe one of these thing will fix (I would say hide) the problem.

     

Log in to post a comment.

MongoDB Logo MongoDB