From: Paolo Abeni <pabeni at redhat.com>
To: mptcp at lists.01.org
Subject: [MPTCP] [PATCH net-next 0/6] mptcp: avoid workqueue usage for data
Date: Fri, 27 Nov 2020 11:10:21 +0100 [thread overview]
Message-ID: <cover.1606413118.git.pabeni@redhat.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 1173 bytes --]
The current locking schema used to protect the MPTCP data-path
requires the usage of the MPTCP workqueue to process the incoming
data, depending on trylock result.
The above poses scalability limits and introduces random delays
in MPTCP-level acks.
With this series we use a single spinlock to protect the MPTCP
data-path, removing the need for workqueue and delayed ack usage.
This additionally reduces the number of atomic operations required
per packet and cleans-up considerably the poll/wake-up code.
Paolo Abeni (6):
mptcp: open code mptcp variant for lock_sock
mptcp: implement wmem reservation
mptcp: protect the rx path with the msk socket spinlock
mptcp: allocate TX skbs in msk context
mptcp: avoid a few atomic ops in the rx path
mptcp: use mptcp release_cb for delayed tasks
include/net/sock.h | 1 +
net/core/sock.c | 2 +-
net/mptcp/mptcp_diag.c | 2 +-
net/mptcp/options.c | 47 +--
net/mptcp/protocol.c | 733 ++++++++++++++++++++++++++++++-----------
net/mptcp/protocol.h | 34 +-
net/mptcp/subflow.c | 14 +-
7 files changed, 598 insertions(+), 235 deletions(-)
--
2.26.2
WARNING: multiple messages have this Message-ID (diff)
From: Paolo Abeni <pabeni@redhat.com>
To: netdev@vger.kernel.org
Cc: Jakub Kicinski <kuba@kernel.org>,
mptcp@lists.01.org, Eric Dumazet <edumazet@google.com>
Subject: [PATCH net-next 0/6] mptcp: avoid workqueue usage for data
Date: Fri, 27 Nov 2020 11:10:21 +0100 [thread overview]
Message-ID: <cover.1606413118.git.pabeni@redhat.com> (raw)
The current locking schema used to protect the MPTCP data-path
requires the usage of the MPTCP workqueue to process the incoming
data, depending on trylock result.
The above poses scalability limits and introduces random delays
in MPTCP-level acks.
With this series we use a single spinlock to protect the MPTCP
data-path, removing the need for workqueue and delayed ack usage.
This additionally reduces the number of atomic operations required
per packet and cleans-up considerably the poll/wake-up code.
Paolo Abeni (6):
mptcp: open code mptcp variant for lock_sock
mptcp: implement wmem reservation
mptcp: protect the rx path with the msk socket spinlock
mptcp: allocate TX skbs in msk context
mptcp: avoid a few atomic ops in the rx path
mptcp: use mptcp release_cb for delayed tasks
include/net/sock.h | 1 +
net/core/sock.c | 2 +-
net/mptcp/mptcp_diag.c | 2 +-
net/mptcp/options.c | 47 +--
net/mptcp/protocol.c | 733 ++++++++++++++++++++++++++++++-----------
net/mptcp/protocol.h | 34 +-
net/mptcp/subflow.c | 14 +-
7 files changed, 598 insertions(+), 235 deletions(-)
--
2.26.2
next reply other threads:[~2020-11-27 10:10 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-11-27 10:10 Paolo Abeni [this message]
2020-11-27 10:10 ` [PATCH net-next 0/6] mptcp: avoid workqueue usage for data Paolo Abeni
-- strict thread matches above, loose matches on Subject: below --
2020-11-27 10:10 [MPTCP] [PATCH net-next 1/6] mptcp: open code mptcp variant for lock_sock Paolo Abeni
2020-11-27 10:10 ` Paolo Abeni
2020-11-27 10:10 [MPTCP] [PATCH net-next 2/6] mptcp: implement wmem reservation Paolo Abeni
2020-11-27 10:10 ` Paolo Abeni
2020-11-27 10:10 [MPTCP] [PATCH net-next 3/6] mptcp: protect the rx path with the msk socket spinlock Paolo Abeni
2020-11-27 10:10 ` Paolo Abeni
2020-11-27 10:10 [MPTCP] [PATCH net-next 4/6] mptcp: allocate TX skbs in msk context Paolo Abeni
2020-11-27 10:10 ` Paolo Abeni
2020-11-27 10:10 [MPTCP] [PATCH net-next 5/6] mptcp: avoid a few atomic ops in the rx path Paolo Abeni
2020-11-27 10:10 ` Paolo Abeni
2020-11-27 10:10 [MPTCP] [PATCH net-next 6/6] mptcp: use mptcp release_cb for delayed tasks Paolo Abeni
2020-11-27 10:10 ` Paolo Abeni
2020-11-30 23:43 [MPTCP] Re: [PATCH net-next 1/6] mptcp: open code mptcp variant for lock_sock Mat Martineau
2020-11-30 23:43 ` Mat Martineau
2020-11-30 23:43 [MPTCP] Re: [PATCH net-next 2/6] mptcp: implement wmem reservation Mat Martineau
2020-11-30 23:43 ` Mat Martineau
2020-11-30 23:43 [MPTCP] Re: [PATCH net-next 3/6] mptcp: protect the rx path with the msk socket spinlock Mat Martineau
2020-11-30 23:43 ` Mat Martineau
2020-11-30 23:44 [MPTCP] Re: [PATCH net-next 4/6] mptcp: allocate TX skbs in msk context Mat Martineau
2020-11-30 23:44 ` Mat Martineau
2020-11-30 23:44 [MPTCP] Re: [PATCH net-next 5/6] mptcp: avoid a few atomic ops in the rx path Mat Martineau
2020-11-30 23:44 ` Mat Martineau
2020-11-30 23:45 [MPTCP] Re: [PATCH net-next 6/6] mptcp: use mptcp release_cb for delayed tasks Mat Martineau
2020-11-30 23:45 ` Mat Martineau
2020-12-01 2:34 [MPTCP] Re: [PATCH net-next 0/6] mptcp: avoid workqueue usage for data Jakub Kicinski
2020-12-01 2:34 ` Jakub Kicinski
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=cover.1606413118.git.pabeni@redhat.com \
--to=unknown@example.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 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.