On 12/1/17 1:11 PM, Stephen Hemminger wrote:
> diff --git a/drivers/net/veth.c b/drivers/net/veth.c
> index f5438d0978ca..510c058ba227 100644
> --- a/drivers/net/veth.c
> +++ b/drivers/net/veth.c
> @@ -410,6 +410,26 @@ static int veth_newlink(struct net *src_net, struct 
> net_device *dev,
>       if (ifmp && (dev->ifindex != 0))
>               peer->ifindex = ifmp->ifi_index;
>  
> +     if (tbp[IFLA_GSO_MAX_SIZE]) {
> +             u32 max_size = nla_get_u32(tbp[IFLA_GSO_MAX_SIZE]);
> +
> +             if (max_size > GSO_MAX_SIZE)
> +                     return -EINVAL;
> +
> +             peer->gso_max_size = max_size;
> +             dev->gso_max_size = max_size;
> +     }
> +
> +     if (tbp[IFLA_GSO_MAX_SEGS]) {
> +             u32 max_segs = nla_get_u32(tbp[IFLA_GSO_MAX_SEGS]);
> +
> +             if (max_segs > GSO_MAX_SEGS)
> +                     return -EINVAL;
> +
> +             peer->gso_max_segs = max_segs;
> +             dev->gso_max_segs = max_segs;
> +     }
> +
>       err = register_netdevice(peer);
>       put_net(net);
>       net = NULL;
> 

Given the role of veth it seems odd to only allow these to be set at
create time. I think Solio is saying the same with respect to the Docker
use case.

Reply via email to