lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Fri, 25 Sep 2015 04:33:06 +0000 From: Premkumar Jonnala <pjonnala@...adcom.com> To: "sfeldma@...il.com" <sfeldma@...il.com>, "netdev@...r.kernel.org" <netdev@...r.kernel.org> CC: "jiri@...nulli.us" <jiri@...nulli.us>, "siva.mannem.lnx@...il.com" <siva.mannem.lnx@...il.com>, "stephen@...workplumber.org" <stephen@...workplumber.org>, "roopa@...ulusnetworks.com" <roopa@...ulusnetworks.com>, "andrew@...n.ch" <andrew@...n.ch>, "f.fainelli@...il.com" <f.fainelli@...il.com>, "vivien.didelot@...oirfairelinux.com" <vivien.didelot@...oirfairelinux.com> Subject: RE: [PATCH net-next 2/4] switchdev: skip over ports returning -EOPNOTSUPP when recursing ports Acked-by: Premkumar Jonnala > -----Original Message----- > From: sfeldma@...il.com [mailto:sfeldma@...il.com] > Sent: Friday, September 25, 2015 2:29 AM > To: netdev@...r.kernel.org > Cc: jiri@...nulli.us; siva.mannem.lnx@...il.com; Premkumar Jonnala; > stephen@...workplumber.org; roopa@...ulusnetworks.com; > andrew@...n.ch; f.fainelli@...il.com; vivien.didelot@...oirfairelinux.com > Subject: [PATCH net-next 2/4] switchdev: skip over ports returning - > EOPNOTSUPP when recursing ports > > From: Scott Feldman <sfeldma@...il.com> > > This allows us to recurse over all the ports, skipping over unsupporting > ports. Without the change, the recursion would stop at first unsupported > port. > > Signed-off-by: Scott Feldman <sfeldma@...il.com> > --- > include/net/switchdev.h | 1 + > net/switchdev/switchdev.c | 9 ++++++++- > 2 files changed, 9 insertions(+), 1 deletion(-) > > diff --git a/include/net/switchdev.h b/include/net/switchdev.h > index 54b2faa..22a6dbe 100644 > --- a/include/net/switchdev.h > +++ b/include/net/switchdev.h > @@ -15,6 +15,7 @@ > #include <linux/notifier.h> > > #define SWITCHDEV_F_NO_RECURSE BIT(0) > +#define SWITCHDEV_F_SKIP_EOPNOTSUPP BIT(1) > > enum switchdev_trans { > SWITCHDEV_TRANS_NONE, > diff --git a/net/switchdev/switchdev.c b/net/switchdev/switchdev.c > index fda38f8..5c30da0 100644 > --- a/net/switchdev/switchdev.c > +++ b/net/switchdev/switchdev.c > @@ -73,7 +73,7 @@ static int __switchdev_port_attr_set(struct net_device > *dev, > return ops->switchdev_port_attr_set(dev, attr); > > if (attr->flags & SWITCHDEV_F_NO_RECURSE) > - return err; > + goto done; > > /* Switch device port(s) may be stacked under > * bond/team/vlan dev, so recurse down to set attr on > @@ -82,10 +82,17 @@ static int __switchdev_port_attr_set(struct net_device > *dev, > > netdev_for_each_lower_dev(dev, lower_dev, iter) { > err = __switchdev_port_attr_set(lower_dev, attr); > + if (err == -EOPNOTSUPP && > + attr->flags & SWITCHDEV_F_SKIP_EOPNOTSUPP) > + continue; > if (err) > break; > } > > +done: > + if (err == -EOPNOTSUPP && attr->flags & > SWITCHDEV_F_SKIP_EOPNOTSUPP) > + err = 0; > + > return err; > } > > -- > 1.7.10.4 -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists