X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=datapath%2Fvport.c;h=a78ebfa3aa131bc86ddf0fbd6b4422e339fdb2ce;hb=5ca1ba484bd9ade5116a49cf241cb98219d7d696;hp=4934ac1f57f3e663af0a789c26700d43d9940958;hpb=70dbc259b83796688dcef8593eff5f74f7e36aa1;p=sliver-openvswitch.git diff --git a/datapath/vport.c b/datapath/vport.c index 4934ac1f5..a78ebfa3a 100644 --- a/datapath/vport.c +++ b/datapath/vport.c @@ -45,6 +45,7 @@ static const struct vport_ops *base_vport_ops_list[] = { &ovs_gre64_vport_ops, #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,26) &ovs_capwap_vport_ops, + &ovs_vxlan_vport_ops, #endif }; @@ -150,19 +151,6 @@ struct vport *ovs_vport_locate(struct net *net, const char *name) return NULL; } -static void release_vport(struct kobject *kobj) -{ - struct vport *p = container_of(kobj, struct vport, kobj); - kfree(p); -} - -static struct kobj_type brport_ktype = { -#ifdef CONFIG_SYSFS - .sysfs_ops = &ovs_brport_sysfs_ops, -#endif - .release = release_vport -}; - /** * ovs_vport_alloc - allocate and initialize new vport * @@ -192,15 +180,10 @@ struct vport *ovs_vport_alloc(int priv_size, const struct vport_ops *ops, vport->dp = parms->dp; vport->port_no = parms->port_no; - vport->upcall_pid = parms->upcall_pid; + vport->upcall_portid = parms->upcall_portid; vport->ops = ops; INIT_HLIST_NODE(&vport->dp_hash_node); - /* Initialize kobject for bridge. This will be added as - * /sys/class/net//brport later, if sysfs is enabled. */ - vport->kobj.kset = NULL; - kobject_init(&vport->kobj, &brport_ktype); - vport->percpu_stats = alloc_percpu(struct vport_percpu_stats); if (!vport->percpu_stats) { kfree(vport); @@ -225,8 +208,7 @@ struct vport *ovs_vport_alloc(int priv_size, const struct vport_ops *ops, void ovs_vport_free(struct vport *vport) { free_percpu(vport->percpu_stats); - - kobject_put(&vport->kobj); + kfree(vport); } /**