• Srivatsa Vaddagiri's avatar
    sched: fix rq->lock recursion · 4ca1d04e
    Srivatsa Vaddagiri authored
    
    
    Enabling SCHED_HRTICK currently results in rq->lock recursion and a hard
    hang at bootup.  Essentially try_to_wakeup() grabs rq->lock and tries
    arming a hrtimer via hrtimer_restart(), which deep down tries waking up
    ksoftirqd, which leads to a recursive call to try_to_wakeup() and thus
    attempt to take rq->lock recursively!!
    
    This is fixed by having scheduler queue hrtimer via
    __hrtimer_start_range_ns() which avoids waking up ksoftirqd.
    Signed-off-by: default avatarSrivatsa Vaddagiri <vatsa@codeaurora.org>
    Change-Id: I11a13be1d9db3a749614ccf3d4f5fb7bf6f18fa1
    4ca1d04e
core.c 197 KB