-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'net: struct netdev_rx_queue and xdp.h reshuffling'
Jakub Kicinski says: ==================== While poking at struct netdev_rx_queue I got annoyed by the huge rebuild times. I split it out from netdevice.h and then realized that it was the main reason we included xdp.h in there. So I removed that dependency as well. This gives us very pleasant build times for both xdp.h and struct netdev_rx_queue changes. I'm sending this for bpf-next because I think it'd be easiest if it goes in there, and then bpf-next gets flushed soon after? I can also make a branch on merge-base for net-next and bpf-next.. v2: - build fix - reorder some includes v1: https://lore.kernel.org/all/20230802003246.2153774-1-kuba@kernel.org/ ==================== Signed-off-by: Martin KaFai Lau <martin.lau@kernel.org>
- Loading branch information
Showing
31 changed files
with
110 additions
and
72 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -4,6 +4,8 @@ | |
#ifndef _MANA_H | ||
#define _MANA_H | ||
|
||
#include <net/xdp.h> | ||
|
||
#include "gdma.h" | ||
#include "hw_channel.h" | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,53 @@ | ||
/* SPDX-License-Identifier: GPL-2.0 */ | ||
#ifndef _LINUX_NETDEV_RX_QUEUE_H | ||
#define _LINUX_NETDEV_RX_QUEUE_H | ||
|
||
#include <linux/kobject.h> | ||
#include <linux/netdevice.h> | ||
#include <linux/sysfs.h> | ||
#include <net/xdp.h> | ||
|
||
/* This structure contains an instance of an RX queue. */ | ||
struct netdev_rx_queue { | ||
struct xdp_rxq_info xdp_rxq; | ||
#ifdef CONFIG_RPS | ||
struct rps_map __rcu *rps_map; | ||
struct rps_dev_flow_table __rcu *rps_flow_table; | ||
#endif | ||
struct kobject kobj; | ||
struct net_device *dev; | ||
netdevice_tracker dev_tracker; | ||
|
||
#ifdef CONFIG_XDP_SOCKETS | ||
struct xsk_buff_pool *pool; | ||
#endif | ||
} ____cacheline_aligned_in_smp; | ||
|
||
/* | ||
* RX queue sysfs structures and functions. | ||
*/ | ||
struct rx_queue_attribute { | ||
struct attribute attr; | ||
ssize_t (*show)(struct netdev_rx_queue *queue, char *buf); | ||
ssize_t (*store)(struct netdev_rx_queue *queue, | ||
const char *buf, size_t len); | ||
}; | ||
|
||
static inline struct netdev_rx_queue * | ||
__netif_get_rx_queue(struct net_device *dev, unsigned int rxq) | ||
{ | ||
return dev->_rx + rxq; | ||
} | ||
|
||
#ifdef CONFIG_SYSFS | ||
static inline unsigned int | ||
get_netdev_rx_queue_index(struct netdev_rx_queue *queue) | ||
{ | ||
struct net_device *dev = queue->dev; | ||
int index = queue - dev->_rx; | ||
|
||
BUG_ON(index >= dev->num_rx_queues); | ||
return index; | ||
} | ||
#endif | ||
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.