Bug 837809 - Hog with sched_yield() on ATI Technologies Inc RV730 PRO [Radeon HD 4650]
Hog with sched_yield() on ATI Technologies Inc RV730 PRO [Radeon HD 4650]
Product: Fedora
Classification: Fedora
Component: gnome-shell (Show other bugs)
Unspecified Unspecified
unspecified Severity unspecified
: ---
: ---
Assigned To: Owen Taylor
Fedora Extras Quality Assurance
Depends On:
  Show dependency treegraph
Reported: 2012-07-05 07:03 EDT by Tobias Mueller
Modified: 2015-11-22 00:34 EST (History)
5 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2013-02-13 15:39:24 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
gdb transcript of the issue (47.79 KB, text/plain)
2012-07-05 07:03 EDT, Tobias Mueller
no flags Details

  None (edit)
Description Tobias Mueller 2012-07-05 07:03:17 EDT
Created attachment 596379 [details]
gdb transcript of the issue

Description of problem:
Suddenly, gnome-shell hogs the CPU and renders the system unsuable.

Version-Release number of selected component (if applicable):

How reproducible:
I don't know. But it happened to me at least twice this week.

Steps to Reproduce:
Actual results:
system hangs, i.e. gnome-shell hogs the CPU, strace showing sched_yield every nanosecond or so.

Expected results:

Additional info:

I see at least a similar, if not the same issue on Fedora 16: strace shows sched_yield like crazy and the GNOME Shell hogs the CPU and cannot be used at all.

(gdb) t a a bESC[Kt full

Thread 7 (Thread 0x7f76e652f700 (LWP 1875)):
#0  0x00000039f20e85c3 in __GI___poll (fds=<optimized out>, nfds=<optimized out>, timeout=<optimized out>) at ../sysdeps/unix/sysv/linux/poll.c:87
        resultvar = <optimized out>
        oldtype = 0
        result = <optimized out>
#1  0x00000039f4045448 in g_main_context_poll (n_fds=1, fds=0x7f76dc001170, priority=<optimized out>, timeout=-1, context=0x23b4c30) at gmain.c:3402
        poll_func = 0x39f4053860 <g_poll>
#2  g_main_context_iterate (context=0x23b4c30, block=<optimized out>, dispatch=1, self=<optimized out>) at gmain.c:3084
        max_priority = 2147483647
        timeout = -1
        some_ready = <optimized out>
        nfds = 1
        allocated_nfds = <optimized out>
        fds = 0x7f76dc001170
        __PRETTY_FUNCTION__ = "g_main_context_iterate"
#3  0x00000039f4045c85 in g_main_loop_run (loop=0x7f76dc001150) at gmain.c:3297
        self = 0x23b1790
        __PRETTY_FUNCTION__ = "g_main_loop_run"
#4  0x00007f76e65349fb in dconf_context_thread (data=0x23b4c30) at dconfcontext.c:11
        context = 0x23b4c30
        loop = <optimized out>
        __PRETTY_FUNCTION__ = "dconf_context_thread"

Thread 1 (Thread 0x7f76ef55e9c0 (LWP 1859)):
#0  0x00000039f20d9bd7 in sched_yield () at ../sysdeps/unix/syscall-template.S:8
No locals.
#1  0x00007f76e7ebee26 in r600_fence_finish (pscreen=<optimized out>, fence=0x26
fe9c0, timeout=18446744073709551615) at r600_pipe.c:625
        rfence = 0x26fe9c0
        ctx = 0x22b1d60
        start_time = 0
        spins = 2655484928
#2  0x00007f76e7f9426d in st_finish (st=0x2348930) at state_tracker/st_cb_flush.c:106
        fence = 0x26fe9c0
#3  0x00007f76e7f942a0 in st_glFinish (ctx=<optimized out>) at state_tracker/st_cb_flush.c:141
        st = 0x2348930
