X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=datapath%2Fdp_notify.c;h=b6bb90ec7ec415ccd25a00b2b4b6a404c3cd9b8b;hb=d8ae4d672673cd72285eb405a96b4ac3590a7639;hp=4a16a93fdc5356d24620b94690b8476a16b03774;hpb=f2459fe7d91c4c325dfaa3ed18f56200b63ae27e;p=openvswitch diff --git a/datapath/dp_notify.c b/datapath/dp_notify.c index 4a16a93f..b6bb90ec 100644 --- a/datapath/dp_notify.c +++ b/datapath/dp_notify.c @@ -14,8 +14,8 @@ #include "vport-internal_dev.h" #include "vport-netdev.h" -static int dp_device_event(struct notifier_block *unused, unsigned long event, - void *ptr) +static int dp_device_event(struct notifier_block *unused, unsigned long event, + void *ptr) { struct net_device *dev = ptr; struct vport *vport; @@ -24,12 +24,11 @@ static int dp_device_event(struct notifier_block *unused, unsigned long event, if (is_internal_dev(dev)) vport = internal_dev_get_vport(dev); - else { + else vport = netdev_get_vport(dev); - if (!vport) - return NOTIFY_DONE; - } + if (!vport) + return NOTIFY_DONE; p = vport_get_dp_port(vport); @@ -54,11 +53,8 @@ static int dp_device_event(struct notifier_block *unused, unsigned long event, break; case NETDEV_CHANGEMTU: - if (!is_internal_dev(dev)) { - mutex_lock(&dp->mutex); + if (!is_internal_dev(dev)) set_internal_devs_mtu(dp); - mutex_unlock(&dp->mutex); - } break; } return NOTIFY_DONE;