linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jakub Kicinski <jakub.kicinski@netronome.com>
To: peterz@infradead.org, tglx@linutronix.de
Cc: ard.biesheuvel@linaro.org, yamada.masahiro@socionext.com,
	mingo@kernel.org, linux-kernel@vger.kernel.org,
	netdev@vger.kernel.org, oss-drivers@netronome.com,
	alexei.starovoitov@gmail.com,
	Jakub Kicinski <jakub.kicinski@netronome.com>
Subject: [PATCH 0/3] locking/static_key: improve rate limited labels
Date: Fri, 29 Mar 2019 17:08:51 -0700	[thread overview]
Message-ID: <20190330000854.30142-1-jakub.kicinski@netronome.com> (raw)

Hi!

This will be used to fix the static branch disabling in the TLS
code.  The net/tls/ code should be using the deferred static
branch type, because unprivileged users can flip the branch
on and off quite easily with CONFIG_TLS_DEVICE=y.

Second of all we shouldn't take the jump label locks from
the RX path, when the socket is destroyed.  This can be avoided
with some slight code refactoring in deferred static_key as
it already runs from a workqueue.

This the series (and a simple tls patch which makes use of it)
applied opening 0.5M TLS connections to localhost (just calling
setsockopt, no data exchange) goes down from 37.9s to 12.4s.

Jakub Kicinski (3):
  locking/static_key: add support for deferred static branches
  locking/static_key: factor out the fast path of static_key_slow_dec()
  locking/static_key: don't take sleeping locks in
    __static_key_slow_dec_deferred()

 include/linux/jump_label_ratelimit.h | 64 ++++++++++++++++++++++++++--
 kernel/jump_label.c                  | 64 +++++++++++++++-------------
 2 files changed, 95 insertions(+), 33 deletions(-)

-- 
2.21.0


             reply	other threads:[~2019-03-30  0:09 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-03-30  0:08 Jakub Kicinski [this message]
2019-03-30  0:08 ` [PATCH 1/3] locking/static_key: add support for deferred static branches Jakub Kicinski
2019-04-29  6:40   ` [tip:locking/core] locking/static_key: Add " tip-bot for Jakub Kicinski
2019-03-30  0:08 ` [PATCH 2/3] locking/static_key: factor out the fast path of static_key_slow_dec() Jakub Kicinski
2019-04-29  6:41   ` [tip:locking/core] locking/static_key: Factor " tip-bot for Jakub Kicinski
2019-03-30  0:08 ` [PATCH 3/3] locking/static_key: don't take sleeping locks in __static_key_slow_dec_deferred() Jakub Kicinski
2019-04-29  6:41   ` [tip:locking/core] locking/static_key: Don't " tip-bot for Jakub Kicinski
2019-04-01 18:21 ` [PATCH 0/3] locking/static_key: improve rate limited labels Jakub Kicinski
2019-04-02  7:03   ` Peter Zijlstra
2019-04-04 10:29   ` Peter Zijlstra
2019-04-16 16:33     ` Jakub Kicinski
2019-04-16 17:38       ` Peter Zijlstra

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=20190330000854.30142-1-jakub.kicinski@netronome.com \
    --to=jakub.kicinski@netronome.com \
    --cc=alexei.starovoitov@gmail.com \
    --cc=ard.biesheuvel@linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=oss-drivers@netronome.com \
    --cc=peterz@infradead.org \
    --cc=tglx@linutronix.de \
    --cc=yamada.masahiro@socionext.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).