Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 350840 - x11-base/xorg-server-1.9.2: Crash while viewing X screen made available with x11vnc using tightvnc
Summary: x11-base/xorg-server-1.9.2: Crash while viewing X screen made available with ...
Status: RESOLVED UPSTREAM
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: [OLD] Unspecified (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo X packagers
URL: https://bugs.freedesktop.org/show_bug...
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-01-06 16:56 UTC by Dustin Polke
Modified: 2015-04-22 18:12 UTC (History)
2 users (show)

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


Attachments
Xorg.log (Xorg.2.log,22.45 KB, text/plain)
2011-01-06 17:06 UTC, Dustin Polke
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Dustin Polke 2011-01-06 16:56:34 UTC
The X server segfaults in the following setup:

An X session has been started with
# startx -- /usr/bin/Xvfb :1 -screen 0 1280x800x24

and made available with
# x11vnc -usepw -repeat

Then connect from another box with tightvnc viewer. The X session is running, so the connection is working properly. I used this setup with xorg-server-1.7.7-r1 without problems.

Now, I stripped down my .xinitrc to contain only one line to start openbox:
exec dbus-launch /usr/bin/openbox-session

The .config/openbox/autostart.sh file contains only this line to start a screen session within urxvt:
urxvt -name URxvt-bg -e screen -m -S URxvt-bg &

In this screen session, all it needs to crash the X session, is to list the folder content by
# ls -la

Xvfb terminates with
"""
XIO:  fatal IO error 11 (Resource temporarily unavailable) on X server ":1"
      after 309677 requests (309677 known processed) with 0 events remaining.
"""

Attaching gdb to the running process reveals:

Program received signal SIGSEGV, Segmentation fault.
WriteToClient (who=0x873a2c0, count=1012, __buf=0xc02ac8) at io.c:720
720     io.c: No such file or directory.
        in io.c

(gdb) bt full

#0  WriteToClient (who=0x873a2c0, count=1012, __buf=0xc02ac8) at io.c:720
        oc = <value optimized out>
        oco = <value optimized out>
        padBytes = <value optimized out>
#1  0x000000000045ab22 in RecordFlushReplyBuffer (pContext=0xc02aa0, data1=0x0, len1=0, data2=<value optimized out>, len2=<value optimized out>) at record.c:251
No locals.
#2  0x000000000045ab96 in RecordFlushAllContexts (pcbl=<value optimized out>, nulldata=<value optimized out>, calldata=<value optimized out>) at record.c:867
        eci = 2
        pContext = 0x873a2c0
#3  0x000000000050dd4c in _CallCallbacks (pcbl=0x7cf8c8, call_data=0x0) at dixutils.c:743
        cbr = 0xd41920
        pcbr = <value optimized out>
#4  CallCallbacks (pcbl=0x7cf8c8, call_data=0x0) at dixutils.c:877
No locals.
#5  0x000000000055c4c4 in WriteToClient (who=0x873a2c0, count=1012, __buf=0xc02ac8) at io.c:844
        oc = 0x873a530
        oco = 0x5dd0520
        padBytes = 0
#6  0x000000000045ab22 in RecordFlushReplyBuffer (pContext=0xc02aa0, data1=0x0, len1=0, data2=<value optimized out>, len2=<value optimized out>) at record.c:251
No locals.
#7  0x000000000045ab96 in RecordFlushAllContexts (pcbl=<value optimized out>, nulldata=<value optimized out>, calldata=<value optimized out>) at record.c:867
        eci = 2
        pContext = 0x873a2c0
#8  0x000000000050dd4c in _CallCallbacks (pcbl=0x7cf8c8, call_data=0x0) at dixutils.c:743
        cbr = 0xd41920
        pcbr = <value optimized out>
#9  CallCallbacks (pcbl=0x7cf8c8, call_data=0x0) at dixutils.c:877
No locals.
#10 0x000000000055c4c4 in WriteToClient (who=0x873a2c0, count=1012, __buf=0xc02ac8) at io.c:844
        oc = 0x873a530
        oco = 0x5dd0520
        padBytes = 0

This loops infinitively.


 emerge -p xorg-server

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild     U ] x11-apps/xinit-1.3.0-r1 [1.2.0-r4] USE="minimal (-debug%) (-pam%*)" 0 kB
[ebuild     U ] x11-base/xorg-server-1.9.2 [1.7.7-r1] USE="nptl udev%* xorg -dmx (-doc) -ipv6 -kdrive -minimal -static-libs% -tslib (-debug%) (-hal%*) (-sdl%*)" 0 kB

I was able to crash X the same way using x11vnc which connect to running X session started with plain startx. I will attach the Xorg.log for completeness.

If you need additional informations, please tell me what you need.

Reproducible: Always




Portage 2.1.9.25 (default/linux/amd64/10.0, gcc-4.4.4, glibc-2.11.2-r3, 2.6.34-gentoo-r12-stable x86_64)
=================================================================
System uname: Linux-2.6.34-gentoo-r12-stable-x86_64-Intel-R-_Core-TM-2_Duo_CPU_T8100_@_2.10GHz-with-gentoo-2.0.1
Timestamp of tree: Thu, 06 Jan 2011 08:15:01 +0000
app-shells/bash:     4.1_p7
dev-java/java-config: 2.1.11-r1
dev-lang/python:     2.6.6-r1, 3.1.2-r4
dev-util/cmake:      2.8.1-r2
sys-apps/baselayout: 2.0.1

sys-apps/openrc:     0.6.8
sys-apps/sandbox:    2.4
sys-devel/autoconf:  2.13, 2.65-r1
sys-devel/automake:  1.9.6-r3, 1.10.3, 1.11.1
sys-devel/binutils:  2.20.1-r1
sys-devel/gcc:       4.4.4-r2
sys-devel/gcc-config: 1.4.1
sys-devel/libtool:   2.2.10
sys-devel/make:      3.81-r2
virtual/os-headers:  2.6.30-r1 (sys-kernel/linux-headers)
ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="* -@EULA dlj-1.1 PUEL cadsoft skype-eula AdobeFlash-10 AdobeFlash-10.1"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-O2 -pipe -march=core2 -msse4.1 --param l1-cache-size=32 --param l1-cache-line-size=64 --param l2-cache-size=3072 -mtune=generic"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/bin/mygenkernel /usr/sbin/run-crons /usr/share/cairo-dock/plug-ins/wifi/wifi /usr/share/openvpn/easy-rsa /var/lib/hsqldb"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/splash /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-O2 -pipe -march=core2 -msse4.1 --param l1-cache-size=32 --param l1-cache-line-size=64 --param l2-cache-size=3072 -mtune=generic"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--ask --buildpkg"
FEATURES="assume-digests binpkg-logs collision-protect distlocks fixlafiles fixpackages multilib-strict news parallel-fetch protect-owned sandbox sfperms strict test unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox"
GENTOO_MIRRORS="ftp://ftp.tu-clausthal.de/pub/linux/gentoo/     ftp://de-mirror.org/distro/gentoo/     ftp://mirror.netcologne.de/gentoo/     ftp://ftp.uni-erlangen.de/pub/mirrors/gentoo     ftp://ftp.join.uni-muenster.de/pub/linux/distributions/gentoo"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,-z,relro -Wl,-z,now"
LINGUAS="en de"
MAKEOPTS="-j5"
PKGDIR="/var/lib/portage/binpkg"
PORTAGE_COMPRESS=""
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_EXTRA_OPTS="--timeout=500"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/var/lib/layman/DuPol /var/lib/layman/sping /var/lib/layman/science /var/lib/layman/sunrise /var/lib/layman/alon-barlev /usr/local/portage/g-ctan /usr/local/portage/modified /usr/local/portage/own"
SYNC="rsync://rsync.de.gentoo.org/gentoo-portage"
USE="X X509 Xaw3d a52 aac aalib accessibility acl acpi alsa amd64 amr amrnb amrr amrwb apm async audacious audiofile bash-completion battery berkdb bindist bl bluetooth branding bzip2 cairo cardbus cdaudio cdda cdinstall cjk cli consolekit cracklib crypt css ctype cups curl cxx dbus devil dga directfb dri dts dv dvd dvdr eds encode evo exchange exif fam fame fbcon fbcondecor fbsplash ffmpeg flac fontforge foomaticdb fortran ftp gd gdbm gif gimp git glade glitz gmp gphoto2 gs gsm gstreamer gtk gtkhtml guile hal hddtemp hdf5 iconv icq icu idn ieee1394 imagemagick imap imlib iproute2 jack java javascript jpeg jpeg2k kerberos keyscrub kino kpathsea lame lapack laptop latex lcms libcaca libnotify libsamplerate libsexy libv4l2 libwww live lm_sensors logrotate loop-aes lzma lzo mad memlimit mikmod mime mjpeg mmx mmxext mng modules mono motif mp2 mp3 mp4 mpeg mplayer mudflap multilib musepack ncurses nls nntp nowin nptl nptlonly nsplugin ntp nuv nvidia ods ogg opengl openmp opensslcrypt pam pch pcmcia pcre pda pdf perl plotutils png posix ppds pppd print python qt3support quicktime readline rtsp ruby rubytests samba sasl schroedinger sdl server session simplexml slang sndfile soap sockets sou speex spell sse sse2 sse3 sse4.1 ssl ssse3 startup-notification stream subversion svg swat sysfs syslog system-sqlite tcpd tga theora threads tiff tordns truetype unicode usb userlocales v4l v4l2 vcd vdpau vim-syntax vim-with-x vorbis wcwidth wifi winbind wma wmf wxwindows x264 xanim xcomposite xfce xinetd xls xml xmp xorg xpm xsl xterm-color xulrunner xv xvid xvmc zlib" ALSA_CARDS="hda-intel mpu401" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CAMERAS="fuji ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ubx" INPUT_DEVICES="evdev synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en de" PHP_TARGETS="php5-3" RUBY_TARGETS="ruby18" USERLAND="GNU" VIDEO_CARDS="nvidia dummy" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" 
Unset:  CPPFLAGS, CTARGET, FFLAGS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS_FLAGS
Comment 1 Dustin Polke 2011-01-06 17:06:13 UTC
Created attachment 259087 [details]
Xorg.log
Comment 2 Dustin Polke 2011-02-02 18:06:05 UTC
Added upstream bug reference to $URL which, IMO, is  likely to be referring to the very same issue.
Testing right now suggested workaround to add '-noxrecord' to x11vnc options to not use the broken code.
Comment 3 Alex Xu (Hello71) 2015-04-22 18:12:42 UTC
according to upstream this should be fixed?