After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 768968 - gio/tests/socket-listener hangs since e4ee307
gio/tests/socket-listener hangs since e4ee307
Status: RESOLVED FIXED
Product: glib
Classification: Platform
Component: mainloop
unspecified
Other Linux
: Normal normal
: ---
Assigned To: gtkdev
gtkdev
Depends on:
Blocks:
 
 
Reported: 2016-07-19 20:17 UTC by Emilio Pozuelo Monfort
Modified: 2016-07-19 21:25 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Emilio Pozuelo Monfort 2016-07-19 20:17:42 UTC
In glib 2.49.3, gio/tests/socket-listener hangs. It works fine in 2.49.2, and a bisect determined this starts with commit e4ee307:

commit e4ee3079c5afc3c1c3d2415f20c3e8605728f074
Author: Frediano Ziglio <fziglio@redhat.com>
Date:   Mon Jan 25 14:59:24 2016 +0000

    Do not wake up main loop if change is from same thread
    
    This reduce the frequency the loop is waked up adding and removing
    file descriptors or timeouts.
    Considering that to support recursion events are removed from list and
    added again this reduce iteration number a lot.
    
    Signed-off-by: Frediano Ziglio <fziglio@redhat.com>
    
    https://bugzilla.gnome.org/show_bug.cgi?id=761102


It hangs in socket-listener.c:80 when calling g_main_context_iteration:

(gdb) bt
  • #0 __poll_nocancel
    at ../sysdeps/unix/syscall-template.S line 84
  • #1 g_main_context_poll
    at gmain.c line 4226
  • #2 g_main_context_iterate
    at gmain.c line 3922
  • #3 g_main_context_iteration
    at gmain.c line 3988
  • #4 test_event_signal
    at socket-listener.c line 80
  • #5 test_case_run
    at gtestutils.c line 2158
  • #6 g_test_run_suite_internal
    at gtestutils.c line 2241
  • #7 g_test_run_suite_internal
    at gtestutils.c line 2253
  • #8 g_test_run_suite
    at gtestutils.c line 2328
  • #9 g_test_run
    at gtestutils.c line 1596
  • #10 main
    at socket-listener.c line 96

Dunno if this is a regression or a bug in the test.
Comment 1 Dan Winship 2016-07-19 21:25:15 UTC
Bug in the test case. Fixed in master, thanks.