[GRASS5] RE: [bug #4140] (grass) Nviz doesn't start either from GUI or CLI

Hamish hamish_nospam at yahoo.com
Thu Mar 9 00:09:29 EST 2006


Hi, thanks for the help. I can just stumble my way through TclTk by feel
and don't really know what I'm doing.


> > (gdb) bt
> > #0  0x42126ae0 in __driUtilCreateScreen () from /usr/X11R6/lib/modules/dri/r200_dri.so
> > #1  0x4212667b in __driUtilCreateScreen () from /usr/X11R6/lib/modules/dri/r200_dri.so
> > #2  0x421267bf in __driUtilCreateScreen () from /usr/X11R6/lib/modules/dri/r200_dri.so
> > #3  0x420942b2 in __driUtilCreateScreen () from /usr/X11R6/lib/modules/dri/r200_dri.so
> > #4  0x420942d9 in __driUtilCreateScreen () from /usr/X11R6/lib/modules/dri/r200_dri.so
> > #5  0x42011c5a in __driUtilCreateScreen () from /usr/X11R6/lib/modules/dri/r200_dri.so
> > #6  0x42013d7c in __driUtilCreateScreen () from /usr/X11R6/lib/modules/dri/r200_dri.so
> > #7  0x420141e8 in __driUtilCreateScreen () from /usr/X11R6/lib/modules/dri/r200_dri.so
> > #8  0x4212b1bc in __driUtilCreateScreen () from /usr/X11R6/lib/modules/dri/r200_dri.so
> > #9  0x41ffd35d in __driUtilUpdateDrawableInfo () from /usr/X11R6/lib/modules/dri/r200_dri.so
> > #10 0x40853195 in _glthread_SetTSD () from /usr/X11R6/lib/libGL.so.1
> > #11 0x408532ec in glXCreateContext () from /usr/X11R6/lib/libGL.so.1
> > #12 0x080628d7 in Togl_MakeWindowExist (togl=0x81b1898) at togl.c:1451  <-----------------------------!!!!!
> > #13 0x0806172f in Togl_Configure (interp=0x807bfb0, togl=0x81b1898, argc=6, argv=0xbfffe778, flags=0)
> >     at togl.c:905
> > #14 0x08061e7f in Togl_Cmd (clientData=0x808c6e0, interp=0x807bfb0, argc=8, argv=0xbfffe770)
> >     at togl.c:1103
> > #15 0x406fc66f in TclInvokeStringCommand () from /usr/lib/libtcl8.4.so.0
> > (it failed last year before I was using the radeon card & had dri going...)
> 
> seems a problem/setting with Graphic Card o its driver, but....

I can't deny that's where it looks like it happens, but I'm still not 
totally convinced the threading isn't confusing that. If I put printf()s 
around the beginning and end of Togl_MakeWindowExist(), I see it go in 
and out cleanly, once. AFAIK NVIZ+Tcl8.4 doesn't work for anyone on 
Debian. I would be very interested to hear otherwise. Full backtrace 
at end of this email.

 
> > visualization/nviz/scripts/nviz2.2_script
> > 
> > it helped to turn on debug messages (at the top of nviz2.2_script)
> > set DEBUG 1
> > 
> >   segfaults in
> > proc Nv_force_panel
> >   on this line:
> > set Nv_($path) [mk$name\Panel $path]
> > 
> > debug output:
> >  $path=.middle.panelarea.panels.surf
> >  $name=surf
> > 
> > This is called from the Nv_mkPanelMenu proc, "surf" is the first $i
> > of $Nv_(panels).
> 
> we had similar problem creating our panels... I hope tomorrow to give
> you more info when my collegue Massimo Cuomo back to office.

I look forward to it.

> > changing that line to
> > set Nv_($path) {mk$name\Panel $path}
> 
> NO!... don't change it... you should investigate inside the mksurfPanel
> module taht you can find in the script directory
> 
> i found it in the <grass install path>/etc/nviz2.2/scripts/panel_surf.tcl

Ok, I can understand that.

so:
It heads into panel_surf.tcl and mksurfPanel{}, gets all the way through
that proc to the set_display_from_curr at the end, and heads into there.

in proc set_display_from_curr{} (still panel_surf.tcl), it gets as far as
 set  L [Nsurf$curr get_res both]

for me $curr = 110658 so the line it breaks on looks like:
 set  L [Nsurf110658 get_res both]

???


> investigate inside this tcl code, but...
> I thing it's bettere to investigate on driver setting in /etc/X11R6

I am using the stock radeon driver from Debian's X 4.3.0 with a 
ATI 9200SE. No special options turned on, dri is enabled & working. 
Not sure where further to look?


Hamish





(gdb) bt f
#0  0x42142ae0 in __driUtilCreateScreen () from /usr/X11R6/lib/modules/dri/r200_dri.so
No symbol table info available.
#1  0x4214267b in __driUtilCreateScreen () from /usr/X11R6/lib/modules/dri/r200_dri.so
No symbol table info available.
#2  0x421427bf in __driUtilCreateScreen () from /usr/X11R6/lib/modules/dri/r200_dri.so
No symbol table info available.
#3  0x420b02b2 in __driUtilCreateScreen () from /usr/X11R6/lib/modules/dri/r200_dri.so
No symbol table info available.
#4  0x420b02d9 in __driUtilCreateScreen () from /usr/X11R6/lib/modules/dri/r200_dri.so
No symbol table info available.
#5  0x4202dc5a in __driUtilCreateScreen () from /usr/X11R6/lib/modules/dri/r200_dri.so
No symbol table info available.
#6  0x4202fd7c in __driUtilCreateScreen () from /usr/X11R6/lib/modules/dri/r200_dri.so
No symbol table info available.
#7  0x420301e8 in __driUtilCreateScreen () from /usr/X11R6/lib/modules/dri/r200_dri.so
No symbol table info available.
#8  0x421471bc in __driUtilCreateScreen () from /usr/X11R6/lib/modules/dri/r200_dri.so
No symbol table info available.
#9  0x4201935d in __driUtilUpdateDrawableInfo () from /usr/X11R6/lib/modules/dri/r200_dri.so
No symbol table info available.
#10 0x40853195 in _glthread_SetTSD () from /usr/X11R6/lib/libGL.so.1
No symbol table info available.
#11 0x408532ec in glXCreateContext () from /usr/X11R6/lib/libGL.so.1
No symbol table info available.
#12 0x080629fb in Togl_MakeWindowExist (togl=0x81b1980) at togl.c:1451
        visinfo = (XVisualInfo *) 0x81afbc8
        dpy = (Display *) 0x809ec28
        dummy = 77
        attrib_list = {1, 4, 8, 1, 9, 1, 10, 1, 12, 1, 5, 0, 1081616800, -1073752048,
  136395990, 8, 1, -1073751272, 1, 3, -1073749536, 136408592, 57, -1073751248, -1073751952,
  6, 0, 1, 1, -1073751304, 671088944, 1081480524, 1, 0, 185, 1081643644, -1073751584,
  -1073751588, -1073751800, 1081384660, -1073752048, -1073751224, -1073752088, 1081480524,
  136377053, 136327912, 3, -1073752048, -1073751588, 134731728, 0, 134731728, -1073751520,
  -1073749536, -1073751576, 1081190633, -1073751824, -1073751812, 136379022, 0, -1073751520,
  -1073751520, -1073752008, 1081413681, -1073752036, 0, 200, 136323328, 1081616800,
  1097682843, 136379022, 0, -1073751520, -1073751520, -1073751960, 1081413521, -1073751520,
  6, -1073751944, 1081418073, 1097682843, 1097706752, -1073751960, 1097682416, 1081643644,
  136379037, -1073751928, 1081541372, 0, -1073751928, 1088534557, 4, 1081643644, 1081643644,
  -1073751880, 1081461900, 136411176, 1, 12, -1073751900, -1073749536, -1073749500,
  -1073751848, 1081370553, -1073749536, 136115440, -1073751864, 1081089717, 12, 183,
  136406596, 1081643644, 49, 136411184, -1073751704, 1081369652, -1073749536, 136411184, 49,
  1081282900, -1073751588, 134791584, 0, 136411184, 0, 0, -1073751704, 1081385732, 134731824,
  -1073751588, 241, 49, -1640140815, 136115440, 134729884, -1073751728, 136379050, 0,
  -1073751744, 1081479921, 134731728, 0, 2, 1081480524, -1073751588, 1081623276, 1081623276,
  1081643644, 19, 0, -1073750968, 1081188643, -1073751600, 118, 19, 6, -1073751376, 2, 24, 0,
  -1073751520, -1073751376, -1073751608, 1081412466, 118, -1073751600, 8, 183, 19, 2, 0, 0,
  136379050, 136395995, 1739, 118, -1073751588, 0, 200, 1937011968, 0, 136379022, 0,
  1081643644, -1073751408, -1073751520, -1073751464, 1081411970, -1073751520, 0, 200, 0,
  134247529, 640, -1073751496, -1073751352, -1073751408, 9, 136379022, 1...}
        attrib_count = 12
        winPtr = (TkWindow *) 0x82188b0
        winPtr2 = (TkWindow *) 0xbfffe1e0
        parent = 5
        cmap = 1081643644
        swa = {background_pixmap = 136373503, background_pixel = 1097682843,
  border_pixmap = 1089632384, border_pixel = 3221214916, bit_gravity = 1097682808,
  win_gravity = -1073752360, backing_store = 1088534557, backing_planes = 1191182340,
  backing_pixel = 136327760, save_under = 1, event_mask = -1073752312,
  do_not_propagate_mask = 1081195603, override_redirect = 136379023, colormap = 136327784,
  cursor = 5}
        hPtr = (Tcl_HashEntry *) 0x4078927c
        new_flag = -1073752376
        scrnum = 1081643644
        attempt = 0
        directCtx = 1
        ci_depths = {8, 4, 2, 1, 12, 16, 8, 4, 2, 1, 12, 16}
        dbl_flags = {0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1}
#13 0x08061853 in Togl_Configure (interp=0x807cfd0, togl=0x81b1980, argc=6, argv=0xbfffe7a8,
    flags=0) at togl.c:905
        oldRgbaFlag = 1
        oldRgbaRed = 1
        oldRgbaGreen = 1
        oldRgbaBlue = 1
        oldDoubleFlag = 0
        oldDepthFlag = 0
        oldDepthSize = 1
        oldAccumFlag = 0
        oldAccumRed = 1
        oldAccumGreen = 1
        oldAccumBlue = 1
        oldAccumAlpha = 1
        oldAlphaFlag = 0
        oldAlphaSize = 1
        oldStencilFlag = 0
        oldStencilSize = 1
        oldAuxNumber = 0