#4  0x0000003a1365494c in _cogl_winsys_onscreen_swap_region (onscreen=<optimized out>, user_rectangles=<optimized out>, n_rectangles=1) at winsys/cogl-winsys-glx.c:1205
        framebuffer = <optimized out>
        context = 0x23513a0
        xlib_renderer = 0x21111c0
        glx_renderer = 0x21111c0
        xlib_onscreen = 0x2003700
        glx_onscreen = 0x2003700
        drawable = 16777229
        end_frame_vsync_counter = 0
        have_counter = 1
        can_wait = 1
        blit_sub_buffer_is_synchronized = 1
        framebuffer_height = <optimized out>
        rectangles = 0x7fff44cd1fb0
        i = <optimized out>
#5  0x0000003a140316a0 in clutter_stage_cogl_redraw (stage_window=0x23539b0) at cogl/clutter-stage-cogl.c:534
        clip = 0x2353a20
        copy_area = {33, 0, 1217, 1017}
        stage_cogl = 0x23539b0 [ClutterStageCogl]
        wrapper = 0x23c2050 [ClutterStage]
        backend = <optimized out>
        backend_cogl = <optimized out>
        may_use_clipped_redraw = <optimized out>
        use_clipped_redraw = <optimized out>
        stage_x11 = 0x23539b0 [ClutterStageCogl]
#6  0x0000003a140934ba in clutter_stage_do_redraw (stage=0x23c2050 [ClutterStage]) at ./clutter-stage.c:1023
        backend = 0x1fdf060 [ClutterBackendCogl]
        actor = 0x23c2050 [ClutterStage]
        priv = 0x23c2400
#7  _clutter_stage_do_update (stage=0x23c2050 [ClutterStage]) at ./clutter-stage.c:1079
        priv = 0x23c2400
#8  0x0000003a1407ac90 in clutter_clock_dispatch (source=<optimized out>, callback=<optimized out>, user_data=<optimized out>) at ./clutter-master-clock.c:384
        clock_source = <optimized out>
        master_clock = 0x210c5c0 [ClutterMasterClock]
        stage_manager = <optimized out>
        stages_updated = <optimized out>

I have more of that stacktrace in a separate file.

(gdb) call gjs_dumpstack ()
(gdb) quit

$ lspci | grep VGA
01:00.0 VGA compatible controller: ATI Technologies Inc RV730 PRO [Radeon HD 4650]

FWIW: Just before the hang, the screens (I have two) would flicker a couple of times, i.e. turn off for a second, then turn on for a couple of seconds, then turn off for a second until they turned on and finally froze.

I also commented on bug 706971, but as I can't set the version flag, I opened a new one.
Comment 1 Fedora End Of Life 2013-01-16 11:43:04 EST
This message is a reminder that Fedora 16 is nearing its end of life.
Approximately 4 (four) weeks from now Fedora will stop maintaining
and issuing updates for Fedora 16. It is Fedora's policy to close all
bug reports from releases that are no longer maintained. At that time
this bug will be closed as WONTFIX if it remains open with a Fedora 
'version' of '16'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version prior to Fedora 16's end of life.

Bug Reporter: Thank you for reporting this issue and we are sorry that 
we may not be able to fix it before Fedora 16 is end of life. If you 
would still like to see this bug fixed and are able to reproduce it 
against a later version of Fedora, you are encouraged to click on 
"Clone This Bug" and open it against that version of Fedora.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

The process we are following is described here: 
Comment 2 Fedora End Of Life 2013-02-13 15:39:27 EST
Fedora 16 changed to end-of-life (EOL) status on 2013-02-12. Fedora 16 is 
no longer maintained, which means that it will not receive any further 
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of 
Fedora please feel free to reopen this bug against that version.

Thank you for reporting this bug and we are sorry it could not be fixed.
Comment 3 Scott Corcoran 2015-11-22 00:34:01 EST
Now that fc21 is nearing end-of-life, it is amusing that this bug seems to have re-appeared, almost exactly to the tee the same description of symptoms and behavior.... a couple of times a week.

Nicely handled by switching virtual terminals and killing (-9) gnome shell from top.

$ lspci
01:00.0 VGA compatible controller: NVIDIA Corporation G84 [GeForce 8600 GT] (rev a1)

I can supply more information if of interest (and it happens again).

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