X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;ds=sidebyside;f=datapath%2Fdp_notify.c;h=d5a274981f9ea077ab91b570e3fe35b838bc4c5e;hb=0367f1e40e05c85d67c516939265ce4fe8639be3;hp=f22d8b342f1b1b3d88d19132a2ad88d83feaec56;hpb=8fef8c7121222233075a03d57db7e0b48d5f6be5;p=sliver-openvswitch.git diff --git a/datapath/dp_notify.c b/datapath/dp_notify.c index f22d8b342..d5a274981 100644 --- a/datapath/dp_notify.c +++ b/datapath/dp_notify.c @@ -11,7 +11,7 @@ #include #include "datapath.h" - +#include "dp_dev.h" static int dp_device_event(struct notifier_block *unused, unsigned long event, void *ptr) @@ -20,7 +20,12 @@ static int dp_device_event(struct notifier_block *unused, unsigned long event, struct net_bridge_port *p; struct datapath *dp; - p = dev->br_port; + if (is_dp_dev(dev)) { + struct dp_dev *dp_dev = dp_dev_priv(dev); + p = dp_dev->dp->ports[dp_dev->port_no]; + } else { + p = dev->br_port; + } if (!p) return NOTIFY_DONE; dp = p->dp;