From: Vladimir Oltean <olteanv@gmail.com>
To: "David S. Miller" <davem@davemloft.net>,
Jakub Kicinski <kuba@kernel.org>,
netdev@vger.kernel.org
Cc: Florian Fainelli <f.fainelli@gmail.com>,
Andrew Lunn <andrew@lunn.ch>,
Vivien Didelot <vivien.didelot@gmail.com>,
Vladimir Oltean <olteanv@gmail.com>,
Kurt Kanzenbach <kurt@linutronix.de>,
Hauke Mehrtens <hauke@hauke-m.de>,
Woojung Huh <woojung.huh@microchip.com>,
Microchip Linux Driver Support <UNGLinuxDriver@microchip.com>,
Sean Wang <sean.wang@mediatek.com>,
Landen Chao <Landen.Chao@mediatek.com>,
Claudiu Manoil <claudiu.manoil@nxp.com>,
Alexandre Belloni <alexandre.belloni@bootlin.com>,
Linus Walleij <linus.walleij@linaro.org>,
Vadym Kochan <vkochan@marvell.com>,
Taras Chornyi <tchornyi@marvell.com>,
Jiri Pirko <jiri@nvidia.com>, Ido Schimmel <idosch@nvidia.com>,
Grygorii Strashko <grygorii.strashko@ti.com>,
Ioana Ciornei <ioana.ciornei@nxp.com>,
Ivan Vecera <ivecera@redhat.com>
Subject: [PATCH v2 net-next 05/10] net: dsa: remove the transactional logic from ageing time notifiers
Date: Wed, 6 Jan 2021 15:10:01 +0200 [thread overview]
Message-ID: <20210106131006.577312-6-olteanv@gmail.com> (raw)
In-Reply-To: <20210106131006.577312-1-olteanv@gmail.com>
From: Vladimir Oltean <vladimir.oltean@nxp.com>
Remove the shim introduced in DSA for offloading the bridge ageing time
from switchdev, by first checking whether the ageing time is within the
range limits requested by the driver.
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>
---
Changes in v2:
None.
net/dsa/dsa_priv.h | 1 -
net/dsa/port.c | 6 +-----
net/dsa/switch.c | 15 ++++++---------
3 files changed, 7 insertions(+), 15 deletions(-)
diff --git a/net/dsa/dsa_priv.h b/net/dsa/dsa_priv.h
index c626fed62541..5bd2327d519f 100644
--- a/net/dsa/dsa_priv.h
+++ b/net/dsa/dsa_priv.h
@@ -29,7 +29,6 @@ enum {
/* DSA_NOTIFIER_AGEING_TIME */
struct dsa_notifier_ageing_time_info {
- struct switchdev_trans *trans;
unsigned int ageing_time;
};
diff --git a/net/dsa/port.c b/net/dsa/port.c
index 14bf0053ae01..e59bf66c4c0d 100644
--- a/net/dsa/port.c
+++ b/net/dsa/port.c
@@ -310,21 +310,17 @@ int dsa_port_ageing_time(struct dsa_port *dp, clock_t ageing_clock)
unsigned long ageing_jiffies = clock_t_to_jiffies(ageing_clock);
unsigned int ageing_time = jiffies_to_msecs(ageing_jiffies);
struct dsa_notifier_ageing_time_info info;
- struct switchdev_trans trans;
int err;
info.ageing_time = ageing_time;
- info.trans = &trans;
- trans.ph_prepare = true;
err = dsa_port_notify(dp, DSA_NOTIFIER_AGEING_TIME, &info);
if (err)
return err;
dp->ageing_time = ageing_time;
- trans.ph_prepare = false;
- return dsa_port_notify(dp, DSA_NOTIFIER_AGEING_TIME, &info);
+ return 0;
}
int dsa_port_pre_bridge_flags(const struct dsa_port *dp, unsigned long flags)
diff --git a/net/dsa/switch.c b/net/dsa/switch.c
index 17979956d756..c6b3ac93bcc7 100644
--- a/net/dsa/switch.c
+++ b/net/dsa/switch.c
@@ -33,15 +33,12 @@ static int dsa_switch_ageing_time(struct dsa_switch *ds,
struct dsa_notifier_ageing_time_info *info)
{
unsigned int ageing_time = info->ageing_time;
- struct switchdev_trans *trans = info->trans;
-
- if (switchdev_trans_ph_prepare(trans)) {
- if (ds->ageing_time_min && ageing_time < ds->ageing_time_min)
- return -ERANGE;
- if (ds->ageing_time_max && ageing_time > ds->ageing_time_max)
- return -ERANGE;
- return 0;
- }
+
+ if (ds->ageing_time_min && ageing_time < ds->ageing_time_min)
+ return -ERANGE;
+
+ if (ds->ageing_time_max && ageing_time > ds->ageing_time_max)
+ return -ERANGE;
/* Program the fastest ageing time in case of multiple bridges */
ageing_time = dsa_switch_fastest_ageing_time(ds, ageing_time);
--
2.25.1
next prev parent reply other threads:[~2021-01-06 13:11 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-01-06 13:09 [PATCH v2 net-next 00/10] Get rid of the switchdev transactional model Vladimir Oltean
2021-01-06 13:09 ` [PATCH v2 net-next 01/10] net: switchdev: remove vid_begin -> vid_end range from VLAN objects Vladimir Oltean
2021-01-06 14:12 ` kernel test robot
2021-01-06 17:08 ` Vladimir Oltean
2021-01-06 17:08 ` Ido Schimmel
2021-01-06 17:15 ` Vladimir Oltean
2021-01-06 17:26 ` Ido Schimmel
2021-01-06 13:09 ` [PATCH v2 net-next 02/10] net: switchdev: remove the transaction structure from port object notifiers Vladimir Oltean
2021-01-06 17:42 ` Ido Schimmel
2021-01-06 13:09 ` [PATCH v2 net-next 03/10] net: switchdev: delete switchdev_port_obj_add_now Vladimir Oltean
2021-01-06 17:43 ` Ido Schimmel
2021-01-06 13:10 ` [PATCH v2 net-next 04/10] net: switchdev: remove the transaction structure from port attributes Vladimir Oltean
2021-01-06 17:47 ` Ido Schimmel
2021-01-06 13:10 ` Vladimir Oltean [this message]
2021-01-06 13:10 ` [PATCH v2 net-next 06/10] net: dsa: remove the transactional logic from MDB entries Vladimir Oltean
2021-01-06 13:10 ` [PATCH v2 net-next 07/10] net: dsa: remove the transactional logic from VLAN objects Vladimir Oltean
2021-01-06 13:10 ` [PATCH v2 net-next 08/10] net: dsa: remove obsolete comments about switchdev transactions Vladimir Oltean
2021-01-06 13:10 ` [PATCH v2 net-next 09/10] mlxsw: spectrum_switchdev: remove transactional logic for VLAN objects Vladimir Oltean
2021-01-06 18:10 ` Ido Schimmel
2021-01-06 13:10 ` [PATCH v2 net-next 10/10] net: switchdev: delete the transaction object Vladimir Oltean
2021-01-06 18:11 ` Ido Schimmel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210106131006.577312-6-olteanv@gmail.com \
--to=olteanv@gmail.com \
--cc=Landen.Chao@mediatek.com \
--cc=UNGLinuxDriver@microchip.com \
--cc=alexandre.belloni@bootlin.com \
--cc=andrew@lunn.ch \
--cc=claudiu.manoil@nxp.com \
--cc=davem@davemloft.net \
--cc=f.fainelli@gmail.com \
--cc=grygorii.strashko@ti.com \
--cc=hauke@hauke-m.de \
--cc=idosch@nvidia.com \
--cc=ioana.ciornei@nxp.com \
--cc=ivecera@redhat.com \
--cc=jiri@nvidia.com \
--cc=kuba@kernel.org \
--cc=kurt@linutronix.de \
--cc=linus.walleij@linaro.org \
--cc=netdev@vger.kernel.org \
--cc=sean.wang@mediatek.com \
--cc=tchornyi@marvell.com \
--cc=vivien.didelot@gmail.com \
--cc=vkochan@marvell.com \
--cc=woojung.huh@microchip.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).