diff options
author | Amritha Nambiar <amritha.nambiar@intel.com> | 2018-06-30 07:27:02 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2018-07-02 03:06:24 +0300 |
commit | fc9bab24e9c654f62f3d411fc0b041be9e487e9d (patch) | |
tree | 6e66d1c3da3fc5717350f22cac6d4d4c8b4959ba /include | |
parent | c6345ce7d361dce1b5d02a2181ccb598c27fd7ae (diff) | |
download | linux-fc9bab24e9c654f62f3d411fc0b041be9e487e9d.tar.xz |
net: Enable Tx queue selection based on Rx queues
This patch adds support to pick Tx queue based on the Rx queue(s) map
configuration set by the admin through the sysfs attribute
for each Tx queue. If the user configuration for receive queue(s) map
does not apply, then the Tx queue selection falls back to CPU(s) map
based selection and finally to hashing.
Signed-off-by: Amritha Nambiar <amritha.nambiar@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include')
-rw-r--r-- | include/net/sock.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/include/net/sock.h b/include/net/sock.h index 2b097cc89727..2ed99bfa4595 100644 --- a/include/net/sock.h +++ b/include/net/sock.h @@ -1730,6 +1730,16 @@ static inline void sk_rx_queue_clear(struct sock *sk) #endif } +#ifdef CONFIG_XPS +static inline int sk_rx_queue_get(const struct sock *sk) +{ + if (sk && sk->sk_rx_queue_mapping != NO_QUEUE_MAPPING) + return sk->sk_rx_queue_mapping; + + return -1; +} +#endif + static inline void sk_set_socket(struct sock *sk, struct socket *sock) { sk_tx_queue_clear(sk); |