Messages in this thread | | | From | David Howells <> | Subject | Re: [PATCH 10/19] Add Kconfig option ARCH_HAVE_NMI_SAFE_CMPXCHG | Date | Wed, 03 Aug 2011 09:44:30 +0100 |
| |
Len Brown <lenb@kernel.org> wrote:
> From: Huang Ying <ying.huang@intel.com> > > cmpxchg() is widely used by lockless code, including NMI-safe lockless > code. But on some architectures, the cmpxchg() implementation is not > NMI-safe, on these architectures the lockless code may need a > spin_trylock_irqsave() based implementation. > > This patch adds a Kconfig option: ARCH_HAVE_NMI_SAFE_CMPXCHG, so that > NMI-safe lockless code can depend on it or provide different > implementation according to it. > > On many architectures, cmpxchg is only NMI-safe for several specific > operand sizes. So, ARCH_HAVE_NMI_SAFE_CMPXCHG define in this patch > only guarantees cmpxchg is NMI-safe for sizeof(unsigned long). > > Signed-off-by: Huang Ying <ying.huang@intel.com> > Acked-by: Mike Frysinger <vapier@gentoo.org> > Acked-by: Paul Mundt <lethal@linux-sh.org> > Acked-by: Hans-Christian Egtvedt <hans-christian.egtvedt@atmel.com> > Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> > Acked-by: Chris Metcalf <cmetcalf@tilera.com> > CC: Richard Henderson <rth@twiddle.net> > CC: Mikael Starvik <starvik@axis.com> > CC: David Howells <dhowells@redhat.com> > CC: Yoshinori Sato <ysato@users.sourceforge.jp> > CC: Tony Luck <tony.luck@intel.com> > CC: Hirokazu Takata <takata@linux-m32r.org> > CC: Geert Uytterhoeven <geert@linux-m68k.org> > CC: Michal Simek <monstr@monstr.eu> > CC: Ralf Baechle <ralf@linux-mips.org> > CC: Kyle McMartin <kyle@mcmartin.ca> > CC: Martin Schwidefsky <schwidefsky@de.ibm.com> > CC: Chen Liqin <liqin.chen@sunplusct.com> > CC: "David S. Miller" <davem@davemloft.net> > CC: Ingo Molnar <mingo@redhat.com> > CC: Chris Zankel <chris@zankel.net> > Signed-off-by: Len Brown <len.brown@intel.com>
Acked-by: David Howells <dhowells@redhat.com> [FRV]
| |