Segmentation fault after closing a lot of files on a loaded box
Environment/Versions
- GIMP version: 2.10.32
- Package: zypper (system packages manager)
- Operating System: OpenSUSE Tumbleweed
Description of the bug
Was working on a vast number of large files (14 GiB of memory used over 15 GiB). When closing them altogether, a segmentation fault happened.
Reproduction
Is the bug reproducible?
It only happened once to me.
Additional information
If you have a backtrace for a crash or a warning, paste it here.
GNU Image Manipulation Program version 2.10.32
git-describe: GIMP_2_10_32
Build: unknown rev 0 for linux
# C compiler #
Using built-in specs.
Reading specs from /usr/lib64/gcc/x86_64-suse-linux/12/defaults.spec
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib64/gcc/x86_64-suse-linux/12/lto-wrapper
OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa
OFFLOAD_TARGET_DEFAULT=1
Target: x86_64-suse-linux
Configured with: ../configure --prefix=/usr --infodir=/usr/share/info --mandir=/usr/share/man --libdir=/usr/lib64 --libexecdir=/usr/lib64 --enable-languages=c,c++,objc,fortran,obj-c++,ada,go,d,jit --enable-offload-targets=nvptx-none,amdgcn-amdhsa, --enable-offload-defaulted --without-cuda-driver --enable-host-shared --enable-checking=release --disable-werror --with-gxx-include-dir=/usr/include/c++/12 --enable-ssp --disable-libssp --disable-libvtv --enable-cet=auto --disable-libcc1 --enable-plugin --with-bugurl=https://bugs.opensuse.org/ --with-pkgversion='SUSE Linux' --with-slibdir=/lib64 --with-system-zlib --enable-libstdcxx-allocator=new --disable-libstdcxx-pch --enable-libphobos --enable-version-specific-runtime-libs --with-gcc-major-version-only --enable-linker-build-id --enable-linux-futex --enable-gnu-indirect-function --program-suffix=-12 --without-system-libunwind --enable-multilib --with-arch-32=x86-64 --with-tune=generic --with-build-config=bootstrap-lto-lean --enable-link-mutex --build=x86_64-suse-linux --host=x86_64-suse-linux
Thread model: posix
Supported LTO compression algorithms: zlib zstd
gcc version 12.1.0 (SUSE Linux)
# Libraries #
using babl version 0.1.92 (compiled against version 0.1.92)
using GEGL version 0.4.38 (compiled against version 0.4.36)
using GLib version 2.72.3 (compiled against version 2.72.2)
using GdkPixbuf version 2.42.9 (compiled against version 2.42.8)
using GTK+ version 2.24.33 (compiled against version 2.24.33)
using Pango version 1.50.9 (compiled against version 1.50.7)
using Fontconfig version 2.14.0 (compiled against version 2.14.0)
using Cairo version 1.16.0 (compiled against version 1.16.0)
fatal error: Segmentation fault
Stack trace:
# Stack traces obtained from PID 4445 - Thread 4445 #
This GDB supports auto-downloading debuginfo from the following URLs:
https://debuginfod.opensuse.org/
Enable debuginfod for this session? (y or [n]) [answered N; input not from terminal]
Debuginfod has been disabled.
To make this setting permanent, add 'set debuginfod enabled off' to .gdbinit.
[New LWP 4447]
[New LWP 4448]
[New LWP 4449]
[New LWP 4450]
[New LWP 4451]
[New LWP 4452]
[New LWP 4453]
[New LWP 4462]
[New LWP 4463]
[New LWP 4471]
[New LWP 4528]
[New LWP 5064]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib64/libthread_db.so.1".
0x00007f7d034b4b57 in unlink_chunk.constprop () from /lib64/libc.so.6
Id Target Id Frame
* 1 Thread 0x7f7d01e66e80 (LWP 4445) "gimp-2.10" 0x00007f7d034b4b57 in unlink_chunk.constprop () from /lib64/libc.so.6
2 Thread 0x7f7d01814640 (LWP 4447) "worker" 0x00007f7d0352a4fd in syscall () from /lib64/libc.so.6
3 Thread 0x7f7d01013640 (LWP 4448) "worker" 0x00007f7d0352a4fd in syscall () from /lib64/libc.so.6
4 Thread 0x7f7d00812640 (LWP 4449) "worker" 0x00007f7d0352a4fd in syscall () from /lib64/libc.so.6
5 Thread 0x7f7cf8011640 (LWP 4450) "worker" 0x00007f7d0352a4fd in syscall () from /lib64/libc.so.6
6 Thread 0x7f7cfbfff640 (LWP 4451) "worker" 0x00007f7d0352a4fd in syscall () from /lib64/libc.so.6
7 Thread 0x7f7cfb7fe640 (LWP 4452) "worker" 0x00007f7d0352a4fd in syscall () from /lib64/libc.so.6
8 Thread 0x7f7cfaffd640 (LWP 4453) "worker" 0x00007f7d0352a4fd in syscall () from /lib64/libc.so.6
9 Thread 0x7f7cef7fe640 (LWP 4462) "gmain" 0x00007f7d0352464f in poll () from /lib64/libc.so.6
10 Thread 0x7f7ceffff640 (LWP 4463) "gdbus" 0x00007f7d0352464f in poll () from /lib64/libc.so.6
11 Thread 0x7f7c931fa640 (LWP 4471) "async" 0x00007f7d0352a4fd in syscall () from /lib64/libc.so.6
12 Thread 0x7f7c7bfff640 (LWP 4528) "swap writer" 0x00007f7d0352a4fd in syscall () from /lib64/libc.so.6
13 Thread 0x7f7c90df6640 (LWP 5064) "paint" 0x00007f7d0352a4fd in syscall () from /lib64/libc.so.6
Thread 13 (Thread 0x7f7c90df6640 (LWP 5064) "paint"):
#0 0x00007f7d0352a4fd in syscall () at /lib64/libc.so.6
#1 0x00007f7d039b3c4f in g_cond_wait () at /lib64/libglib-2.0.so.0
#2 0x00005604042834d1 in ()
#3 0x00007f7d0398a1b5 in () at /lib64/libglib-2.0.so.0
#4 0x00007f7d034a7777 in start_thread () at /lib64/libc.so.6
#5 0x00007f7d03531c70 in clone3 () at /lib64/libc.so.6
Thread 12 (Thread 0x7f7c7bfff640 (LWP 4528) "swap writer"):
#0 0x00007f7d0352a4fd in syscall () at /lib64/libc.so.6
#1 0x00007f7d039b3c4f in g_cond_wait () at /lib64/libglib-2.0.so.0
#2 0x00007f7d03f59d89 in () at /lib64/libgegl-0.4.so.0
#3 0x00007f7d0398a1b5 in () at /lib64/libglib-2.0.so.0
#4 0x00007f7d034a7777 in start_thread () at /lib64/libc.so.6
#5 0x00007f7d03531c70 in clone3 () at /lib64/libc.so.6
Thread 11 (Thread 0x7f7c931fa640 (LWP 4471) "async"):
#0 0x00007f7d0352a4fd in syscall () at /lib64/libc.so.6
#1 0x00007f7d039b3c4f in g_cond_wait () at /lib64/libglib-2.0.so.0
#2 0x00005604044ebe88 in ()
#3 0x00007f7d0398a1b5 in () at /lib64/libglib-2.0.so.0
#4 0x00007f7d034a7777 in start_thread () at /lib64/libc.so.6
#5 0x00007f7d03531c70 in clone3 () at /lib64/libc.so.6
Thread 10 (Thread 0x7f7ceffff640 (LWP 4463) "gdbus"):
#0 0x00007f7d0352464f in poll () at /lib64/libc.so.6
#1 0x00007f7d039601c6 in () at /lib64/libglib-2.0.so.0
#2 0x00007f7d0396051f in g_main_loop_run () at /lib64/libglib-2.0.so.0
#3 0x00007f7d03c09c06 in () at /lib64/libgio-2.0.so.0
#4 0x00007f7d0398a1b5 in () at /lib64/libglib-2.0.so.0
#5 0x00007f7d034a7777 in start_thread () at /lib64/libc.so.6
#6 0x00007f7d03531c70 in clone3 () at /lib64/libc.so.6
Thread 9 (Thread 0x7f7cef7fe640 (LWP 4462) "gmain"):
#0 0x00007f7d0352464f in poll () at /lib64/libc.so.6
#1 0x00007f7d039601c6 in () at /lib64/libglib-2.0.so.0
#2 0x00007f7d039602ec in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#3 0x00007f7d03960331 in () at /lib64/libglib-2.0.so.0
#4 0x00007f7d0398a1b5 in () at /lib64/libglib-2.0.so.0
#5 0x00007f7d034a7777 in start_thread () at /lib64/libc.so.6
#6 0x00007f7d03531c70 in clone3 () at /lib64/libc.so.6
Thread 8 (Thread 0x7f7cfaffd640 (LWP 4453) "worker"):
#0 0x00007f7d0352a4fd in syscall () at /lib64/libc.so.6
#1 0x00007f7d039b3c4f in g_cond_wait () at /lib64/libglib-2.0.so.0
#2 0x00007f7d03f18c03 in () at /lib64/libgegl-0.4.so.0
#3 0x00007f7d0398a1b5 in () at /lib64/libglib-2.0.so.0
#4 0x00007f7d034a7777 in start_thread () at /lib64/libc.so.6
#5 0x00007f7d03531c70 in clone3 () at /lib64/libc.so.6
Thread 7 (Thread 0x7f7cfb7fe640 (LWP 4452) "worker"):
#0 0x00007f7d0352a4fd in syscall () at /lib64/libc.so.6
#1 0x00007f7d039b3c4f in g_cond_wait () at /lib64/libglib-2.0.so.0
#2 0x00007f7d03f18c03 in () at /lib64/libgegl-0.4.so.0
#3 0x00007f7d0398a1b5 in () at /lib64/libglib-2.0.so.0
#4 0x00007f7d034a7777 in start_thread () at /lib64/libc.so.6
#5 0x00007f7d03531c70 in clone3 () at /lib64/libc.so.6
Thread 6 (Thread 0x7f7cfbfff640 (LWP 4451) "worker"):
#0 0x00007f7d0352a4fd in syscall () at /lib64/libc.so.6
#1 0x00007f7d039b3c4f in g_cond_wait () at /lib64/libglib-2.0.so.0
#2 0x00007f7d03f18c03 in () at /lib64/libgegl-0.4.so.0
#3 0x00007f7d0398a1b5 in () at /lib64/libglib-2.0.so.0
#4 0x00007f7d034a7777 in start_thread () at /lib64/libc.so.6
#5 0x00007f7d03531c70 in clone3 () at /lib64/libc.so.6
Thread 5 (Thread 0x7f7cf8011640 (LWP 4450) "worker"):
#0 0x00007f7d0352a4fd in syscall () at /lib64/libc.so.6
#1 0x00007f7d039b3c4f in g_cond_wait () at /lib64/libglib-2.0.so.0
#2 0x00007f7d03f18c03 in () at /lib64/libgegl-0.4.so.0
#3 0x00007f7d0398a1b5 in () at /lib64/libglib-2.0.so.0
#4 0x00007f7d034a7777 in start_thread () at /lib64/libc.so.6
#5 0x00007f7d03531c70 in clone3 () at /lib64/libc.so.6
Thread 4 (Thread 0x7f7d00812640 (LWP 4449) "worker"):
#0 0x00007f7d0352a4fd in syscall () at /lib64/libc.so.6
#1 0x00007f7d039b3c4f in g_cond_wait () at /lib64/libglib-2.0.so.0
#2 0x00007f7d03f18c03 in () at /lib64/libgegl-0.4.so.0
#3 0x00007f7d0398a1b5 in () at /lib64/libglib-2.0.so.0
#4 0x00007f7d034a7777 in start_thread () at /lib64/libc.so.6
#5 0x00007f7d03531c70 in clone3 () at /lib64/libc.so.6
Thread 3 (Thread 0x7f7d01013640 (LWP 4448) "worker"):
#0 0x00007f7d0352a4fd in syscall () at /lib64/libc.so.6
#1 0x00007f7d039b3c4f in g_cond_wait () at /lib64/libglib-2.0.so.0
#2 0x00007f7d03f18c03 in () at /lib64/libgegl-0.4.so.0
#3 0x00007f7d0398a1b5 in () at /lib64/libglib-2.0.so.0
#4 0x00007f7d034a7777 in start_thread () at /lib64/libc.so.6
#5 0x00007f7d03531c70 in clone3 () at /lib64/libc.so.6
Thread 2 (Thread 0x7f7d01814640 (LWP 4447) "worker"):
#0 0x00007f7d0352a4fd in syscall () at /lib64/libc.so.6
#1 0x00007f7d039b3c4f in g_cond_wait () at /lib64/libglib-2.0.so.0
#2 0x00007f7d03f18c03 in () at /lib64/libgegl-0.4.so.0
#3 0x00007f7d0398a1b5 in () at /lib64/libglib-2.0.so.0
#4 0x00007f7d034a7777 in start_thread () at /lib64/libc.so.6
#5 0x00007f7d03531c70 in clone3 () at /lib64/libc.so.6
Thread 1 (Thread 0x7f7d01e66e80 (LWP 4445) "gimp-2.10"):
#0 0x00007f7d034b4b57 in unlink_chunk.constprop () at /lib64/libc.so.6
#1 0x00007f7d034b4d3c in malloc_consolidate () at /lib64/libc.so.6
#2 0x00007f7d034b6f2f in _int_malloc () at /lib64/libc.so.6
#3 0x00007f7d034b8438 in malloc () at /lib64/libc.so.6
#4 0x00007f7d03491e84 in _IO_file_doallocate () at /lib64/libc.so.6
#5 0x00007f7d034a09c0 in _IO_doallocbuf () at /lib64/libc.so.6
#6 0x00007f7d0349fc68 in __GI__IO_file_overflow () at /lib64/libc.so.6
#7 0x00007f7d0349ed5e in __GI__IO_file_xsputn () at /lib64/libc.so.6
#8 0x00007f7d03488a57 in __vfprintf_internal () at /lib64/libc.so.6
#9 0x00007f7d039ae514 in g_fprintf () at /lib64/libglib-2.0.so.0
#10 0x00007f7d043e654e in gimp_stack_trace_print () at /lib64/libgimpbase-2.0.so.0
#11 0x00005604041e8c39 in ()
#12 0x00005604041e8cfa in ()
#13 0x00005604041e8d49 in ()
#14 0x00007f7d034567c0 in <signal handler called> () at /lib64/libc.so.6
#15 0x00007f7d03a7df89 in g_type_check_instance () at /lib64/libgobject-2.0.so.0
#16 0x00007f7d03a72404 in g_signal_handlers_disconnect_matched () at /lib64/libgobject-2.0.so.0
#17 0x00005604043557a0 in ()
#18 0x00007f7d049c8f0b in () at /lib64/libgimpwidgets-2.0.so.0
#19 0x00007f7d049d177e in () at /lib64/libgimpwidgets-2.0.so.0
#20 0x00007f7d03a60e83 in g_object_run_dispose () at /lib64/libgobject-2.0.so.0
#21 0x00007f7d04489d65 in () at /lib64/libgtk-x11-2.0.so.0
#22 0x00007f7d044c0ee7 in () at /lib64/libgtk-x11-2.0.so.0
#23 0x00007f7d03a5a521 in g_closure_invoke () at /lib64/libgobject-2.0.so.0
#24 0x00007f7d03a6d034 in () at /lib64/libgobject-2.0.so.0
#25 0x00007f7d03a73d32 in g_signal_emit_valist () at /lib64/libgobject-2.0.so.0
#26 0x00007f7d03a73e9f in g_signal_emit () at /lib64/libgobject-2.0.so.0
#27 0x00007f7d0455cef6 in () at /lib64/libgtk-x11-2.0.so.0
#28 0x00007f7d03a60e83 in g_object_run_dispose () at /lib64/libgobject-2.0.so.0
#29 0x00007f7d04489d65 in () at /lib64/libgtk-x11-2.0.so.0
#30 0x00007f7d044c0ee7 in () at /lib64/libgtk-x11-2.0.so.0
#31 0x00007f7d03a5a521 in g_closure_invoke () at /lib64/libgobject-2.0.so.0
#32 0x00007f7d03a6d034 in () at /lib64/libgobject-2.0.so.0
#33 0x00007f7d03a73d32 in g_signal_emit_valist () at /lib64/libgobject-2.0.so.0
#34 0x00007f7d03a73e9f in g_signal_emit () at /lib64/libgobject-2.0.so.0
#35 0x00007f7d0455cef6 in () at /lib64/libgtk-x11-2.0.so.0
#36 0x00007f7d03a60e83 in g_object_run_dispose () at /lib64/libgobject-2.0.so.0
#37 0x00007f7d04489d65 in () at /lib64/libgtk-x11-2.0.so.0
#38 0x00007f7d044c0ee7 in () at /lib64/libgtk-x11-2.0.so.0
#39 0x00007f7d03a5a521 in g_closure_invoke () at /lib64/libgobject-2.0.so.0
#40 0x00007f7d03a6d034 in () at /lib64/libgobject-2.0.so.0
#41 0x00007f7d03a73d32 in g_signal_emit_valist () at /lib64/libgobject-2.0.so.0
#42 0x00007f7d03a73e9f in g_signal_emit () at /lib64/libgobject-2.0.so.0
#43 0x00007f7d0455cef6 in () at /lib64/libgtk-x11-2.0.so.0
#44 0x00007f7d03a60e83 in g_object_run_dispose () at /lib64/libgobject-2.0.so.0
#45 0x00007f7d04489d65 in () at /lib64/libgtk-x11-2.0.so.0
#46 0x00007f7d044c0ee7 in () at /lib64/libgtk-x11-2.0.so.0
#47 0x00007f7d03a5a521 in g_closure_invoke () at /lib64/libgobject-2.0.so.0
#48 0x00007f7d03a6d034 in () at /lib64/libgobject-2.0.so.0
#49 0x00007f7d03a73d32 in g_signal_emit_valist () at /lib64/libgobject-2.0.so.0
#50 0x00007f7d03a73e9f in g_signal_emit () at /lib64/libgobject-2.0.so.0
#51 0x00007f7d0455cef6 in () at /lib64/libgtk-x11-2.0.so.0
#52 0x00007f7d03a60e83 in g_object_run_dispose () at /lib64/libgobject-2.0.so.0
#53 0x00007f7d044c0ee7 in () at /lib64/libgtk-x11-2.0.so.0
#54 0x00007f7d03a5a5e0 in g_closure_invoke () at /lib64/libgobject-2.0.so.0
#55 0x00007f7d03a6d034 in () at /lib64/libgobject-2.0.so.0
#56 0x00007f7d03a73d32 in g_signal_emit_valist () at /lib64/libgobject-2.0.so.0
#57 0x00007f7d03a73e9f in g_signal_emit () at /lib64/libgobject-2.0.so.0
#58 0x00007f7d0455cef6 in () at /lib64/libgtk-x11-2.0.so.0
#59 0x00007f7d03a60e83 in g_object_run_dispose () at /lib64/libgobject-2.0.so.0
#60 0x000056040437ba65 in ()
#61 0x00007f7d03a60e83 in g_object_run_dispose () at /lib64/libgobject-2.0.so.0
#62 0x0000560404224550 in dialogs_exit ()
#63 0x00005604041e9c19 in ()
#64 0x00005604044d90c7 in gimp_marshal_BOOLEAN__BOOLEAN ()
#65 0x00007f7d03a5a5e0 in g_closure_invoke () at /lib64/libgobject-2.0.so.0
#66 0x00007f7d03a6d254 in () at /lib64/libgobject-2.0.so.0
#67 0x00007f7d03a7360a in g_signal_emit_valist () at /lib64/libgobject-2.0.so.0
#68 0x00007f7d03a73e9f in g_signal_emit () at /lib64/libgobject-2.0.so.0
#69 0x00005604044ddada in gimp_exit ()
#70 0x00007f7d03a5a5e0 in g_closure_invoke () at /lib64/libgobject-2.0.so.0
#71 0x00007f7d03a6cf86 in () at /lib64/libgobject-2.0.so.0
#72 0x00007f7d03a73d32 in g_signal_emit_valist () at /lib64/libgobject-2.0.so.0
#73 0x00007f7d03a73e9f in g_signal_emit () at /lib64/libgobject-2.0.so.0
#74 0x00007f7d03a5a5e0 in g_closure_invoke () at /lib64/libgobject-2.0.so.0
#75 0x00007f7d03a6cf86 in () at /lib64/libgobject-2.0.so.0
#76 0x00007f7d03a73d32 in g_signal_emit_valist () at /lib64/libgobject-2.0.so.0
#77 0x00007f7d03a73e9f in g_signal_emit () at /lib64/libgobject-2.0.so.0
#78 0x00007f7d04499536 in () at /lib64/libgtk-x11-2.0.so.0
#79 0x00007f7d03a5a5e0 in g_closure_invoke () at /lib64/libgobject-2.0.so.0
#80 0x00007f7d03a6cc35 in () at /lib64/libgobject-2.0.so.0
#81 0x00007f7d03a73d32 in g_signal_emit_valist () at /lib64/libgobject-2.0.so.0
#82 0x00007f7d03a73e9f in g_signal_emit () at /lib64/libgobject-2.0.so.0
#83 0x00007f7d04499c29 in () at /lib64/libgtk-x11-2.0.so.0
#84 0x00007f7d045385b7 in () at /lib64/libgtk-x11-2.0.so.0
#85 0x00007f7d03a5a5e0 in g_closure_invoke () at /lib64/libgobject-2.0.so.0
#86 0x00007f7d03a6d0b5 in () at /lib64/libgobject-2.0.so.0
#87 0x00007f7d03a7360a in g_signal_emit_valist () at /lib64/libgobject-2.0.so.0
#88 0x00007f7d03a73e9f in g_signal_emit () at /lib64/libgobject-2.0.so.0
#89 0x00007f7d046582e4 in () at /lib64/libgtk-x11-2.0.so.0
#90 0x00007f7d0453c8d4 in gtk_propagate_event () at /lib64/libgtk-x11-2.0.so.0
#91 0x00007f7d0453de5b in gtk_main_do_event () at /lib64/libgtk-x11-2.0.so.0
#92 0x00007f7d04939f2b in () at /lib64/libgdk-x11-2.0.so.0
#93 0x00007f7d0395fea0 in g_main_context_dispatch () at /lib64/libglib-2.0.so.0
#94 0x00007f7d03960258 in () at /lib64/libglib-2.0.so.0
#95 0x00007f7d0396051f in g_main_loop_run () at /lib64/libglib-2.0.so.0
#96 0x00005604041ede2d in app_run ()
#97 0x00005604041e3d92 in main ()
[Inferior 1 (process 4445) detached]