Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

at ee9dce44362b2d8132c32964656ab6dff7dfbc6a 65 lines 1.9 kB view raw
1/* SPDX-License-Identifier: GPL-2.0-or-later */ 2#ifndef _NET_HOTDATA_H 3#define _NET_HOTDATA_H 4 5#include <linux/llist.h> 6#include <linux/types.h> 7#include <linux/netdevice.h> 8#include <net/protocol.h> 9#ifdef CONFIG_RPS 10#include <net/rps-types.h> 11#endif 12 13struct skb_defer_node { 14 struct llist_head defer_list; 15 atomic_long_t defer_count; 16} ____cacheline_aligned_in_smp; 17 18/* Read mostly data used in network fast paths. */ 19struct net_hotdata { 20#if IS_ENABLED(CONFIG_INET) 21 struct packet_offload ip_packet_offload; 22 struct net_offload tcpv4_offload; 23 struct net_protocol tcp_protocol; 24 struct net_offload udpv4_offload; 25 struct net_protocol udp_protocol; 26 struct packet_offload ipv6_packet_offload; 27 struct net_offload tcpv6_offload; 28#if IS_ENABLED(CONFIG_IPV6) 29 struct inet6_protocol tcpv6_protocol; 30 struct inet6_protocol udpv6_protocol; 31#endif 32 struct net_offload udpv6_offload; 33#endif 34 struct list_head offload_base; 35 struct kmem_cache *skbuff_cache; 36 struct kmem_cache *skbuff_fclone_cache; 37 struct kmem_cache *skb_small_head_cache; 38#ifdef CONFIG_RPS 39 rps_tag_ptr rps_sock_flow_table; 40 u32 rps_cpu_mask; 41#endif 42 struct skb_defer_node __percpu *skb_defer_nodes; 43 int gro_normal_batch; 44 int netdev_budget; 45 int netdev_budget_usecs; 46 int tstamp_prequeue; 47 int max_backlog; 48 int qdisc_max_burst; 49 int dev_tx_weight; 50 int dev_rx_weight; 51 int sysctl_max_skb_frags; 52 int sysctl_skb_defer_max; 53 int sysctl_mem_pcpu_rsv; 54}; 55 56#define inet_ehash_secret net_hotdata.tcp_protocol.secret 57#define udp_ehash_secret net_hotdata.udp_protocol.secret 58#define inet6_ehash_secret net_hotdata.tcpv6_protocol.secret 59#define tcp_ipv6_hash_secret net_hotdata.tcpv6_offload.secret 60#define udp6_ehash_secret net_hotdata.udpv6_protocol.secret 61#define udp_ipv6_hash_secret net_hotdata.udpv6_offload.secret 62 63extern struct net_hotdata net_hotdata; 64 65#endif /* _NET_HOTDATA_H */