Skip to contentSkip to conversation

rcu: avoid pointless blocked-task warnings

tip:core/urgent Ingo Molnar 2 participants 2 messages Jan 15, 2011 – Jan 16, 2011 1 message not in the archive

lore
Share & tools
lore

A message that is not in the archive (sent off-list or not yet received): [email protected]

#1 lore raw
Quoted 7 lines · tip-bot for Paul E. McKenney
Commit-ID:  b24efdfdf679cf9b05947c531971905fc727dd40
Gitweb:     http://git.kernel.org/tip/b24efdfdf679cf9b05947c531971905fc727dd40
Author:     Paul E. McKenney <[email protected]>
AuthorDate: Wed, 12 Jan 2011 14:18:11 -0800
Committer:  Paul E. McKenney <[email protected]>
CommitDate: Fri, 14 Jan 2011 04:58:08 -0800
Quoted 7 lines

rcu: avoid pointless blocked-task warnings

If the RCU callback-processing kthread has nothing to do, it parks in a wait_event(). If RCU remains idle for more than two minutes, the kernel complains about this. This commit changes from wait_event() to wait_event_interruptible() to prevent the kernel from complaining just because RCU is idle.

Btw., a sidenote, it's not just about the blocked-tasks lockup detector warning, uninterruptible sleeps will also artificially inflate the load average of the box, +1.0 per such task. So it's definitely a bug to sleep for a very long time uninterruptible.

Thanks,

Ingo

#2 lore raw
Quoted 18 lines · Ingo Molnar
Quoted 7 lines · tip-bot for Paul E. McKenney
Commit-ID:  b24efdfdf679cf9b05947c531971905fc727dd40
Gitweb:     http://git.kernel.org/tip/b24efdfdf679cf9b05947c531971905fc727dd40
Author:     Paul E. McKenney <[email protected]>
AuthorDate: Wed, 12 Jan 2011 14:18:11 -0800
Committer:  Paul E. McKenney <[email protected]>
CommitDate: Fri, 14 Jan 2011 04:58:08 -0800
Quoted 7 lines

rcu: avoid pointless blocked-task warnings

If the RCU callback-processing kthread has nothing to do, it parks in a wait_event(). If RCU remains idle for more than two minutes, the kernel complains about this. This commit changes from wait_event() to wait_event_interruptible() to prevent the kernel from complaining just because RCU is idle.

Quoted 4 lines

Btw., a sidenote, it's not just about the blocked-tasks lockup detector warning, uninterruptible sleeps will also artificially inflate the load average of the box, +1.0 per such task. So it's definitely a bug to sleep for a very long time uninterruptible.

Good point, and I have made the corresponding change in the in-progress TREE_PREEMPT_RCU variant of RCU priority boosting. Some thought will be required when merging SRCU into the Tiny and Tree RCU implementations. ;-)

Thanx, Paul