summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/net/dsa.h2
-rw-r--r--net/dsa/dsa2.c14
2 files changed, 6 insertions, 10 deletions
diff --git a/include/net/dsa.h b/include/net/dsa.h
index d777eac5694f..ee369670e20e 100644
--- a/include/net/dsa.h
+++ b/include/net/dsa.h
@@ -294,8 +294,6 @@ struct dsa_port {
u8 lag_tx_enabled:1;
- u8 devlink_port_setup:1;
-
/* Master state bits, valid only on CPU ports */
u8 master_admin_up:1;
u8 master_oper_up:1;
diff --git a/net/dsa/dsa2.c b/net/dsa/dsa2.c
index 747c0364fb0f..af0e2c0394ac 100644
--- a/net/dsa/dsa2.c
+++ b/net/dsa/dsa2.c
@@ -510,7 +510,6 @@ static int dsa_port_devlink_setup(struct dsa_port *dp)
ds->ops->port_teardown(ds, dp->index);
return err;
}
- dp->devlink_port_setup = true;
return 0;
}
@@ -520,13 +519,12 @@ static void dsa_port_devlink_teardown(struct dsa_port *dp)
struct devlink_port *dlp = &dp->devlink_port;
struct dsa_switch *ds = dp->ds;
- if (dp->devlink_port_setup) {
- devlink_port_unregister(dlp);
- if (ds->ops->port_teardown)
- ds->ops->port_teardown(ds, dp->index);
- devlink_port_fini(dlp);
- }
- dp->devlink_port_setup = false;
+ devlink_port_unregister(dlp);
+
+ if (ds->ops->port_teardown)
+ ds->ops->port_teardown(ds, dp->index);
+
+ devlink_port_fini(dlp);
}
static int dsa_port_setup(struct dsa_port *dp)