mirror of
https://github.com/torvalds/linux.git
synced 2024-11-21 19:41:42 +00:00
net-device: move gso_partial_features to net_device_read_tx
dev->gso_partial_features is read from tx fast path for GSO packets.
Move it to appropriate section to avoid a cache line miss.
Fixes: 43a71cd66b
("net-device: reorganize net_device fast path variables")
Signed-off-by: Eric Dumazet <edumazet@google.com>
Cc: Coco Li <lixiaoyan@google.com>
Cc: David Ahern <dsahern@kernel.org>
Reviewed-by: Simon Horman <horms@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
07938d774f
commit
993498e537
@ -38,7 +38,7 @@ netdev_features_t wanted_features
|
||||
netdev_features_t vlan_features
|
||||
netdev_features_t hw_enc_features - - netif_skb_features
|
||||
netdev_features_t mpls_features
|
||||
netdev_features_t gso_partial_features
|
||||
netdev_features_t gso_partial_features read_mostly gso_features_check
|
||||
unsigned_int min_mtu
|
||||
unsigned_int max_mtu
|
||||
unsigned_short type
|
||||
|
@ -2115,6 +2115,7 @@ struct net_device {
|
||||
const struct net_device_ops *netdev_ops;
|
||||
const struct header_ops *header_ops;
|
||||
struct netdev_queue *_tx;
|
||||
netdev_features_t gso_partial_features;
|
||||
unsigned int real_num_tx_queues;
|
||||
unsigned int gso_max_size;
|
||||
unsigned int gso_ipv4_max_size;
|
||||
@ -2211,7 +2212,6 @@ struct net_device {
|
||||
netdev_features_t vlan_features;
|
||||
netdev_features_t hw_enc_features;
|
||||
netdev_features_t mpls_features;
|
||||
netdev_features_t gso_partial_features;
|
||||
|
||||
unsigned int min_mtu;
|
||||
unsigned int max_mtu;
|
||||
|
@ -11629,6 +11629,7 @@ static void __init net_dev_struct_check(void)
|
||||
CACHELINE_ASSERT_GROUP_MEMBER(struct net_device, net_device_read_tx, gso_max_size);
|
||||
CACHELINE_ASSERT_GROUP_MEMBER(struct net_device, net_device_read_tx, gso_ipv4_max_size);
|
||||
CACHELINE_ASSERT_GROUP_MEMBER(struct net_device, net_device_read_tx, gso_max_segs);
|
||||
CACHELINE_ASSERT_GROUP_MEMBER(struct net_device, net_device_read_tx, gso_partial_features);
|
||||
CACHELINE_ASSERT_GROUP_MEMBER(struct net_device, net_device_read_tx, num_tc);
|
||||
CACHELINE_ASSERT_GROUP_MEMBER(struct net_device, net_device_read_tx, mtu);
|
||||
CACHELINE_ASSERT_GROUP_MEMBER(struct net_device, net_device_read_tx, needed_headroom);
|
||||
@ -11642,7 +11643,7 @@ static void __init net_dev_struct_check(void)
|
||||
#ifdef CONFIG_NET_XGRESS
|
||||
CACHELINE_ASSERT_GROUP_MEMBER(struct net_device, net_device_read_tx, tcx_egress);
|
||||
#endif
|
||||
CACHELINE_ASSERT_GROUP_SIZE(struct net_device, net_device_read_tx, 152);
|
||||
CACHELINE_ASSERT_GROUP_SIZE(struct net_device, net_device_read_tx, 160);
|
||||
|
||||
/* TXRX read-mostly hotpath */
|
||||
CACHELINE_ASSERT_GROUP_MEMBER(struct net_device, net_device_read_txrx, flags);
|
||||
|
Loading…
Reference in New Issue
Block a user