[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <87a6gzcepi.ffs@tglx>
Date: Fri, 17 Dec 2021 18:40:25 +0100
From: Thomas Gleixner <tglx@...utronix.de>
To: Nicolas Saenz Julienne <nsaenzju@...hat.com>, mark.rutland@....com,
paulmck@...nel.org
Cc: rostedt@...dmis.org, linux-kernel@...r.kernel.org,
linux-arm-kernel@...ts.infradead.org, rcu@...r.kernel.org,
peterz@...radead.org, mtosatti@...hat.com, frederic@...nel.org,
corbet@....net, Nicolas Saenz Julienne <nsaenzju@...hat.com>
Subject: Re: [PATCH v3 1/2] Documentation: Fill the gaps about entry/noinstr
constraints
Nicolas,
On Fri, Dec 17 2021 at 11:57, Nicolas Saenz Julienne wrote:
> +Non-instrumentable code - noinstr
> +---------------------------------
> +
> +Most instrumentation facilities depend on RCU, so intrumentation is prohibited
> +for entry code before RCU starts watching and exit code after RCU stops
> +watching. In addition, many architectures must save and restore register state,
> +which means that (for example) a breakpoint in the breakpoint entry code would
> +overwrite the debug registers of the initial breakpoint.
> +
> +Such code must be marked with the 'noinstr' attribute, placing that code into a
> +special section inaccessible to instrumentation and debug facilities. Some
> +functions are partially instrumentable, which is handled by marking them nointr
s/nointr/noinstr/
Thanks for polishing this!
tglx
Powered by blists - more mailing lists