@@ -611,6 +615,8 @@ static const struct net_device_ops gtp_netdev_ops = {

 static void gtp_link_setup(struct net_device *dev)
 {
+       struct gtp_dev *gtp = netdev_priv(dev);
+
        dev->netdev_ops              = &gtp_netdev_ops;
        dev->needs_free_netdev       = true;

@@ -630,6 +636,8 @@ static void gtp_link_setup(struct net_device *dev)
                                  sizeof(struct iphdr) +
                                  sizeof(struct udphdr) +
                                  sizeof(struct gtp0_header);
+
+       gro_cells_init(&gtp->gro_cells, dev);
 }


Hi Tom

This needs a check in case the initialization failed and moved to ndo_init().
Eric spotted a similar bug in rmnet and vxlan.


--
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum,
a Linux Foundation Collaborative Project

Reply via email to