datapath: dp_sysfs_add_dp() needs RTNL lock.
[openvswitch] / datapath / vport-gre.c
index be8fb5343d2f1542b000bddd6a2070c10af35071..f6996ed4004e4e2b32eb4669989a7ab9a018cb35 100644 (file)
@@ -332,7 +332,7 @@ error:
        return 0;
 }
 
-struct tnl_ops gre_tnl_ops = {
+static const struct tnl_ops gre_tnl_ops = {
        .tunnel_type    = TNL_T_PROTO_GRE,
        .ipproto        = IPPROTO_GRE,
        .hdr_len        = gre_hdr_len,
@@ -340,12 +340,12 @@ struct tnl_ops gre_tnl_ops = {
        .update_header  = gre_update_header,
 };
 
-static struct vport *gre_create(const char *name, const void __user *config)
+static struct vport *gre_create(const struct vport_parms *parms)
 {
-       return tnl_create(name, config, &gre_vport_ops, &gre_tnl_ops);
+       return tnl_create(parms, &gre_vport_ops, &gre_tnl_ops);
 }
 
-static struct net_protocol gre_protocol_handlers = {
+static const struct net_protocol gre_protocol_handlers = {
        .handler        =       gre_rcv,
        .err_handler    =       gre_err,
 };
@@ -366,7 +366,7 @@ static void gre_exit(void)
        inet_del_protocol(&gre_protocol_handlers, IPPROTO_GRE);
 }
 
-struct vport_ops gre_vport_ops = {
+const struct vport_ops gre_vport_ops = {
        .type           = "gre",
        .flags          = VPORT_F_GEN_STATS | VPORT_F_TUN_ID,
        .init           = gre_init,