#14 0x08061fa3 in Togl_Cmd (clientData=0x808d700, interp=0x807cfd0, argc=8, argv=0xbfffe7a0)
    at togl.c:1103
        name = 0x81f3bd0 ".middle.draw.canvas"
        main = 0x808d700
        tkwin = 0x82188b0
        togl = (struct Togl *) 0x81b1980
#15 0x406fc66f in TclInvokeStringCommand () from /usr/lib/libtcl8.4.so.0
No symbol table info available.
#16 0x406fd6a4 in TclEvalObjvInternal () from /usr/lib/libtcl8.4.so.0
No symbol table info available.
#17 0x407249c8 in TclCompEvalObj () from /usr/lib/libtcl8.4.so.0
No symbol table info available.
#18 0x40723f0b in TclCompEvalObj () from /usr/lib/libtcl8.4.so.0
No symbol table info available.
#19 0x40757147 in TclObjInterpProc () from /usr/lib/libtcl8.4.so.0
No symbol table info available.
#20 0x406fd6a4 in TclEvalObjvInternal () from /usr/lib/libtcl8.4.so.0
No symbol table info available.
#21 0x406fe254 in Tcl_EvalEx () from /usr/lib/libtcl8.4.so.0
No symbol table info available.
#22 0x40740a24 in Tcl_FSEvalFile () from /usr/lib/libtcl8.4.so.0
No symbol table info available.
#23 0x4070b5ff in Tcl_SourceObjCmd () from /usr/lib/libtcl8.4.so.0
No symbol table info available.
#24 0x406fd6a4 in TclEvalObjvInternal () from /usr/lib/libtcl8.4.so.0
No symbol table info available.
#25 0x406fe254 in Tcl_EvalEx () from /usr/lib/libtcl8.4.so.0
No symbol table info available.
#26 0x406fe6eb in Tcl_Eval () from /usr/lib/libtcl8.4.so.0
No symbol table info available.
#27 0x0805c064 in Ninit (interp=0x807cfd0, w=0x0) at nviz_init.c:459
        data = {Zrange = 220000, XYrange = 44000, NumCplanes = 0, CurCplane = 0, Cp_on = {0,
    0, 0, 0, 0, 0}, Cp_trans = {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0,
      0}}, Cp_rot = {{0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}, {0, 0, 0}},
  light = {{id = 0, brt = 0, r = 0, g = 0, b = 0, ar = 0, ag = 0, ab = 0, x = 0, y = 0,
      z = 0, w = 0}, {id = 0, brt = 0, r = 0, g = 0, b = 0, ar = 0, ag = 0, ab = 0, x = 0,
      y = 0, z = 0, w = 0}, {id = 0, brt = 0, r = 0, g = 0, b = 0, ar = 0, ag = 0, ab = 0,
      x = 0, y = 0, z = 0, w = 0}}, BGcolor = 0}
        nviz_script = "source [exec g.gisenv GISBASE]/etc/nviz2.2/scripts/nviz2.2_script\n"
#28 0x080518b7 in NVIZ_AppInit (interp=0x807cfd0) at nvizAppInit.c:131
No locals.
#29 0x40633f94 in Tk_MainEx () from /usr/lib/libtk8.4.so.0
No symbol table info available.
#30 0x0806108a in main (argc=3, argv=0xbffff724) at nvizMain.c:50
        i = 0
(gdb) frame 12
#12 0x080629fb in Togl_MakeWindowExist (togl=0x81b1980) at togl.c:1451
1451             togl->GlCtx = glXCreateContext(dpy, visinfo, None, directCtx);
(gdb) l
1446                shareCtx = None;
1447             togl->GlCtx = glXCreateContext(dpy, visinfo, shareCtx, directCtx);
1448          }
1449          else {
1450             /* don't share display lists */
1451             togl->GlCtx = glXCreateContext(dpy, visinfo, None, directCtx);
1452          }
1453
1454          if (togl->GlCtx == NULL) {
1455             TCL_ERR(togl->Interp, "could not create rendering context");




More information about the grass-dev mailing list