X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=datapath%2Fdp_notify.c;h=d5a274981f9ea077ab91b570e3fe35b838bc4c5e;hb=67a78abeeae1a726d46ae475c5834513c7fe291e;hp=f22d8b342f1b1b3d88d19132a2ad88d83feaec56;hpb=0515ceb3e82ecc6160a141017c20ca26ec1a7a5f;p=openvswitch diff --git a/datapath/dp_notify.c b/datapath/dp_notify.c index f22d8b34..d5a27498 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;