netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Amritha Nambiar <amritha.nambiar@intel.com>
To: netdev@vger.kernel.org, davem@davemloft.net
Cc: alexander.h.duyck@intel.com, amritha.nambiar@intel.com,
	sridhar.samudrala@intel.com, edumazet@google.com,
	hannes@stressinduktion.org, tom@herbertland.com
Subject: [net-next PATCH v2 0/4] Symmetric queue selection using XPS for Rx queues
Date: Tue, 15 May 2018 18:26:37 -0700	[thread overview]
Message-ID: <152643356116.4991.7215767041139726872.stgit@anamdev.jf.intel.com> (raw)

This patch series implements support for Tx queue selection based on
Rx queue(s) map. This is done by configuring Rx queue(s) map per Tx-queue
using sysfs attribute. If the user configuration for Rx queues does
not apply, then the Tx queue selection falls back to XPS using CPUs and
finally to hashing.

XPS is refactored to support Tx queue selection based on either the
CPUs map or the Rx-queues map. The config option CONFIG_XPS needs to be
enabled. By default no receive queues are configured for the Tx queue.

- /sys/class/net/<dev>/queues/tx-*/xps_rxqs

This is to enable sending packets on the same Tx-Rx queue pair as this
is useful for busy polling multi-threaded workloads where it is not
possible to pin the threads to a CPU. This is a rework of Sridhar's
patch for symmetric queueing via socket option:
https://www.spinics.net/lists/netdev/msg453106.html

v2:
- Added documentation in networking/scaling.txt
- Added a simple routine to replace multiple ifdef blocks.

---

Amritha Nambiar (4):
      net: Refactor XPS for CPUs and Rx queues
      net: Enable Tx queue selection based on Rx queues
      net-sysfs: Add interface for Rx queue map per Tx queue
      Documentation: Add explanation for XPS using Rx-queue map


 Documentation/networking/scaling.txt |   58 +++++++-
 include/linux/cpumask.h              |   11 +-
 include/linux/netdevice.h            |   72 ++++++++++
 include/net/sock.h                   |   18 +++
 net/core/dev.c                       |  242 +++++++++++++++++++++++-----------
 net/core/net-sysfs.c                 |   85 ++++++++++++
 net/core/sock.c                      |    5 +
 net/ipv4/tcp_input.c                 |    7 +
 net/ipv4/tcp_ipv4.c                  |    1 
 net/ipv4/tcp_minisocks.c             |    1 
 10 files changed, 404 insertions(+), 96 deletions(-)

             reply	other threads:[~2018-05-16  1:30 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-05-16  1:26 Amritha Nambiar [this message]
2018-05-16  1:26 ` [net-next PATCH v2 1/4] net: Refactor XPS for CPUs and Rx queues Amritha Nambiar
2018-05-17 18:38   ` David Miller
2018-05-17 18:47     ` Nambiar, Amritha
2018-05-18  4:08   ` Tom Herbert
2018-05-23 18:59     ` Nambiar, Amritha
2018-05-21  5:38   ` [lkp-robot] [net] 3416099d53: net/core/dev.c:#suspicious_rcu_dereference_protected()usage kernel test robot
2018-05-16  1:26 ` [net-next PATCH v2 2/4] net: Enable Tx queue selection based on Rx queues Amritha Nambiar
2018-05-18  4:03   ` Tom Herbert
2018-05-19 20:13     ` Willem de Bruijn
2018-05-19 20:27       ` Willem de Bruijn
2018-05-21 14:51         ` Tom Herbert
2018-05-21 15:12           ` Willem de Bruijn
2018-05-22 14:09             ` Tom Herbert
2018-05-23 19:31               ` Nambiar, Amritha
2018-05-23 19:19       ` Nambiar, Amritha
2018-05-16  1:26 ` [net-next PATCH v2 3/4] net-sysfs: Add interface for Rx queue map per Tx queue Amritha Nambiar
2018-05-17 19:05   ` Florian Fainelli
2018-05-17 22:43     ` Nambiar, Amritha
2018-05-16  1:27 ` [net-next PATCH v2 4/4] Documentation: Add explanation for XPS using Rx-queue map Amritha Nambiar
2018-05-18  4:11 ` [net-next PATCH v2 0/4] Symmetric queue selection using XPS for Rx queues Tom Herbert

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=152643356116.4991.7215767041139726872.stgit@anamdev.jf.intel.com \
    --to=amritha.nambiar@intel.com \
    --cc=alexander.h.duyck@intel.com \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=hannes@stressinduktion.org \
    --cc=netdev@vger.kernel.org \
    --cc=sridhar.samudrala@intel.com \
    --cc=tom@herbertland.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).