/linux/net/core/ |
H A D | gro.c | 2 #include <net/gro.h> 253 static void gro_complete(struct gro_node *gro, struct sk_buff *skb) in gro_complete() argument 286 gro_normal_one(gro, skb, NAPI_GRO_CB(skb)->count); in gro_complete() 289 static void __gro_flush_chain(struct gro_node *gro, u32 index, bool flush_old) in __gro_flush_chain() argument 291 struct list_head *head = &gro->hash[index].list; in __gro_flush_chain() 298 gro_complete(gro, skb); in __gro_flush_chain() 299 gro->hash[index].count--; in __gro_flush_chain() 302 if (!gro->hash[index].count) in __gro_flush_chain() 303 __clear_bit(index, &gro->bitmask); in __gro_flush_chain() 307 * gro 311 __gro_flush(struct gro_node * gro,bool flush_old) __gro_flush() argument 441 gro_flush_oldest(struct gro_node * gro,struct list_head * head) gro_flush_oldest() argument 460 dev_gro_receive(struct gro_node * gro,struct sk_buff * skb) dev_gro_receive() argument 596 gro_skb_finish(struct gro_node * gro,struct sk_buff * skb,gro_result_t ret) gro_skb_finish() argument 622 gro_receive_skb(struct gro_node * gro,struct sk_buff * skb) gro_receive_skb() argument 795 gro_init(struct gro_node * gro) gro_init() argument 809 gro_cleanup(struct gro_node * gro) gro_cleanup() argument [all...] |
H A D | Makefile | 15 fib_notifier.o xdp.o flow_offload.o gro.o \
|
H A D | dev.c | 6565 if (n->gro.bitmask) in napi_complete_done() 6581 gro_flush_normal(&n->gro, !!timeout); in napi_complete_done() 6645 gro_normal_list(&napi->gro); in __busy_poll_stop() 6651 gro_flush_normal(&napi->gro, HZ >= 1000); in __busy_poll_stop() 6759 gro_normal_list(&napi->gro); in __napi_busy_loop() 6859 napi->gro.cached_napi_id = napi_id; in __napi_hash_add_with_id() 7333 gro_init(&napi->gro); in netif_napi_add_weight_locked() 7471 gro_cleanup(&napi->gro); in __netif_napi_del_locked() 7531 gro_flush_normal(&n->gro, HZ >= 1000); in __napi_poll() 12901 gro_init(&sd->backlog.gro); in net_dev_init()
|
/linux/include/net/ |
H A D | gro.h | 53 /* portion of the cb set to zero at every gro iteration */ 512 void __gro_flush(struct gro_node *gro, bool flush_old); 514 static inline void gro_flush(struct gro_node *gro, bool flush_old) in gro_flush() argument 516 if (!gro->bitmask) in gro_flush() 519 __gro_flush(gro, flush_old); in gro_flush() 524 gro_flush(&napi->gro, flush_old); in napi_gro_flush() 528 static inline void gro_normal_list(struct gro_node *gro) in gro_normal_list() argument 530 if (!gro->rx_count) in gro_normal_list() 532 netif_receive_skb_list_internal(&gro->rx_list); in gro_normal_list() 533 INIT_LIST_HEAD(&gro in gro_normal_list() 537 gro_flush_normal(struct gro_node * gro,bool flush_old) gro_flush_normal() argument 546 gro_normal_one(struct gro_node * gro,struct sk_buff * skb,int segs) gro_normal_one() argument [all...] |
H A D | busy_poll.h | 131 const struct gro_node *gro) in __skb_mark_napi_id() argument 138 skb->napi_id = gro->cached_napi_id; in __skb_mark_napi_id() 145 __skb_mark_napi_id(skb, &napi->gro); in skb_mark_napi_id()
|
/linux/tools/testing/selftests/net/ |
H A D | gro.sh | 26 ip netns exec $server_ns ./gro "${ARGS[@]}" "--rx" "--iface" "server" \ 30 ip netns exec $client_ns ./gro "${ARGS[@]}" "--iface" "client" \
|
H A D | udpgro_fwd.sh | 221 ip netns exec $NS_DST ethtool -K veth$DST rx-gro-list on 232 ip netns exec $NS_DST ethtool -K veth$DST rx-udp-gro-forwarding on 240 ip netns exec $NS_DST ethtool -K veth$DST rx-udp-gro-forwarding on 246 ip netns exec $NS_DST ethtool -K veth$DST rx-gro-list on 254 ip netns exec $NS_DST ethtool -K veth$DST rx-udp-gro-forwarding on
|
H A D | .gitignore | 10 gro
|
H A D | skf_net_off.sh | 18 ip netns exec $NS ethtool -K tap1 gro off
|
H A D | Makefile | 33 TEST_PROGS += gro.sh 79 TEST_GEN_FILES += gro
|
H A D | big_tcp.sh | 138 ip net exec $ROUTER_NS ethtool -K link1 gro $gw_gro 140 ip net exec $SERVER_NS ethtool -K link3 gro $ser_gro
|
H A D | udpgro_frglist.sh | 40 ip netns exec "${PEER_NS}" ethtool -K veth1 rx-gro-list on 66 echo "udp gso and gro - over veth touching data"
|
H A D | udpgro.sh | 39 ip netns exec "${PEER_NS}" ethtool -K veth1 gro on
|
/linux/tools/testing/selftests/bpf/ |
H A D | test_xdp_features.sh | 26 ethtool -K v1 gro on 28 ip netns exec ${NS} ethtool -K v0 gro on
|
/linux/kernel/bpf/ |
H A D | cpumap.c | 37 #include <net/gro.h> 71 struct gro_node gro; member 285 gro_flush_normal(&rcpu->gro, !empty && HZ >= 1000); in cpu_map_gro_flush() 391 gro_receive_skb(&rcpu->gro, skbs[i]); in cpu_map_kthread_run() 469 gro_init(&rcpu->gro); in __cpu_map_entry_alloc() 498 gro_cleanup(&rcpu->gro); in __cpu_map_entry_alloc() 528 gro_cleanup(&rcpu->gro); in __cpu_map_entry_free()
|
/linux/Documentation/translations/zh_CN/networking/ |
H A D | napi.rst | 190 来命名,即 ``gro-flush-timeout`` 和 ``napi-defer-hard-irqs``。 204 "gro-flush-timeout": 11111}'
|
/linux/drivers/net/wireless/ath/wil6210/ |
H A D | txrx.h | 681 struct wil_net_stats *stats, bool gro);
|
H A D | txrx.c | 894 struct wil_net_stats *stats, bool gro) in wil_netif_rx() argument 958 if (gro) in wil_netif_rx()
|
/linux/arch/um/drivers/ |
H A D | vector_kern.c | 192 char *gro = uml_vector_fetch_arg(def, "gro"); in get_req_size() local 195 if (gro != NULL) { in get_req_size() 196 if (kstrtoul(gro, 10, &result) == 0) { in get_req_size()
|
/linux/Documentation/networking/ |
H A D | netdev-features.rst | 162 * rx-gro-hw
|
H A D | napi.rst | 229 ``gro-flush-timeout`` and ``napi-defer-hard-irqs``. 244 "gro-flush-timeout": 11111}'
|
/linux/include/linux/ |
H A D | netdevice.h | 400 struct gro_node gro; member 4162 gro_result_t gro_receive_skb(struct gro_node *gro, struct sk_buff *skb); 4167 return gro_receive_skb(&napi->gro, skb); in napi_gro_receive()
|
/linux/drivers/net/ethernet/broadcom/bnxt/ |
H A D | bnxt.c | 1845 bool gro; in bnxt_tpa_end() local 1869 gro = !!(bp->flags & BNXT_FLAG_GRO); in bnxt_tpa_end() 1882 gro = !!TPA_END_GRO(tpa_end); in bnxt_tpa_end() 1974 if (gro) in bnxt_tpa_end()
|