Description of problem: geomview crashes on startup on x86_64. Version-Release number of selected component (if applicable): 1.8.2-0.2.cvs20040221.fc4.1 How reproducible: Always Steps to Reproduce: 1. geomview 2. 3. Actual results: InstCreate: Undefined option: 7106800 Geomview: internal error: Segmentation violation; dump core now (y/n) [n] ? Expected results: (programs running normally) Additional info: I've tried rebuilding the x86_64 RPM from the source SRPM. Same outcome, but installing the geomview-debuginfo package and calling "geomview -gdb" I get the following output, which may be useful in finding the bug: # geomview -gdb GNU gdb Red Hat Linux (6.3.0.0-1.84rh) Copyright 2004 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are welcome to change it and/or distribute copies of it under certain conditions. Type "show copying" to see the conditions. There is absolutely no warranty for GDB. Type "show warranty" for details. This GDB was configured as "x86_64-redhat-linux-gnu"...Using host libthread_db library "/lib64/libthread_db.so.1". (gdb) r Starting program: /usr/libexec/geomview/gvx [Thread debugging using libthread_db enabled] [New Thread 47868261862912 (LWP 1435)] Warning: Name: button_0 Class: XmCascadeButtonGadget Illegal mnemonic character; Could not convert X KEYSYM to a keycode Warning: Name: button_1 Class: XmCascadeButtonGadget Illegal mnemonic character; Could not convert X KEYSYM to a keycode Warning: Name: button_2 Class: XmCascadeButtonGadget Illegal mnemonic character; Could not convert X KEYSYM to a keycode InstCreate: Undefined option: 7103632 Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 47868261862912 (LWP 1435)] RefDecr (ref=0xf88324048b4197eb) at reference.c:67 67 if(--ref->ref_count < 0) { (gdb) q The program is running. Exit anyway? (y or n) y
I would be very interested in resolution of this error as well. There is a lengthy discussion on the debian list; there seems to be some indication that some of the nvidia stuff causes this problem.
> There is a lengthy discussion on the debian list; Any reference(s)? > there seems to be some indication that some of the nvidia stuff > causes this problem. Of course, if anyone experiencing this problem is *not* using FC's standard/open-source drivers, we ask that you try to reproduce the problem only using them.
> Of course, if anyone experiencing this problem is *not* using FC's > standard/open-source drivers, we ask that you try to reproduce the problem > only using them. Although I do have an nvidia card, I'm using FC's open source drivers. Moreover, at no time in the history of this machine I've ever installed the proprietary nvidia driver, or any of the other stuff that comes with it. The crash described happens with the drivers that come with FC4.
The link is http://bugs.donarmstrong.com/cgi-bin/bugreport.cgi?bug=314988 Actually, I don't use propriety nvidia drivers either. It potentially looks like an upstream error in one of the libraries?
Interesting reading, but unfortunately, about 90% useless... as they were so quick to blame nvidia drivers, which we've already ruled out. Looks like until this is fixed (upstream most likely), we'll have to pull the broken x86_64 builds.
BTW, anyone able to confirm this on fc5(devel)/x86_64?
> BTW, anyone able to confirm this on fc5(devel)/x86_64? I've installed both FC5/i386 and FC5/x86_64 as QEMU guests. Same outcome: geomview works under FC5/i386 and crashes on startup on FC5/x86_64. By the way, QEMU is supposedly capable of running (albeit slowly) x86_64 guests on a i686 host, so if you have a few GB of disk space to spare, you may want to consider using it to test 64-bit builds of your packages. - Roberto PS. The fact that QEMU's virtual video card is a Cirrus Logic GD5446 dispels any lingering notion that this has anything to do with nVidia cards.
I have wasted some time on running a debug on both i386 and x86_64. The error is caused by (what looks like) an error (corrupted instruction) in geomviews instruction queue during initialisation--grepping through some files, I see that that geomview makes some 32 bit assumptions in OOGL magic numbers etc. I conclude that geomview is probably not 64 bit safe, but don't have the time to waste to trace the problem in more detail. -Niels
I can confirm. (gdb) run Starting program: /usr/libexec/geomview/gvx [Thread debugging using libthread_db enabled] [New Thread 47402384722448 (LWP 4101)] Warning: Name: button_3 Class: XmCascadeButtonGadget Illegal mnemonic character; Could not convert X KEYSYM to a keycode InstCreate: Undefined option: 8193216 Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 47402384722448 (LWP 4101)] RefDecr (ref=0x558b48fffffcb4e9) at reference.c:67 67 if(--ref->ref_count < 0) { (gdb) bt #0 RefDecr (ref=0x558b48fffffcb4e9) at reference.c:67 #1 0x0000000000465a9e in ApDelete (ap=0x558b48fffffcb4e9) at appearance.c:180 #2 0x000000000042f6c7 in GeomDelete (object=0x7cf1f0) at delete.c:74 #3 0x0000000000431d2b in InstCreate (exist=0x0, classp=Variable "classp" is not available. ) at instcreate.c:204 #4 0x000000000042f647 in GeomCreate (type=0x490a41 "inst") at create.c:50 #5 0x000000000041e3df in make_light (axis={x = 0, y = 0, z = 10}, color=Variable "color" is not available. ) at lights.c:336 #6 0x000000000041e5c6 in build_light_rack (lgt=Variable "lgt" is not available. ) at lights.c:285 #7 0x000000000041ef34 in clight_init () at lights.c:122 #8 0x000000000040e481 in ui_init () at gvui.c:617 #9 0x00000000004202b7 in init_geomview (argc=1, argv=0x7fffffdec9b8) at main.c:302 #10 0x000000000040bf42 in main (argc=1, argv=0x7fffffdec9b8) at gvmain.c:89 #11 0x0000003218c1d084 in __libc_start_main () from /lib64/libc.so.6 #12 0x0000000000407219 in _start () #13 0x00007fffffdec9a8 in ?? () #14 0x0000000000000000 in ?? () (gdb) My machine is a x86_64 under FC-5. geomview-1.8.2-0.2.cvs20040221.fc5.3 NVIDIA card, but with free drivers, not accelerated.
Looks like we'll have to pull the x86_64 build(s) from the repo.
Any chance to fix this bug?
AFAICT, no one (including upstream) is working on this.
I'll scounge around in the debian patches... they claim to have fixed the problem.
I have a QEMU image of Debian testing/amd64, and it definitely doesn't look like they have.
(In reply to comment #13) > I'll scounge around in the debian patches... they claim to have fixed the > problem. Debian bug is http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=314988 but I cannot see any patch for it.
The geomview-users list was abuzz recently, and it appears that geomview cvs works. Can someone test build this on their x86_64 box to see if to works for you on x86_64? http://apt.kde-redhat.org/apt/fedora/all/SRPMS.testing/geomview-1.8.2-0.5.cvs20060623.src.rpm
(In reply to comment #16) > The geomview-users list was abuzz recently, and it appears that geomview cvs > works. Can someone test build this on their x86_64 box to see if to works for > you on x86_64? > > http://apt.kde-redhat.org/apt/fedora/all/SRPMS.testing/geomview-1.8.2-0.5.cvs20060623.src.rpm YES!!! It compiles and run correctly. I am very happy to eventually have a working version of geomview on my laptop (I need it for my work)! Warning: even if it works, rpmlint is *very* verbose about the compiled packages. Do you want me to copy its results?
> YES!!! It compiles and run correctly Great, I'll get to work pushing this out to Extras. fc6/devel branch is already done... I'll get to FC-5/FC-4 probably on Monday > Warning: even if it works, rpmlint is *very* verbose... I'll check that, thanks.