On Tue, Nov 15, 2016 at 11:16:35AM +0100, Sabrina Dubroca wrote:
> rtnl_xdp_size() only considers the size of the actual payload attribute,
> and misses the space taken by the attribute used for nesting (IFLA_XDP).
> 
> Fixes: d1fdd9138682 ("rtnl: add option for setting link xdp prog")
> Signed-off-by: Sabrina Dubroca <s...@queasysnail.net>
Reviewed-by: Brenden Blanco <bbla...@plumgrid.com>
> ---
>  net/core/rtnetlink.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/net/core/rtnetlink.c b/net/core/rtnetlink.c
> index 5aeb61aadd32..5b4c3ba507d0 100644
> --- a/net/core/rtnetlink.c
> +++ b/net/core/rtnetlink.c
> @@ -901,7 +901,8 @@ static size_t rtnl_port_size(const struct net_device *dev,
>  
>  static size_t rtnl_xdp_size(const struct net_device *dev)
>  {
> -     size_t xdp_size = nla_total_size(1);    /* XDP_ATTACHED */
> +     size_t xdp_size = nla_total_size(0) +   /* nest IFLA_XDP */
> +                       nla_total_size(1);    /* XDP_ATTACHED */
>  
>       if (!dev->netdev_ops->ndo_xdp)
>               return 0;
> -- 
> 2.10.2
> 

Reply via email to