All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ingo Molnar <mingo@kernel.org>
To: Denys Vlasenko <dvlasenk@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
	Steven Rostedt <rostedt@goodmis.org>,
	Borislav Petkov <bp@alien8.de>, "H. Peter Anvin" <hpa@zytor.com>,
	Andy Lutomirski <luto@amacapital.net>,
	Oleg Nesterov <oleg@redhat.com>,
	Frederic Weisbecker <fweisbec@gmail.com>,
	Alexei Starovoitov <ast@plumgrid.com>,
	Will Drewry <wad@chromium.org>, Kees Cook <keescook@chromium.org>,
	x86@kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 2/4] x86/asm/entry/64: do not TRACE_IRQS fast SYSRET64 path
Date: Wed, 25 Mar 2015 18:29:22 +0100	[thread overview]
Message-ID: <20150325172922.GA7321@gmail.com> (raw)
In-Reply-To: <1427303896-24023-2-git-send-email-dvlasenk@redhat.com>


* Denys Vlasenko <dvlasenk@redhat.com> wrote:

> SYSRET code path has a small irq-off block.
> On this code path, TRACE_IRQS_ON can't be called right before interrupts
> are enabled for real, we can't clobber registers there.
> So current code does it earlier, in a safe place.
> 
> But with this, TRACE_IRQS_OFF/ON frames just two fast instructions,
> which is ridiculous: now most of irq-off block is _outside_ of the framing.
> 
> Do the same thing that we do on SYSCALL entry: do not track this irq-off block,
> it is very small to ever cause noticeable irq latency.
> 
> Be careful: make sure that "jnz int_ret_from_sys_call_irqs_off" now does
> invoke TRACE_IRQS_OFF - move int_ret_from_sys_call_irqs_off label before
> TRACE_IRQS_OFF.

> @@ -345,8 +346,8 @@ tracesys_phase2:
>   */
>  GLOBAL(int_ret_from_sys_call)
>  	DISABLE_INTERRUPTS(CLBR_NONE)
> -	TRACE_IRQS_OFF
>  int_ret_from_sys_call_irqs_off:
> +	TRACE_IRQS_OFF
>  	movl $_TIF_ALLWORK_MASK,%edi
>  	/* edi:	mask to check */

This latter trick absolutely needs a comment, to keep future lockdep 
developers from wondering about the mismatch and the weird label 
placement ...

Thanks,

	Ingo

  reply	other threads:[~2015-03-25 17:29 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-03-25 17:18 [PATCH 1/4] x86/asm/entry/64: better label name, fix comments Denys Vlasenko
2015-03-25 17:18 ` [PATCH 2/4] x86/asm/entry/64: do not TRACE_IRQS fast SYSRET64 path Denys Vlasenko
2015-03-25 17:29   ` Ingo Molnar [this message]
2015-03-25 17:41     ` Denys Vlasenko
2015-03-25 18:04       ` Ingo Molnar
2015-03-25 18:19         ` Denys Vlasenko
2015-03-25 17:18 ` [PATCH 3/4] x86/asm/entry/64: use smaller insns Denys Vlasenko
2015-03-25 18:03   ` Andy Lutomirski
2015-03-25 23:51   ` Linus Torvalds
2015-03-25 23:56     ` H. Peter Anvin
2015-03-26  0:05       ` Linus Torvalds
2015-03-26  0:12         ` H. Peter Anvin
2015-03-26  9:27         ` Borislav Petkov
2015-03-26  9:37           ` Ingo Molnar
2015-03-26  9:51             ` Borislav Petkov
2015-03-26 10:07             ` Denys Vlasenko
2015-03-26 10:25               ` Ingo Molnar
2015-03-26 10:53                 ` Denys Vlasenko
2015-03-26 10:25               ` Borislav Petkov
2015-03-26  9:30     ` Ingo Molnar
2015-03-27 11:47   ` [tip:x86/asm] x86/asm/entry/64: Use smaller instructions tip-bot for Denys Vlasenko
2015-03-25 17:18 ` [PATCH 4/4] x86/asm/entry/64: fix typo in comment Denys Vlasenko
2015-03-27 11:46 ` [tip:x86/asm] x86/asm/entry/64: Use better label name, fix comments tip-bot for Denys Vlasenko
2015-03-27 12:15   ` Borislav Petkov

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=20150325172922.GA7321@gmail.com \
    --to=mingo@kernel.org \
    --cc=ast@plumgrid.com \
    --cc=bp@alien8.de \
    --cc=dvlasenk@redhat.com \
    --cc=fweisbec@gmail.com \
    --cc=hpa@zytor.com \
    --cc=keescook@chromium.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=luto@amacapital.net \
    --cc=oleg@redhat.com \
    --cc=rostedt@goodmis.org \
    --cc=torvalds@linux-foundation.org \
    --cc=wad@chromium.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.