Message ID | 20220203044558.3039122-1-eric.dumazet@gmail.com (mailing list archive) |
---|---|
State | Accepted |
Commit | 5d57e130362aa5b1c8df980f2f31ce24d42ad1a3 |
Delegated to: | David Ahern |
Headers | show |
Series | [v2,iproute2] iplink: add gro_max_size attribute handling | expand |
Context | Check | Description |
---|---|---|
netdev/tree_selection | success | Not a local patch |
Hello: This patch was applied to iproute2/iproute2-next.git (main) by David Ahern <dsahern@kernel.org>: On Wed, 2 Feb 2022 20:45:58 -0800 you wrote: > From: Coco Li <lixiaoyan@google.com> > > Add the ability to display or change the gro_max_size attribute. > > ip link set dev eth1 gro_max_size 60000 > ip -d link show eth1 > 5: eth1: <BROADCAST,MULTICAST,SLAVE,UP,LOWER_UP> mtu 9198 qdisc mq master eth0 state UP mode DEFAULT group default qlen 1000 > link/ether bc:ae:c5:39:69:66 brd ff:ff:ff:ff:ff:ff promiscuity 0 minmtu 46 maxmtu 9600 > <...> gro_max_size 60000 > > [...] Here is the summary with links: - [v2,iproute2] iplink: add gro_max_size attribute handling https://git.kernel.org/pub/scm/network/iproute2/iproute2-next.git/commit/?id=5d57e130362a You are awesome, thank you!
diff --git a/ip/ipaddress.c b/ip/ipaddress.c index 4109d8bd2c43640bee40656c124ea6393d95a345..739b0b9c9f348141b0e51f6231b547385af00eae 100644 --- a/ip/ipaddress.c +++ b/ip/ipaddress.c @@ -1219,6 +1219,12 @@ int print_linkinfo(struct nlmsghdr *n, void *arg) "gso_max_segs %u ", rta_getattr_u32(tb[IFLA_GSO_MAX_SEGS])); + if (tb[IFLA_GRO_MAX_SIZE]) + print_uint(PRINT_ANY, + "gro_max_size", + "gro_max_size %u ", + rta_getattr_u32(tb[IFLA_GRO_MAX_SIZE])); + if (tb[IFLA_PHYS_PORT_NAME]) print_string(PRINT_ANY, "phys_port_name", diff --git a/ip/iplink.c b/ip/iplink.c index a3ea775d2b23c47916e9554b8615d430a58c6a55..c0a3a9ad3e629986ee2da0ee80eaf758f98aee5f 100644 --- a/ip/iplink.c +++ b/ip/iplink.c @@ -118,6 +118,7 @@ void iplink_usage(void) " [ protodown { on | off } ]\n" " [ protodown_reason PREASON { on | off } ]\n" " [ gso_max_size BYTES ] | [ gso_max_segs PACKETS ]\n" + " [ gro_max_size BYTES ]\n" "\n" " ip link show [ DEVICE | group GROUP ] [up] [master DEV] [vrf NAME] [type TYPE]\n" " [nomaster]\n" @@ -942,6 +943,15 @@ int iplink_parse(int argc, char **argv, struct iplink_req *req, char **type) *argv); addattr32(&req->n, sizeof(*req), IFLA_GSO_MAX_SEGS, max_segs); + } else if (strcmp(*argv, "gro_max_size") == 0) { + unsigned int max_size; + + NEXT_ARG(); + if (get_unsigned(&max_size, *argv, 0)) + invarg("Invalid \"gro_max_size\" value\n", + *argv); + addattr32(&req->n, sizeof(*req), + IFLA_GRO_MAX_SIZE, max_size); } else if (strcmp(*argv, "parentdev") == 0) { NEXT_ARG(); addattr_l(&req->n, sizeof(*req), IFLA_PARENT_DEV_NAME,