diff options
author | Vladimir Oltean <vladimir.oltean@nxp.com> | 2021-01-09 03:01:52 +0300 |
---|---|---|
committer | Jakub Kicinski <kuba@kernel.org> | 2021-01-12 03:00:57 +0300 |
commit | a52b2da778fc93e01c4e5a744953f2ba1ec01c00 (patch) | |
tree | ceee4f81ffda53657b8e10aa23a8248fa416ef0f /include/net/dsa.h | |
parent | 77b61365ecefb2404326c924e215f1ed5a680285 (diff) | |
download | linux-a52b2da778fc93e01c4e5a744953f2ba1ec01c00.tar.xz |
net: dsa: remove the transactional logic from MDB entries
For many drivers, the .port_mdb_prepare callback was not a good opportunity
to avoid any error condition, and they would suppress errors found during
the actual commit phase.
Where a logical separation between the prepare and the commit phase
existed, the function that used to implement the .port_mdb_prepare
callback still exists, but now it is called directly from .port_mdb_add,
which was modified to return an int code.
Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Acked-by: Jiri Pirko <jiri@nvidia.com>
Reviewed-by: Kurt Kanzenbach <kurt@linutronix.de> # hellcreek
Reviewed-by: Linus Wallei <linus.walleij@linaro.org> # RTL8366
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'include/net/dsa.h')
-rw-r--r-- | include/net/dsa.h | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/include/net/dsa.h b/include/net/dsa.h index d0f043091969..b8c0550dfa74 100644 --- a/include/net/dsa.h +++ b/include/net/dsa.h @@ -585,10 +585,8 @@ struct dsa_switch_ops { /* * Multicast database */ - int (*port_mdb_prepare)(struct dsa_switch *ds, int port, + int (*port_mdb_add)(struct dsa_switch *ds, int port, const struct switchdev_obj_port_mdb *mdb); - void (*port_mdb_add)(struct dsa_switch *ds, int port, - const struct switchdev_obj_port_mdb *mdb); int (*port_mdb_del)(struct dsa_switch *ds, int port, const struct switchdev_obj_port_mdb *mdb); /* |