Bug 157409 - gimp fails to start with "Illegal Instruction"
gimp fails to start with "Illegal Instruction"
Product: Fedora
Classification: Fedora
Component: gimp (Show other bugs)
i386 Linux
medium Severity medium
: ---
: ---
Assigned To: Nils Philippsen
David Lawrence
: 157473 157487 157621 (view as bug list)
Depends On:
  Show dependency treegraph
Reported: 2005-05-11 09:30 EDT by James Laska
Modified: 2013-09-02 02:05 EDT (History)
10 users (show)

See Also:
Fixed In Version: 2.2.7-4
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2005-09-04 20:24:59 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

External Trackers
Tracker ID Priority Status Summary Last Updated
GNOME Desktop 303796 None None None Never

  None (edit)
Description James Laska 2005-05-11 09:30:54 EDT
RPM: gimp-2.2.7-1.i386

$ gimp
Illegal instruction


$ > gdb /usr/bin/gimp
GNU gdb Red Hat Linux (
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 "i386-redhat-linux-gnu"...Using host libthread_db
library "/lib/libthread_db.so.1".

(gdb) r
Starting program: /usr/bin/gimp
Reading symbols from shared object read from target memory...done.
Loaded system supplied DSO at 0x9f6000
[Thread debugging using libthread_db enabled]
[New Thread -1208400192 (LWP 4786)]

Program received signal SIGILL, Illegal instruction.
[Switching to Thread -1208400192 (LWP 4786)]
0x00be4989 in gimp_rgba_get_uchar (rgba=0x971a018, r=0xbfcad3d0
"x\203p\t`\uffff\026", g=0xbfcad3d1 "\203p\t`\uffff\026",
    b=0xbfcad3d2 "p\t`\uffff\026", a=0xbfcad3d3 "\t`\uffff\026") at gimprgb.c:360
360       if (r) *r = ROUND (CLAMP (rgba->r, 0.0, 1.0) * 255.0);

Let me know if you have additional debugging tips.
Comment 1 James Laska 2005-05-11 09:31:14 EDT
Forgot the backtrace ...

(gdb) bt
#0  0x00be4989 in gimp_rgba_get_uchar (rgba=0x971a018, r=0xbfcad3d0
"x\203p\t`\uffff\026", g=0xbfcad3d1 "\203p\t`\uffff\026",
    b=0xbfcad3d2 "p\t`\uffff\026", a=0xbfcad3d3 "\t`\uffff\026") at gimprgb.c:360
#1  0x0821ff08 in gimp_param_rgb_values_cmp (pspec=0x9708378, value1=0x0,
value2=0xbfcad420) at gimpconfig-params.c:159
#2  0x00144ad6 in g_param_values_cmp () from /usr/lib/libgobject-2.0.so.0
#3  0x0821dad4 in gimp_config_iface_equal (a=0x971b3c8, b=0x96cb440) at
#4  0x08221bfc in gimp_config_diff_property (a=Variable "a" is not available.
) at gimpconfig-utils.c:165
#5  0x08221cd6 in gimp_config_diff_same (a=0x971a578, b=0x96cb278, flags=3) at
#6  0x08222099 in gimp_config_sync (src=0x971a578, dest=0x96cb278, flags=3) at
#7  0x08227676 in gimp_rc_duplicate (config=0x971a578) at gimprc.c:319
#8  0x0819346c in gimp_load_config (gimp=0x970e748, alternate_system_gimprc=0x0,
alternate_gimprc=0x0) at gimp.c:817
#9  0x080630c2 in app_run (full_prog_name=0x0, gimp_argc=0,
gimp_argv=0xbfcad7f8, alternate_system_gimprc=0x0,
    alternate_gimprc=0x0, session_name=0x0, batch_interpreter=0x0,
batch_commands=0x0, no_interface=0, no_data=0,
    no_fonts=0, no_splash=0, be_verbose=0, use_shm=0, use_cpu_accel=158441496,
pdb_compat_mode=GIMP_PDB_COMPAT_OFF) at app_procs.c:265
#10 0x08063bfc in main (argc=1, argv=0xbfcad7f4) at main.c:473
#11 0x002d0de6 in __libc_start_main () from /lib/libc.so.6
#12 0x08062e81 in _start ()
Comment 2 Lars G 2005-05-11 11:56:32 EDT
same here.
Comment 3 Zuirdj 2005-05-11 12:38:45 EDT
Comment 4 Nils Philippsen 2005-05-12 06:31:36 EDT
I'm working on a fix which still allows GIMP to utilize MMX/SSE/SSE2 optimized
code on CPUs that can handle it.
Comment 5 Nils Philippsen 2005-05-12 06:37:09 EDT
*** Bug 157487 has been marked as a duplicate of this bug. ***
Comment 6 Nils Philippsen 2005-05-12 06:37:30 EDT
*** Bug 157473 has been marked as a duplicate of this bug. ***
Comment 7 Nils Philippsen 2005-05-13 04:26:14 EDT
*** Bug 157621 has been marked as a duplicate of this bug. ***
Comment 8 Zuirdj 2005-05-13 11:57:50 EDT
It seems that bug was fixed with latest rawhide (gimp-2.2.7-2)
Comment 9 James Laska 2005-05-13 12:04:05 EDT
Confirmed ... gimp-2.2.7-2.i386 no longer causes "Illegal Instruction" failure.   

* Wed May 11 2005 Nils Philippsen <nphilipp@redhat.com>
- use -mmmx/sse/sse2/... only for the relevant source files so that extended
  instruction sets only get used on suitable CPUs (#157409)

Holding off from closing this defect until it is placed in MODIFIED.
Comment 10 Lars G 2005-05-13 12:31:34 EDT
works for me too, thanks for fixing!
Comment 11 Nils Philippsen 2005-05-14 08:06:07 EDT
The real fix is in 2.2.7-4 which allows asm optimizations on CPUs that support
it again (2.2.7-2 only used generic C routines, courtesy of libtool :-().

For differences between the two releases, check the output of "gimp --verbose"
and look at the line "Processor instruction sets". With 2.2.7-4, it's:

Processor instruction sets: +mmx +sse +sse2 -3dnow -altivec -vis

on my machine while with 2.2.7-2 it was:

Processor instruction sets: -mmx -sse -sse2 -3dnow -altivec -vis

meaning no utilization of the MMX/SSE instructions that my CPU would understand.

Note You need to log in before you can comment on or make changes to this bug.