All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Gleixner <tglx@linutronix.de>
To: Alexandre Chartre <alexandre.chartre@oracle.com>,
	LKML <linux-kernel@vger.kernel.org>
Cc: x86@kernel.org, Steven Rostedt <rostedt@goodmis.org>,
	Brian Gerst <brgerst@gmail.com>, Juergen Gross <jgross@suse.com>,
	Frederic Weisbecker <frederic@kernel.org>
Subject: Re: [patch part-II V2 11/13] x86/speculation/mds: Mark mds_user_clear_cpu_buffers() __always_inline
Date: Tue, 10 Mar 2020 17:38:01 +0100	[thread overview]
Message-ID: <87lfo85fo6.fsf@nanos.tec.linutronix.de> (raw)
In-Reply-To: <c9847c45-32b0-e5e6-1eb9-5f9e10814276@oracle.com>

Alexandre Chartre <alexandre.chartre@oracle.com> writes:
> On 3/8/20 11:24 PM, Thomas Gleixner wrote:
>> -static inline void mds_user_clear_cpu_buffers(void)
>> +static __always_inline void mds_user_clear_cpu_buffers(void)
>>   {
>>   	if (static_branch_likely(&mds_user_clear))
>>   		mds_clear_cpu_buffers();
>> 
>
> Reviewed-by: Alexandre Chartre <alexandre.chartre@oracle.com>
>
> I am just wondering if it would be worth defining a new function attribute to
> identify functions which shouldn't be trace/probe more clearly. For example:
>
> #define no_trace_and_probe __always_inline
>
> static no_trace_and_probe void mds_user_clear_cpu_buffers(void)
> {
>          ...
> }
>
> I am just concerned that overtime we might forgot that a function is defined
> __always_inline just because it shouldn't be traced/probed.

True, for exactly that reason we are reconsidering the whole annotation
business by putting stuff into a separate section so we get tools
support for finding things which escape. See the discussion at:

  https://lore.kernel.org/lkml/87mu8p797b.fsf@nanos.tec.linutronix.de/

Peter and I are working on this right now, so you might end up reviewing
this pile in different form yet another time :(

Thanks,

        tglx

  reply	other threads:[~2020-03-10 16:38 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-03-08 22:23 [patch part-II V2 00/13] x86/entry: Consolidation - Part II (syscalls) Thomas Gleixner
2020-03-08 22:24 ` [patch part-II V2 01/13] context_tracking: Ensure that the critical path cannot be instrumented Thomas Gleixner
2020-03-09 14:22   ` Frederic Weisbecker
2020-03-09 14:40     ` Thomas Gleixner
2020-03-10 10:12   ` Alexandre Chartre
2020-03-08 22:24 ` [patch part-II V2 02/13] x86/entry: Mark enter_from_user_mode() notrace and NOKPROBE Thomas Gleixner
2020-03-09 15:14   ` Frederic Weisbecker
2020-03-09 15:40     ` Thomas Gleixner
2020-03-11 22:21       ` Frederic Weisbecker
2020-03-10 10:15   ` Alexandre Chartre
2020-03-08 22:24 ` [patch part-II V2 03/13] x86/entry/32: Remove unused label restore_nocheck Thomas Gleixner
2020-03-10 10:16   ` Alexandre Chartre
2020-03-10 13:02   ` [tip: x86/entry] " tip-bot2 for Thomas Gleixner
2020-03-08 22:24 ` [patch part-II V2 04/13] x86/entry/64: Trace irqflags unconditionally as ON when returning to user space Thomas Gleixner
2020-03-10 10:25   ` Alexandre Chartre
2020-03-10 13:02   ` [tip: x86/entry] " tip-bot2 for Thomas Gleixner
2020-03-08 22:24 ` [patch part-II V2 05/13] x86/entry/common: Consolidate syscall entry code Thomas Gleixner
2020-03-08 22:24 ` [patch part-II V2 06/13] x86/entry/common: Mark syscall entry points notrace and NOKPROBE Thomas Gleixner
2020-03-13 15:12   ` Frederic Weisbecker
2020-03-08 22:24 ` [patch part-II V2 07/13] x86/entry: Move irq tracing on syscall entry to C-code Thomas Gleixner
2020-03-13 15:16   ` Frederic Weisbecker
2020-03-13 23:17     ` Thomas Gleixner
2020-03-08 22:24 ` [patch part-II V2 08/13] tracing: Provide lockdep less trace_hardirqs_on/off() variants Thomas Gleixner
2020-03-10 10:55   ` Alexandre Chartre
2020-03-10 11:08     ` Borislav Petkov
2020-03-10 11:21       ` Alexandre Chartre
2020-03-08 22:24 ` [patch part-II V2 09/13] x86/entry/common: Split hardirq tracing into lockdep and ftrace parts Thomas Gleixner
2020-03-10 11:20   ` Borislav Petkov
2020-03-10 13:40     ` Steven Rostedt
2020-03-10 13:28   ` Alexandre Chartre
2020-03-23  9:08   ` [x86/entry/common] bae397f6e7: WARNING:at_kernel/sched/cputime.c:#get_vtime_delta kernel test robot
2020-03-23  9:08     ` kernel test robot
2020-03-08 22:24 ` [patch part-II V2 10/13] x86/entry/common: Split prepare_exit_to_usermode() and syscall_return_slowpath() Thomas Gleixner
2020-03-10 13:37   ` Alexandre Chartre
2020-03-08 22:24 ` [patch part-II V2 11/13] x86/speculation/mds: Mark mds_user_clear_cpu_buffers() __always_inline Thomas Gleixner
2020-03-10 13:48   ` Alexandre Chartre
2020-03-10 16:38     ` Thomas Gleixner [this message]
2020-03-08 22:24 ` [patch part-II V2 12/13] x86/entry: Move irq flags tracing to prepare_exit_to_usermode() Thomas Gleixner
2020-03-10 14:03   ` Alexandre Chartre
2020-03-08 22:24 ` [patch part-II V2 13/13] x86/entry/common: Split irq tracing in prepare_exit_to_usermode() Thomas Gleixner
2020-03-10 14:09   ` Alexandre Chartre

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87lfo85fo6.fsf@nanos.tec.linutronix.de \
    --to=tglx@linutronix.de \
    --cc=alexandre.chartre@oracle.com \
    --cc=brgerst@gmail.com \
    --cc=frederic@kernel.org \
    --cc=jgross@suse.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rostedt@goodmis.org \
    --cc=x86@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.