Set needed_headroom according to VF if VF needs a bigger
headroom.
Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
        dev_hold(vf_netdev);
        rcu_assign_pointer(net_device_ctx->vf_netdev, vf_netdev);
 
+       if (ndev->needed_headroom < vf_netdev->needed_headroom)
+               ndev->needed_headroom = vf_netdev->needed_headroom;
+
        vf_netdev->wanted_features = ndev->features;
        netdev_update_features(vf_netdev);
 
        RCU_INIT_POINTER(net_device_ctx->vf_netdev, NULL);
        dev_put(vf_netdev);
 
+       ndev->needed_headroom = RNDIS_AND_PPI_SIZE;
+
        return NOTIFY_OK;
 }