On 04/13/2015 11:42 AM, Jon Medhurst (Tixy) wrote:
On Wed, 2015-04-08 at 14:32 -0700, Kevin Hilman wrote:
From: Kevin Hilman khilman@linaro.org
Commit cd5c2cc93d3d (hmp: Remove potential for task_struct access race) introduced a put_task_struct() to prevent races, but in doing so introduced potential spinlock recursion. (This change was further consolidated in commit 0baa5811bacf -- sched: hmp: unify active migration code.)
Unfortunately, the put_task_struct() is done while the runqueue spinlock is held, but put_task_struct() can also cause a reschedule
Under what circumstances can this reschedule happen? As the LDTS ticket is not accessible we are lacking the background and analysis of the reported problem.
I attach the sping lock recursion detection log as reported
I suppose you dont access to this link below https://support.linaro.org/tickets/1349