From: Vinicius Costa Gomes <vinicius.gomes@intel.com>
To: Vladimir Oltean <vladimir.oltean@nxp.com>, netdev@vger.kernel.org
Cc: Jamal Hadi Salim <jhs@mojatatu.com>,
Cong Wang <xiyou.wangcong@gmail.com>,
Jiri Pirko <jiri@resnulli.us>,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>, Paolo Abeni <pabeni@redhat.com>,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH net-next] net/sched: taprio: remove unnecessary taprio_list_lock
Date: Wed, 21 Sep 2022 16:09:55 -0700 [thread overview]
Message-ID: <87sfkkfhoc.fsf@intel.com> (raw)
In-Reply-To: <20220921095632.1379251-1-vladimir.oltean@nxp.com>
Vladimir Oltean <vladimir.oltean@nxp.com> writes:
> The 3 functions that want access to the taprio_list:
> taprio_dev_notifier(), taprio_destroy() and taprio_init() are all called
> with the rtnl_mutex held, therefore implicitly serialized with respect
> to each other. A spin lock serves no purpose.
>
> Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
> ---
> net/sched/sch_taprio.c | 7 -------
> 1 file changed, 7 deletions(-)
>
> diff --git a/net/sched/sch_taprio.c b/net/sched/sch_taprio.c
> index 1ab92968c1e3..163255e0cd77 100644
> --- a/net/sched/sch_taprio.c
> +++ b/net/sched/sch_taprio.c
> @@ -27,7 +27,6 @@
> #include <net/tcp.h>
>
> static LIST_HEAD(taprio_list);
> -static DEFINE_SPINLOCK(taprio_list_lock);
>
> #define TAPRIO_ALL_GATES_OPEN -1
>
> @@ -1082,7 +1081,6 @@ static int taprio_dev_notifier(struct notifier_block *nb, unsigned long event,
> if (event != NETDEV_UP && event != NETDEV_CHANGE)
> return NOTIFY_DONE;
>
> - spin_lock(&taprio_list_lock);
> list_for_each_entry(q, &taprio_list, taprio_list) {
> qdev = qdisc_dev(q->root);
> if (qdev == dev) {
Optional simplification: do you mind removing 'found' and moving the
call to taprio_set_picos_per_byte() here?
Anyway,
Acked-by: Vinicius Costa Gomes <vinicius.gomes@intel.com>
> @@ -1090,7 +1088,6 @@ static int taprio_dev_notifier(struct notifier_block *nb, unsigned long event,
> break;
> }
> }
> - spin_unlock(&taprio_list_lock);
>
> if (found)
> taprio_set_picos_per_byte(dev, q);
> @@ -1602,9 +1599,7 @@ static void taprio_destroy(struct Qdisc *sch)
> struct sched_gate_list *oper, *admin;
> unsigned int i;
>
> - spin_lock(&taprio_list_lock);
> list_del(&q->taprio_list);
> - spin_unlock(&taprio_list_lock);
>
> /* Note that taprio_reset() might not be called if an error
> * happens in qdisc_create(), after taprio_init() has been called.
> @@ -1653,9 +1648,7 @@ static int taprio_init(struct Qdisc *sch, struct nlattr *opt,
> q->clockid = -1;
> q->flags = TAPRIO_FLAGS_INVALID;
>
> - spin_lock(&taprio_list_lock);
> list_add(&q->taprio_list, &taprio_list);
> - spin_unlock(&taprio_list_lock);
>
> if (sch->parent != TC_H_ROOT) {
> NL_SET_ERR_MSG_MOD(extack, "Can only be attached as root qdisc");
> --
> 2.34.1
>
Cheers,
--
Vinicius
next prev parent reply other threads:[~2022-09-21 23:10 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-09-21 9:56 [PATCH net-next] net/sched: taprio: remove unnecessary taprio_list_lock Vladimir Oltean
2022-09-21 23:09 ` Vinicius Costa Gomes [this message]
2022-09-22 22:31 ` Vladimir Oltean
2022-09-23 0:40 ` patchwork-bot+netdevbpf
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=87sfkkfhoc.fsf@intel.com \
--to=vinicius.gomes@intel.com \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=jhs@mojatatu.com \
--cc=jiri@resnulli.us \
--cc=kuba@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=vladimir.oltean@nxp.com \
--cc=xiyou.wangcong@gmail.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.