[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200826092113.GS35926@hirez.programming.kicks-ass.net>
Date: Wed, 26 Aug 2020 11:21:13 +0200
From: peterz@...radead.org
To: "Eddy_Wu@...ndmicro.com" <Eddy_Wu@...ndmicro.com>
Cc: Masami Hiramatsu <mhiramat@...nel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"x86@...nel.org" <x86@...nel.org>
Subject: Re: x86/kprobes: kretprobe fails to triggered if kprobe at function
entry is not optimized (trigger by int3 breakpoint)
On Wed, Aug 26, 2020 at 11:01:02AM +0200, peterz@...radead.org wrote:
> Known broken archs include: Sparc32-SMP, PARISC, ARC-v1-SMP.
> There might be a few more, but I've forgotten.
Note that none of those actually have NMIs and llist is mostly OK on
those architectures too.
The problem is when you combine cmpxchg() with regular stores and
llist() doesn't do that.
The only architectures that have NMIs are: ARM, ARM64, POWERPC, s390,
SH, SPARC64, X86 and XTENSA and all of them have sane atomic ops.
(XTENSA is tricky, because it looks like it has parts that don't have
sane atomics, but I _think_ those parts also don't have NMI)
Powered by blists - more mailing lists