From: Jakub Kicinski <kuba@kernel.org>
To: Siddharth Vadapalli <s-vadapalli@ti.com>
Cc: <andrew+netdev@lunn.ch>, <davem@davemloft.net>,
<edumazet@google.com>, <pabeni@redhat.com>, <danishanwar@ti.com>,
<rogerq@kernel.org>, <horms@kernel.org>, <mwalle@kernel.org>,
<nm@ti.com>, <v-singh1@ti.com>, <vadim.fedorenko@linux.dev>,
<matthias.schiffer@ew.tq-group.com>, <vigneshr@ti.com>,
<m-malladi@ti.com>, <jacob.e.keller@intel.com>,
<stable@vger.kernel.org>, <netdev@vger.kernel.org>,
<linux-kernel@vger.kernel.org>,
<linux-arm-kernel@lists.infradead.org>, <srk@ti.com>
Subject: Re: [PATCH net 1/3] net: ethernet: ti: am65-cpsw-nuss: set irq_disabled after disabling RX IRQ
Date: Tue, 24 Feb 2026 15:54:32 -0800 [thread overview]
Message-ID: <20260224155432.15ded392@kernel.org> (raw)
In-Reply-To: <c9b1c5c2c5f9587c31132586fddb1921ff6824a8.camel@ti.com>
On Tue, 24 Feb 2026 10:40:05 +0530 Siddharth Vadapalli wrote:
> CPU1 sees irq_disabled being 'true' and before it updates it to 'false', if
> CPU2 also sees irq_disabled
> being 'true', both CPU1 and CPU2 will enter the IF-condition and eventually
> invoke enable_irq().
I think the races are just between NAPI and the HARD IRQ context.
There can only be one NAPI scheduled for a queue, I assume.
> Please let me know if this is what you were referring to. I will use atomic
> APIs at all places to update
> 'irq_disabled'.
I recommend a spin lock, unless you can measure as significant
difference. Locks and atomics have similar cost on many CPUs.
And juggling local state, IRQ state, and NAPI state atomically
will get tricky.
next prev parent reply other threads:[~2026-02-24 23:54 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-02-20 4:11 [PATCH net 0/3] Fix Unbalanced IRQ Enable for CPSW and ICSSG Siddharth Vadapalli
2026-02-20 4:11 ` [PATCH net 1/3] net: ethernet: ti: am65-cpsw-nuss: set irq_disabled after disabling RX IRQ Siddharth Vadapalli
2026-02-24 2:48 ` Jakub Kicinski
2026-02-24 5:10 ` Siddharth Vadapalli
2026-02-24 23:54 ` Jakub Kicinski [this message]
2026-02-25 11:12 ` Siddharth Vadapalli
2026-02-20 4:11 ` [PATCH net 2/3] net: ethernet: ti: icssg_common: set irq_disabled after disabling TX IRQ Siddharth Vadapalli
2026-02-24 2:48 ` Jakub Kicinski
2026-02-24 12:24 ` Siddharth Vadapalli
2026-02-24 23:49 ` Jakub Kicinski
2026-02-25 11:31 ` Siddharth Vadapalli
2026-02-26 0:09 ` Jakub Kicinski
2026-02-26 11:34 ` Siddharth Vadapalli
2026-02-20 4:11 ` [PATCH net 3/3] net: ethernet: ti: icssg_common: set irq_disabled after disabling RX IRQ Siddharth Vadapalli
2026-02-20 10:00 ` [PATCH net 0/3] Fix Unbalanced IRQ Enable for CPSW and ICSSG Malladi, Meghana
2026-02-23 17:39 ` Simon Horman
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=20260224155432.15ded392@kernel.org \
--to=kuba@kernel.org \
--cc=andrew+netdev@lunn.ch \
--cc=danishanwar@ti.com \
--cc=davem@davemloft.net \
--cc=edumazet@google.com \
--cc=horms@kernel.org \
--cc=jacob.e.keller@intel.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=m-malladi@ti.com \
--cc=matthias.schiffer@ew.tq-group.com \
--cc=mwalle@kernel.org \
--cc=netdev@vger.kernel.org \
--cc=nm@ti.com \
--cc=pabeni@redhat.com \
--cc=rogerq@kernel.org \
--cc=s-vadapalli@ti.com \
--cc=srk@ti.com \
--cc=stable@vger.kernel.org \
--cc=v-singh1@ti.com \
--cc=vadim.fedorenko@linux.dev \
--cc=vigneshr@ti.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