[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20141218.124811.1240082913671950177.davem@davemloft.net>
Date: Thu, 18 Dec 2014 12:48:11 -0500 (EST)
From: David Miller <davem@...emloft.net>
To: andreas@...sler.com
Cc: sparclinux@...r.kernel.org, linux-kernel@...r.kernel.org,
software@...sler.com
Subject: Re: [PATCH] sparc32: destroy_context() and switch_mm() needs to
disable interrupts.
From: Andreas Larsson <andreas@...sler.com>
Date: Thu, 18 Dec 2014 13:23:23 +0100
> Load balancing can be triggered in the critical sections protected by
> srmmu_context_spinlock in destroy_context() and switch_mm() and can hang
> the cpu waiting for the rq lock of another cpu that in turn has called
> switch_mm hangning on srmmu_context_spinlock leading to deadlock.
>
> So, disable interrupt while taking srmmu_context_spinlock in
> destroy_context() and switch_mm() so we don't deadlock.
>
> See also commit 77b838fa1ef0 ("[SPARC64]: destroy_context() needs to disable
> interrupts.")
>
> Signed-off-by: Andreas Larsson <andreas@...sler.com>
Looks good, applied, thanks Andreas.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists