daeee8ce8084e885984716113779750ca7b72147
[linux-2.6-microblaze.git] / include / net / hotdata.h
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 #ifndef _NET_HOTDATA_H
3 #define _NET_HOTDATA_H
4
5 #include <linux/types.h>
6 #include <linux/netdevice.h>
7 #include <net/protocol.h>
8
9 /* Read mostly data used in network fast paths. */
10 struct net_hotdata {
11 #if IS_ENABLED(CONFIG_INET)
12         struct packet_offload   ip_packet_offload;
13         struct net_offload      tcpv4_offload;
14         struct net_offload      udpv4_offload;
15         struct packet_offload   ipv6_packet_offload;
16         struct net_offload      tcpv6_offload;
17         struct net_offload      udpv6_offload;
18 #endif
19         struct list_head        offload_base;
20         struct list_head        ptype_all;
21         struct kmem_cache       *skbuff_cache;
22         struct kmem_cache       *skbuff_fclone_cache;
23         struct kmem_cache       *skb_small_head_cache;
24         int                     gro_normal_batch;
25         int                     netdev_budget;
26         int                     netdev_budget_usecs;
27         int                     tstamp_prequeue;
28         int                     max_backlog;
29         int                     dev_tx_weight;
30         int                     dev_rx_weight;
31 };
32
33 extern struct net_hotdata net_hotdata;
34
35 #endif /* _NET_HOTDATA_H */