.fill_info      = bareudp_fill_info,
 };
 
-struct net_device *bareudp_dev_create(struct net *net, const char *name,
-                                     u8 name_assign_type,
-                                     struct bareudp_conf *conf)
-{
-       struct nlattr *tb[IFLA_MAX + 1];
-       struct net_device *dev;
-       int err;
-
-       memset(tb, 0, sizeof(tb));
-       dev = rtnl_create_link(net, name, name_assign_type,
-                              &bareudp_link_ops, tb, NULL);
-       if (IS_ERR(dev))
-               return dev;
-
-       err = bareudp_configure(net, dev, conf);
-       if (err) {
-               free_netdev(dev);
-               return ERR_PTR(err);
-       }
-       err = dev_set_mtu(dev, IP_MAX_MTU - BAREUDP_BASE_HLEN);
-       if (err)
-               goto err;
-
-       err = rtnl_configure_link(dev, NULL);
-       if (err < 0)
-               goto err;
-
-       return dev;
-err:
-       bareudp_dellink(dev, NULL);
-       return ERR_PTR(err);
-}
-EXPORT_SYMBOL_GPL(bareudp_dev_create);
-
 static __net_init int bareudp_init_net(struct net *net)
 {
        struct bareudp_net *bn = net_generic(net, bareudp_net_id);
 
        bool multi_proto_mode;
 };
 
-struct net_device *bareudp_dev_create(struct net *net, const char *name,
-                                     u8 name_assign_type,
-                                     struct bareudp_conf *info);
-
 static inline bool netif_is_bareudp(const struct net_device *dev)
 {
        return dev->rtnl_link_ops &&