Note: This bug is displayed in read-only format because
the product is no longer active in Red Hat Bugzilla.
RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Description of problem:
The nautilus was aborted by SIGFPE at g_hash_table_lookup_node() in glib2.
(gdb results)
Core was generated by `nautilus'.
Program terminated with signal 8, Arithmetic exception.
(gdb) bt
#0 0x00abac7d in g_hash_table_lookup_node (hash_table=0x9b77830,
key=0x9b27dd4) at ghash.c:199
#1 IA__g_hash_table_lookup (hash_table=0x9b77830, key=0x9b27dd4)
at ghash.c:784
#2 0x08152853 in pixbuf_can_load_type (mime_type=0x9b27dd4 "inode/directory")
at nautilus-thumbnails.c:779
#3 0x081212b1 in nautilus_file_should_show_thumbnail (file=0x9b5a908)
at nautilus-file.c:3979
#4 0x080fb6c3 in lacks_thumbnail (file=0x9b5a908)
at nautilus-directory-async.c:1696
#5 0x080fb1cc in is_needy (file=0x9b5a908,
check_missing=<value optimized out>, request_type_wanted=REQUEST_THUMBNAIL)
at nautilus-directory-async.c:2332
#6 0x080fc59c in thumbnail_start (directory=0x9b58070)
at nautilus-directory-async.c:3975
#7 start_or_stop_io (directory=0x9b58070) at nautilus-directory-async.c:4543
#8 nautilus_directory_async_state_changed (directory=0x9b58070)
at nautilus-directory-async.c:4589
#9 0x081012aa in nautilus_directory_monitor_remove_internal (
directory=0x9b58070, file=0x9b5ae18, client=0x9b46d44)
at nautilus-directory-async.c:1127
#10 0x0815961e in vfs_file_monitor_remove (file=0x9b5ae18, client=0x9b46d44)
at nautilus-vfs-file.c:58
----- glib/ghash.c ------
static inline guint
g_hash_table_lookup_node (GHashTable *hash_table,
gconstpointer key)
{
:
(snip)
:
hash_value = (* hash_table->hash_func) (key);
if (G_UNLIKELY (hash_value <= 1))
hash_value = 2;
node_index = hash_value % hash_table->mod; <<<===== Division by zero
---------------------------
(gdb) p *hash_table
$1 = {size = 162995584, mod = 0, mask = 7, nnodes = 0, noccupied = 0, nodes = 0x9bf4f88, hash_func = 0x80618ec <g_direct_hash@plt>,
key_equal_func = 0x8061f0c <g_direct_equal@plt>, ref_count = 0, version = 0, key_destroy_func = 0, value_destroy_func = 0}
The variable `hash_table->mod` is set to the prime number when making the hash table by g_hash_table_new_full().
Therefore, it is hard to consider the situation where `hash_table->mod` is set to 0.
----- glib/ghash.c ------
GHashTable*
g_hash_table_new_full (GHashFunc hash_func,
GEqualFunc key_equal_func,
GDestroyNotify key_destroy_func,
GDestroyNotify value_destroy_func)
{
GHashTable *hash_table;
hash_table = g_slice_new (GHashTable);
g_hash_table_set_shift (hash_table, HASH_TABLE_MIN_SHIFT); <<===== `hash_table->mod’ is set to the prime number.
hash_table->nnodes = 0;
---------------------------
Version-Release number of selected component (if applicable):
- nautilus-2.28.4-19.el6
- glib2-2.22.5-7.el6
- glibc-2.12-1.107.el6
- glibc-common-2.12-1.107.el6
How reproducible:
This problem is not reproducible.
Additional info:
* This problem occurred during the shutdown of the system.
* Similar case:
- https://bugzilla.redhat.com/show_bug.cgi?id=834405
- https://bugs.launchpad.net/ubuntu/+source/nautilus-actions/+bug/946439
Comment 3RHEL Program Management
2015-10-08 12:47:05 UTC
Development Management has reviewed and declined this request.
You may appeal this decision by reopening this request.
Description of problem: The nautilus was aborted by SIGFPE at g_hash_table_lookup_node() in glib2. (gdb results) Core was generated by `nautilus'. Program terminated with signal 8, Arithmetic exception. (gdb) bt #0 0x00abac7d in g_hash_table_lookup_node (hash_table=0x9b77830, key=0x9b27dd4) at ghash.c:199 #1 IA__g_hash_table_lookup (hash_table=0x9b77830, key=0x9b27dd4) at ghash.c:784 #2 0x08152853 in pixbuf_can_load_type (mime_type=0x9b27dd4 "inode/directory") at nautilus-thumbnails.c:779 #3 0x081212b1 in nautilus_file_should_show_thumbnail (file=0x9b5a908) at nautilus-file.c:3979 #4 0x080fb6c3 in lacks_thumbnail (file=0x9b5a908) at nautilus-directory-async.c:1696 #5 0x080fb1cc in is_needy (file=0x9b5a908, check_missing=<value optimized out>, request_type_wanted=REQUEST_THUMBNAIL) at nautilus-directory-async.c:2332 #6 0x080fc59c in thumbnail_start (directory=0x9b58070) at nautilus-directory-async.c:3975 #7 start_or_stop_io (directory=0x9b58070) at nautilus-directory-async.c:4543 #8 nautilus_directory_async_state_changed (directory=0x9b58070) at nautilus-directory-async.c:4589 #9 0x081012aa in nautilus_directory_monitor_remove_internal ( directory=0x9b58070, file=0x9b5ae18, client=0x9b46d44) at nautilus-directory-async.c:1127 #10 0x0815961e in vfs_file_monitor_remove (file=0x9b5ae18, client=0x9b46d44) at nautilus-vfs-file.c:58 ----- glib/ghash.c ------ static inline guint g_hash_table_lookup_node (GHashTable *hash_table, gconstpointer key) { : (snip) : hash_value = (* hash_table->hash_func) (key); if (G_UNLIKELY (hash_value <= 1)) hash_value = 2; node_index = hash_value % hash_table->mod; <<<===== Division by zero --------------------------- (gdb) p *hash_table $1 = {size = 162995584, mod = 0, mask = 7, nnodes = 0, noccupied = 0, nodes = 0x9bf4f88, hash_func = 0x80618ec <g_direct_hash@plt>, key_equal_func = 0x8061f0c <g_direct_equal@plt>, ref_count = 0, version = 0, key_destroy_func = 0, value_destroy_func = 0} The variable `hash_table->mod` is set to the prime number when making the hash table by g_hash_table_new_full(). Therefore, it is hard to consider the situation where `hash_table->mod` is set to 0. ----- glib/ghash.c ------ GHashTable* g_hash_table_new_full (GHashFunc hash_func, GEqualFunc key_equal_func, GDestroyNotify key_destroy_func, GDestroyNotify value_destroy_func) { GHashTable *hash_table; hash_table = g_slice_new (GHashTable); g_hash_table_set_shift (hash_table, HASH_TABLE_MIN_SHIFT); <<===== `hash_table->mod’ is set to the prime number. hash_table->nnodes = 0; --------------------------- Version-Release number of selected component (if applicable): - nautilus-2.28.4-19.el6 - glib2-2.22.5-7.el6 - glibc-2.12-1.107.el6 - glibc-common-2.12-1.107.el6 How reproducible: This problem is not reproducible. Additional info: * This problem occurred during the shutdown of the system. * Similar case: - https://bugzilla.redhat.com/show_bug.cgi?id=834405 - https://bugs.launchpad.net/ubuntu/+source/nautilus-actions/+bug/946439