summaryrefslogtreecommitdiffstats
path: root/net/core/rtnetlink.c
diff options
context:
space:
mode:
authorJakub Kicinski <kuba@kernel.org>2021-11-22 17:24:47 -0800
committerDavid S. Miller <davem@davemloft.net>2021-11-23 12:18:48 +0000
commit2106efda785b55a8957efed9a52dfa28ee0d7280 (patch)
tree12e5c191146b24614bae365a3fd3bc414c485607 /net/core/rtnetlink.c
parentc384cee14aa330ba2f5616fb821ba81f2ef42ccd (diff)
downloadlinux-2106efda785b55a8957efed9a52dfa28ee0d7280.tar.gz
linux-2106efda785b55a8957efed9a52dfa28ee0d7280.tar.bz2
linux-2106efda785b55a8957efed9a52dfa28ee0d7280.zip
net: remove .ndo_change_proto_down
.ndo_change_proto_down was added seemingly to enable out-of-tree implementations. Over 2.5yrs later we still have no real users upstream. Hardwire the generic implementation for now, we can revert once real users materialize. (rocker is a test vehicle, not a user.) We need to drop the optimization on the sysfs side, because unlike ndos priv_flags will be changed at runtime, so we'd need READ_ONCE/WRITE_ONCE everywhere.. Signed-off-by: Jakub Kicinski <kuba@kernel.org> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/core/rtnetlink.c')
-rw-r--r--net/core/rtnetlink.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/net/core/rtnetlink.c b/net/core/rtnetlink.c
index fd030e02f16d..6f25c0a8aebe 100644
--- a/net/core/rtnetlink.c
+++ b/net/core/rtnetlink.c
@@ -2539,13 +2539,12 @@ static int do_set_proto_down(struct net_device *dev,
struct netlink_ext_ack *extack)
{
struct nlattr *pdreason[IFLA_PROTO_DOWN_REASON_MAX + 1];
- const struct net_device_ops *ops = dev->netdev_ops;
unsigned long mask = 0;
u32 value;
bool proto_down;
int err;
- if (!ops->ndo_change_proto_down) {
+ if (!(dev->priv_flags & IFF_CHANGE_PROTO_DOWN)) {
NL_SET_ERR_MSG(extack, "Protodown not supported by device");
return -EOPNOTSUPP;
}