Ben Hutchings a3f1431065 MIPS: cmpxchg64() and HAVE_VIRT_CPU_ACCOUNTING_GEN don't work for 32-bit SMP
__cmpxchg64_local_generic() is atomic only w.r.t tasks and interrupts
on the same CPU (that's what the 'local' means).  We can't use it to
implement cmpxchg64() in SMP configurations.

So, for 32-bit SMP configurations:

- Don't define cmpxchg64()
- Don't enable HAVE_VIRT_CPU_ACCOUNTING_GEN, which requires it

Fixes: e2093c7b03c1 ("MIPS: Fall back to generic implementation of ...")
Fixes: bb877e96bea1 ("MIPS: Add support for full dynticks CPU time accounting")
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: Deng-Cheng Zhu <dengcheng.zhu@mips.com>
Cc: linux-mips@linux-mips.org
Cc: <stable@vger.kernel.org> # 4.1+
Patchwork: https://patchwork.linux-mips.org/patch/17413/
Signed-off-by: James Hogan <jhogan@kernel.org>
2017-11-13 16:49:01 +00:00
..
2017-11-07 18:33:16 +00:00
2016-10-06 17:31:02 +02:00
2016-08-03 08:16:30 +02:00
2017-01-25 02:51:11 +01:00
2017-08-29 15:21:50 +02:00
2017-11-07 22:40:15 +00:00
2017-09-04 13:53:14 +02:00
2017-10-09 14:53:57 +02:00
2017-03-08 10:38:06 +01:00
2017-04-10 11:56:07 +02:00