Re: AW: 1.9.2.0: Xwin SIGSEGV when font server should be queried
On 08/11/2010 14:11, Weeber, Burkhard wrote: > I did a bit of further reseach. > > It looks like it does not have anything to do with the way the font server is > queried, > but rather the way the startup is done. > > When I have the font server added during the XWin startup - either in the > startxwin.bat, or a bash-script I call from there, the XWin SIGSEGVs. > > When I let the XWin come up with a few of my fav screens, and I then add the > font server either from a cygwin shell or from a client shell the font server > is subsequently queried correctly and the SIGSEGV does not appear. > > Strange. > > Anyway. > Thanks for the exe to create a full stack trace. > Here it is: > (gdb) bt full > #0 0x005b56a2 in doListFontsWithInfo (client=0x10981dc8, c=0x108693f0) Thanks for obtaining this backtrace. With this and the startup script you posted, I have managed to reproduce the problem. It looks like this has been caused by the changes in Xserver 1.9 to fix a different bug with xfs [1]. The problem is a use-after-free, so that probably explains why it sometimes works if you do things in a different order. I noticed that setup is only offering a choice of 1.9.0-2 or 1.9.2-1, which isn't a very smart thing to do, so I've rearranged things so now 1.8.2-1 should be offered as the previous version. [1] https://bugs.freedesktop.org/show_bug.cgi?id=3040 -- Jon TURNEY Volunteer Cygwin/X X Server maintainer -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://x.cygwin.com/docs/ FAQ: http://x.cygwin.com/docs/faq/
AW: AW: 1.9.2.0: Xwin SIGSEGV when font server should be queried
Rejoiced too early. When I start an application that uses a font that is not on the font server XWin crashes again with the same stack trace I already sent you. Burkhard _ Geschaeftsfuehrer/Managing Directors: Christoph Hahn-Woernle, Frank Apel HRB 17335, Amtsgericht Stuttgart (Commercial Register District Court Stuttgart) St.-Nr. 99064/06051, USt-IdNr./VAT Reg.No.: DE 203036780 -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://x.cygwin.com/docs/ FAQ: http://x.cygwin.com/docs/faq/
AW: AW: 1.9.2.0: Xwin SIGSEGV when font server should be queried
I managed to work around it. In the startup of XWin I start a few windows. In one of them I add the font server after a bit of sleep to settle down XWin. Now the XWin does not SIGSEGV any more why so ever. Here are the scripts I use to start up my X environment Burkhard Startxwin.bat: @echo off SET DISPLAY=127.0.0.1:0.0 REM REM The path in the CYGWIN_ROOT environment variable assignment assume REM that Cygwin is installed in a directory called 'cygwin' in the root REM directory of the current drive. You will only need to modify REM CYGWIN_ROOT if you have installed Cygwin in another directory. For REM example, if you installed Cygwin in \foo\bar\baz\cygwin, you will need REM to change \cygwin to \foo\bar\baz\cygwin. REM REM This batch file will almost always be run from the same drive (and REM directory) as the drive that contains Cygwin/X, therefore you will REM not need to add a drive letter to CYGWIN_ROOT. For example, you do REM not need to change \cygwin to c:\cygwin if you are running this REM batch file from the C drive. REM SET CYGWIN_ROOT=\cygwin SET RUN=%CYGWIN_ROOT%\bin\run -p /usr/bin SET PATH=.;%CYGWIN_ROOT%\bin;%PATH% SET XAPPLRESDIR= SET XCMSDB= SET XKEYSYMDB= SET XNLSPATH= REM Shared Memory support SET CYGWIN=server REM REM Cleanup after last run. REM if not exist %CYGWIN_ROOT%\tmp\.X11-unix\X0 goto CLEANUP-FINISH attrib -s %CYGWIN_ROOT%\tmp\.X11-unix\X0 del %CYGWIN_ROOT%\tmp\.X11-unix\X0 :CLEANUP-FINISH if exist %CYGWIN_ROOT%\tmp\.X11-unix rmdir %CYGWIN_ROOT%\tmp\.X11-unix REM REM The error "Fatal server error: could not open default font 'fixed'" is REM caused by using a DOS mode mount for the mount that the Cygwin/X REM fonts are accessed through. See the Cygwin/X FAQ for more REM information: REM http://x.cygwin.com/docs/faq/cygwin-x-faq.html#q-error-font-eof REM if "%OS%" == "Windows_NT" goto OS_NT REM Windows 95/98/Me echo startxwin.bat - Starting on Windows 95/98/Me goto STARTUP :OS_NT REM Windows NT/2000/XP/2003 echo startxwin.bat - Starting on Windows NT/2000/XP/2003 :STARTUP REM Description of XWin-specific options is in XWin(1) manpage. REM REM Startup the programs REM REM Startup the X Server with the integrated Windows-based window manager. REM WARNING: Do not use 'xwinclip' in conjunction with the ``-clipboard'' REM command-line parameter for XWin. Doing so would start two clipboard REM managers, which is never supposed to happen. %RUN% XWin -multiwindow -clipboard -silent-dup-error -xkbvariant nodeadkeys -logverbose 3 REM add my favorites %RUN% bash ~/.startxwinrc ~/startxwinrc: sleep 3 xrdb -all -load ~/.Xdefaults 2>>/tmp/startxwin.log # add WEE's favorites ssh -Y as1 "aixterm -fullcursor -geometry 81x30-125+93 -T \"ROUTERS-LOG\" -fn 6x10 -e /usr/local/bin/max.pl" & ssh -Y as1 "aixterm -ls -fullcursor -geometry 81x25+711+1 -bg magenta -fg snow -T \"Mail-LOG\" -fn 6x10 -e ~/bin/maillog.sh" & ssh -Y as1 "~/bin/termtk.pl" & #now add font server ; terminal closes upon script end ssh -Y as1 "aixterm -ls -fullcursor -geometry 81x25+37+208 -e ~/.xsetwee" ssh -Y as1 "aixterm -ls -fullcursor -geometry 81x25+37+208" & ssh -Y as1 "aixterm -ls -fullcursor -geometry 81x25+88+217" & .xsetwee: echo "Sleeping 10 seconds" sleep 10 xset fp+ tcp/mystique:7100 xset q echo "Sleeping 10 seconds until close" sleep 10 exit _ Geschaeftsfuehrer/Managing Directors: Christoph Hahn-Woernle, Frank Apel HRB 17335, Amtsgericht Stuttgart (Commercial Register District Court Stuttgart) St.-Nr. 99064/06051, USt-IdNr./VAT Reg.No.: DE 203036780 -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://x.cygwin.com/docs/ FAQ: http://x.cygwin.com/docs/faq/
AW: 1.9.2.0: Xwin SIGSEGV when font server should be queried
I did a bit of further reseach. It looks like it does not have anything to do with the way the font server is queried, but rather the way the startup is done. When I have the font server added during the XWin startup - either in the startxwin.bat, or a bash-script I call from there, the XWin SIGSEGVs. When I let the XWin come up with a few of my fav screens, and I then add the font server either from a cygwin shell or from a client shell the font server is subsequently queried correctly and the SIGSEGV does not appear. Strange. Anyway. Thanks for the exe to create a full stack trace. Here it is: (gdb) bt full #0 0x005b56a2 in doListFontsWithInfo (client=0x10981dc8, c=0x108693f0) at dixfonts.c:920 fpe = (FontPathElementPtr) 0x109816a0 err = 85 name = 0x5b3f36 "\203E▒\001▒h▒e" namelen = 2280120 numFonts = 1628938183 fontInfo = {firstCol = 51800, lastCol = 34, firstRow = 1, lastRow = 0, defaultCh = 1, noOverlap = 0, terminalFont = 0, constantMetrics = 0, constantWidth = 0, inkInside = 0, inkMetrics = 0, allExist = 0, drawDirection = 0, cachable = 0, anamorphic = 0, maxOverlap = 0, pad = 0, maxbounds = {leftSideBearing = 0, rightSideBearing = 0, characterWidth = 0, ascent = 0, descent = 5840, attributes = 4248}, minbounds = {leftSideBearing = 16384, rightSideBearing = 0, characterWidth = 0, ascent = 0, descent = 100, attributes = 0}, ink_maxbounds = {leftSideBearing = -24633, rightSideBearing = 24855, characterWidth = 12266, ascent = 4168, descent = -29488, attributes = 65}, ink_minbounds = { leftSideBearing = -13640, rightSideBearing = 34, characterWidth = -29439, ascent = 65, descent = -13668, attributes = 34}, fontAscent = 0, fontDescent = 0, nprops = 0, props = 0x0, isStringProp = 0x1 } pFontInfo = (FontInfoRec *) 0x1097d4d8 reply = (xListFontsWithInfoReply *) 0x0 ---Type to continue, or q to quit--- length = 0 pFP = (xFontProp *) 0x1 i = 278402720 aliascount = 0 finalReply = {type = 0 '\0', nameLength = 0 '\0', sequenceNumber = 0, length = 0, minBounds = {leftSideBearing = 0, rightSideBearing = 0, characterWidth = -10208, ascent = 4207, descent = 24928, attributes = 102}, walign1 = 0, maxBounds = {leftSideBearing = -16392, rightSideBearing = 24843, characterWidth = 0, ascent = 0, descent = 0, attributes = 0}, walign2 = 0, minCharOrByte2 = 0, maxCharOrByte2 = 0, defaultChar = 0, nFontProps = 0, drawDirection = 0 '\0', minByte1 = 0 '\0', maxByte1 = 0 '\0', allCharsExist = 0 '\0', fontAscent = 0, fontDescent = 0, nReplies = 0} #1 0x00579a0f in ProcessWorkQueue () at dixutils.c:527 q = (WorkQueuePtr) 0x108698a8 p = (WorkQueuePtr *) 0x665de4 #2 0x005eb4f5 in WaitForSomething (pClientsReady=0x106d0ff8) at WaitFor.c:169 i = 1 waittime = {tv_sec = 30, tv_usec = 0} wt = (struct timeval *) 0x22cba0 timeout = 570906 clientsReadable = {fds_bits = {0, 0, 0, 0, 0, 0, 0, 0}} clientsWritable = {fds_bits = {277256200, 277256384, 0, 2280408, 6197569, 278385880, 2280328, 1}} ---Type to continue, or q to quit--- curclient = 292 selecterr = 0 nready = 0 devicesReadable = {fds_bits = {0, 0, 0, 0, 0, 0, 0, 0}} now = 447551595 someReady = 0 #3 0x0057093e in Dispatch () at dispatch.c:369 clientReady = (int *) 0x106d0ff8 result = 0 client = (ClientPtr) 0x10981dc8 nready = -1 icheck = (HWEventQueuePtr *) 0x665aa0 start_tick = 0 #4 0x0056af00 in main (argc=8, argv=0x10482fa8, envp=0x104480e0) at main.c:298 i = 1 alwaysCheckForInput = {0, 1} (gdb) Thanks for your help Burkhard _ Geschaeftsfuehrer/Managing Directors: Christoph Hahn-Woernle, Frank Apel HRB 17335, Amtsgericht Stuttgart (Commercial Register District Court Stuttgart) St.-Nr. 99064/06051, USt-IdNr./VAT Reg.No.: DE 203036780 -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://x.cygwin.com/docs/ FAQ: http://x.cygwin.com/docs/faq/
Re: AW: 1.9.2.0: Xwin SIGSEGV when font server should be queried
On 08/11/2010 10:21, Weeber, Burkhard wrote: > The previous version, that was stable for xorg-server was 1.8.2-1, > according to setup.log. > > The gdb stack trace is not very talkative: > ... > Loaded symbols for /usr/bin/cygXrender-1.dll > [Switching to thread 8788.0x2740] > (gdb) c > Continuing. > (no debugging symbols found) > > Program received signal SIGSEGV, Segmentation fault. > [Switching to thread 8788.0x1178] > 0x005508b5 in ?? () > (gdb) bt full > #0 0x005508b5 in ?? () > No symbol table info available. > #1 0x000c in ?? () > No symbol table info available. > #2 0x005fa120 in ?? () > No symbol table info available. > #3 0x in ?? () > No symbol table info available. > > I will download current source and compile it with -g . Sorry, I forgot that it was stripped. To save you a bit of time, I've uploaded an unstripped build at [1] [1] ftp://cygwin.com/pub/cygwinx/XWin.20101108-git-eb4deaf9bfbab023.exe.bz2 > Something funny about it: > I had the "xset fp+ tcp/mystique:7100" commented out in the > .startxwinrc. > Then I started XWin, attached the gdb and issued the xset command from > within a AIX aixterm shell. > Then I started a window that has to use a font server font and it > worked. > > Then I activated the xset command in the .startxwinrc again and the XWin > crashed again. > I keep on researching. Thanks. -- Jon TURNEY Volunteer Cygwin/X X Server maintainer -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://x.cygwin.com/docs/ FAQ: http://x.cygwin.com/docs/faq/
AW: 1.9.2.0: Xwin SIGSEGV when font server should be queried
The previous version, that was stable for xorg-server was 1.8.2-1, according to setup.log. The gdb stack trace is not very talkative: ... Loaded symbols for /usr/bin/cygXrender-1.dll [Switching to thread 8788.0x2740] (gdb) c Continuing. (no debugging symbols found) Program received signal SIGSEGV, Segmentation fault. [Switching to thread 8788.0x1178] 0x005508b5 in ?? () (gdb) bt full #0 0x005508b5 in ?? () No symbol table info available. #1 0x000c in ?? () No symbol table info available. #2 0x005fa120 in ?? () No symbol table info available. #3 0x in ?? () No symbol table info available. I will download current source and compile it with -g . Something funny about it: I had the "xset fp+ tcp/mystique:7100" commented out in the .startxwinrc. Then I started XWin, attached the gdb and issued the xset command from within a AIX aixterm shell. Then I started a window that has to use a font server font and it worked. Then I activated the xset command in the .startxwinrc again and the XWin crashed again. I keep on researching. Burkhard _ Geschaeftsfuehrer/Managing Directors: Christoph Hahn-Woernle, Frank Apel HRB 17335, Amtsgericht Stuttgart (Commercial Register District Court Stuttgart) St.-Nr. 99064/06051, USt-IdNr./VAT Reg.No.: DE 203036780 -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://x.cygwin.com/docs/ FAQ: http://x.cygwin.com/docs/faq/
Re: 1.9.2.0: Xwin SIGSEGV when font server should be queried
Thanks for reporting this issue. On 04/11/2010 14:49, Weeber, Burkhard wrote: > I updated my Cygwin with the latest available from the "setup.exe". Do you know which version of Xserver that worked you updated from? Examining /var/log/setup.log and/or using setup to revert to the previous version should tell you. > Now XWin.exe gets a Signal 11 (Segmentation violation) when a font switch > (-fn) is on the command line. > > Command: > $ ssh -Y myaix "aixterm -fullcursor -geometry 81x30-125+93 -e > /usr/local/bin/max.pl" > Is OK. > > $ ssh -Y myaix "aixterm -fullcursor -geometry 81x30-125+93 -fn 6x10 -e > /usr/local/bin/max.pl" > Fails. > > I have a font server running on AIX6.1 and before the start this font server > is added by xset command. > This worked well until the update. > > Also the xlsfonts command of cygwin distribution causes XWin to SIGSEGV. > > Also when specifying "-fp tcp/myfontserver:7100" on the XWin start line any > X-Program will cause a SIGSEGV. I'm afraid I'm not able to reproduce this (testing using an xfs running on Solaris, I don't have access to AIX). Can you please obtain a backtrace as follows: 1) Install gdb (for gdb) and sysvinit (for pidof) packages 2) Start XWin using your normal method 3) In a non-X terminal window, run gdb --pid=`pidof /usr/bin/XWin` 4) Type 'c' at the '(gdb)' prompt 5) Reproduce your crash 6) Type 'bt full' at the '(gdb)' prompt. -- Jon TURNEY Volunteer Cygwin/X X Server maintainer -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://x.cygwin.com/docs/ FAQ: http://x.cygwin.com/docs/faq/
1.9.2.0: Xwin SIGSEGV when font server should be queried
Hello, I updated my Cygwin with the latest available from the "setup.exe". Now XWin.exe gets a Signal 11 (Segmentation violation) when a font switch (-fn) is on the command line. Command: $ ssh -Y myaix "aixterm -fullcursor -geometry 81x30-125+93 -e /usr/local/bin/max.pl" Is OK. $ ssh -Y myaix "aixterm -fullcursor -geometry 81x30-125+93 -fn 6x10 -e /usr/local/bin/max.pl" Fails. I have a font server running on AIX6.1 and before the start this font server is added by xset command. This worked well until the update. Also the xlsfonts command of cygwin distribution causes XWin to SIGSEGV. Also when specifying "-fp tcp/myfontserver:7100" on the XWin start line any X-Program will cause a SIGSEGV. Regards Burkhard Burkhard Weeber Systemspezialist UNIX und Netze Specialist UNIX systems and networks viastore systems GmbH Magirusstraße 13 D-70469 Stuttgart Tel.: +49 (0)711 98 18 277 Fax: +49 (0)711 98 18 180 mail: b.wee...@viastore.com http://www.viastore.com Content of XWin.0.log after starting xlsfonts: Welcome to the XWin X Server Vendor: The Cygwin/X Project Release: 1.9.2.0 (10902000) Build Date: 2010-11-03 XWin was started with the following command line: XWin -multiwindow -clipboard -silent-dup-error -xkbvariant nodeadkeys ddxProcessArgument - Initializing default screens winInitializeScreenDefaults - primary monitor w 1680 h 1050 winInitializeDefaultScreens - native DPI x 96 y 96 [102623.744] winInitializeScreens - 1 [102623.744] winInitializeScreen - 0 [102623.744] (II) xorg.conf is not supported [102623.744] (II) See http://x.cygwin.com/docs/faq/cygwin-x-faq.html for more information [102623.744] LoadPreferences: Loading /cygdrive/c/Users/wee/.XWinrc [102623.744] LoadPreferences: Done parsing the configuration file... [102623.744] winGetDisplay: DISPLAY=:0.0 [102623.744] winDetectSupportedEngines - Windows NT/2000/XP [102623.791] winDetectSupportedEngines - DirectDraw installed [102623.791] winDetectSupportedEngines - Allowing PrimaryDD [102623.791] winDetectSupportedEngines - DirectDraw4 installed [102623.791] winDetectSupportedEngines - Returning, supported engines 001f [102623.791] winSetEngine - Multi Window or Rootless => ShadowGDI [102623.791] winScreenInit - Using Windows display depth of 32 bits per pixel [102623.822] winAllocateFBShadowGDI - Creating DIB with width: 1680 height: 1050 depth: 32 [102623.822] winFinishScreenInitFB - Masks: 00ff ff00 00ff [102623.822] winInitVisualsShadowGDI - Masks 00ff ff00 00ff BPRGB 8 d 24 bpp 32 [102623.822] null screen fn ReparentWindow [102623.822] null screen fn RestackWindow [102623.822] InitQueue - Calling pthread_mutex_init [102623.822] InitQueue - pthread_mutex_init returned [102623.822] InitQueue - Calling pthread_cond_init [102623.822] InitQueue - pthread_cond_init returned [102623.822] winInitMultiWindowWM - Hello [102623.822] winInitMultiWindowWM - Calling pthread_mutex_lock () [102623.822] Screen 0 added at virtual desktop coordinate (0,0). [102623.822] winMultiWindowXMsgProc - Hello [102623.822] winMultiWindowXMsgProc - Calling pthread_mutex_lock () [102623.978] (II) AIGLX: Loaded and initialized /usr/lib/dri/swrast_dri.so [102623.978] (II) GLX: Initialized DRISWRAST GL provider for screen 0 [102623.978] [dix] Could not init font path element /usr/share/fonts/TTF/, removing from list! [102623.978] [dix] Could not init font path element /usr/share/fonts/OTF/, removing from list! [102624.742] winPointerWarpCursor - Discarding first warp: 840 525 [102624.742] (--) 3 mouse buttons found [102624.742] (--) Setting autorepeat to delay=500, rate=31 [102624.742] (--) Windows keyboard layout: "0407" (0407) "German", type 4 [102624.742] (--) Found matching XKB configuration "German (Germany)" [102624.742] (--) Model = "pc105" Layout = "de" Variant = "none" Options = "none" [102624.742] (++) XKB: variant: "nodeadkeys" [102624.742] Rules = "base" Model = "pc105" Layout = "de" Variant = "nodeadkeys" Options = "none" [102625.398] winInitMultiWindowWM - pthread_mutex_lock () returned. [102625.398] winInitMultiWindowWM - pthread_mutex_unlock () returned. [102625.398] winMultiWindowXMsgProc - pthread_mutex_lock () returned. [102625.398] winGetDisplay: DISPLAY=:0.0 [102625.398] winMultiWindowXMsgProc - pthread_mutex_unlock () returned. [102625.398] winInitMultiWindowWM - DISPLAY=:0.0 [102625.398] winGetDisplay: DISPLAY=:0.0 [102625.398] winMultiWindowXMsgProc - DISPLAY=:0.0 [102625.413] winProcEstablishConnection - Hello [102625.413] winInitClipboard () [102625.413] winProcEstablishConnection - winInitClipboard returned. [102625.413] winClipboardProc - Hello [102625.413] DetectUnicodeSupport - Windows NT/2000/XP [102625.413] winInitMultiWindowWM - XOpenDisplay () returned and successfully opened the display. [102625.413] winMultiWindowXMsgProc - XOpenDisplay () returned and successfully opened the display. [102625.413] winGetDisplay: DISPLAY=:0.0 [102625.413] winClipboardProc - DISPLAY=:0.0 [1026