Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 491766 - xfce-base/xfce4-settings-4.10.0 - xfsettingsd: segmentation fault in xfsettingsd while running Xfce session in VNC
Summary: xfce-base/xfce4-settings-4.10.0 - xfsettingsd: segmentation fault in xfsettin...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: XFCE Team
URL:
Whiteboard:
Keywords: PATCH
Depends on:
Blocks:
 
Reported: 2013-11-20 13:21 UTC by tpereira
Modified: 2015-07-05 09:47 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description tpereira 2013-11-20 13:21:32 UTC
While running a xfce4-session through vncserver I get the following in /var/log/messages:
xfsettingsd[13830]: segfault at 1 ip 08052182 sp bfda99d0 error 4 in xfsettingsd[8048000+12000]
The system will ultimately freeze and must be rebooted.

Reproducible: Always

Steps to Reproduce:
1. log to system with vncclient
2. open terminal and run xfce4-session
3.
Actual Results:  
Not immediately, but soon after, the system freezes.
By logging locally and running top, Xvnc is hogging 100% cpu.
Logging with ssh is impossible.

Expected Results:  
No freezing of the system

Someone with a similar problem:

when running xfce4 under VNC (vnc4server), xfce4-settings-helper
generates a segfault.
E.g.:
kernel: xfce4-settings-[20447]: segfault at 1 ip 8000936e sp bffff270
error 4 in xfce4-settings-helper[80000000+f000]



And has made the following patch:


Author: Mathias Koehrer <mathias.koehrer@etas.com>

--- xfce4-settings-4.8.3.orig/xfce4-settings-helper/pointers.c
+++ xfce4-settings-4.8.3/xfce4-settings-helper/pointers.c
@@ -135,8 +135,11 @@ xfce_pointers_helper_init (XfcePointersH
     /* query the extension version */
     version = XGetExtensionVersion (xdisplay, INAME);
 
-    /* check for Xi */
-    if (version == NULL || !version->present)
+    /* check for Xi.
+     * Note: if running under VNC, XGetExtensionVersion returns a pointer
+     * with the address "1". This has to be considered here.
+     * */
+    if (version == NULL || version == (void*)1 || !version->present)
     {
         g_critical ("XI is not present.");
     }


On xfce.org, the version xfce4-settings-4.11.1 has already some changes to these same lines of code.
Maybe a version bump...
Comment 1 tpereira 2013-12-02 15:08:41 UTC
There was some other problem in my lan, so the fact that logging through ssh becomes impossible doesn't have nothing to do with this segfault.
The segfault still happens when I try running xfsettingsd. Here are some more of them:

Dec  2 15:01:31 orionte kernel: [268409.288557] xfsettingsd[10807]: segfault at 1 ip 080521a2 sp bf804d50 error 4 in xfsettingsd[8048000+12000]
Dec  2 15:04:24 orionte kernel: [268582.392951] xfsettingsd[10814]: segfault at 1 ip 080521a2 sp bf98a710 error 4 in xfsettingsd[8048000+12000]
Dec  2 15:04:31 orionte kernel: [268589.814535] xfsettingsd[10817]: segfault at 1 ip 080521a2 sp bfb3be70 error 4 in xfsettingsd[8048000+12000]
Dec  2 15:04:36 orionte kernel: [268595.213298] xfsettingsd[10820]: segfault at 1 ip 080521a2 sp bfeb98c0 error 4 in xfsettingsd[8048000+12000]
Dec  2 15:04:38 orionte kernel: [268596.782834] xfsettingsd[10823]: segfault at 1 ip 080521a2 sp bf909f90 error 4 in xfsettingsd[8048000+12000]
Dec  2 15:04:39 orionte kernel: [268598.069167] xfsettingsd[10826]: segfault at 1 ip 080521a2 sp bfd03cc0 error 4 in xfsettingsd[8048000+12000]
Dec  2 15:04:40 orionte kernel: [268598.596476] xfsettingsd[10829]: segfault at 1 ip 080521a2 sp bfbbd900 error 4 in xfsettingsd[8048000+12000]
Dec  2 15:04:40 orionte kernel: [268598.944035] xfsettingsd[10832]: segfault at 1 ip 080521a2 sp bff19cd0 error 4 in xfsettingsd[8048000+12000]
Dec  2 15:04:41 orionte kernel: [268599.244599] xfsettingsd[10835]: segfault at 1 ip 080521a2 sp bfed8470 error 4 in xfsettingsd[8048000+12000]
Dec  2 15:04:41 orionte kernel: [268599.542168] xfsettingsd[10838]: segfault at 1 ip 080521a2 sp bf946580 error 4 in xfsettingsd[8048000+12000]
Dec  2 15:04:41 orionte kernel: [268599.893853] xfsettingsd[10841]: segfault at 1 ip 080521a2 sp bfb0f760 error 4 in xfsettingsd[8048000+12000
Comment 2 Jan Breuer 2015-06-16 13:11:16 UTC
This seems to be fixed in xfce-base/xfce4-settings-4.12.0. All calls to XGetExtensionVersion are now properly checked also against NoSuchExtension.