From: Mandeep Singh Baines Date: Thu, 5 Feb 2009 04:35:48 +0000 (-0800) Subject: softlockup: check all tasks in hung_task X-Git-Tag: v2.6.30-rc1~1^2~7 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=ce9dbe244bf2063c41792e40dae7745957b118e0;p=pandora-kernel.git softlockup: check all tasks in hung_task Impact: extend the scope of hung-task checks Changed the default value of hung_task_check_count to PID_MAX_LIMIT. hung_task_batch_count added to put an upper bound on the critical section. Every hung_task_batch_count checks, the rcu lock is never held for a too long time. Keeping the critical section small minimizes time preemption is disabled and keeps rcu grace periods small. To prevent following a stale pointer, get_task_struct is called on g and t. To verify that g and t have not been unhashed while outside the critical section, the task states are checked. The design was proposed by Frédéric Weisbecker. Signed-off-by: Mandeep Singh Baines Suggested-by: Frédéric Weisbecker Acked-by: Andrew Morton Signed-off-by: Ingo Molnar --- Reading git-diff-tree failed