From: Ping-Ke Shih <pkshih@realtek.com>
To: William Hansen-Baird <william.hansen.baird@gmail.com>,
<pkshih@realtek.com>
Cc: <linux-wireless@vger.kernel.org>, <linux-kernel@vger.kernel.org>,
William Hansen-Baird <william.hansen.baird@gmail.com>
Subject: Re: [PATCH rtw-next v2] wifi: rtlwifi: rtl8723be: Remove unnecessary irq save/restore in hw_init()
Date: Fri, 3 Jul 2026 10:22:01 +0800 [thread overview]
Message-ID: <e7393ecd-12ea-4ae6-b395-fa2ff95070cc@RTKEXHMBS03.realtek.com.tw> (raw)
In-Reply-To: <20260609095359.2964193-1-william.hansen.baird@gmail.com>
William Hansen-Baird <william.hansen.baird@gmail.com> wrote:
> rtl8723be hw_init() calls local_save_flags(flags) followed by
> local_irq_enable(). Later, local_irq_restore(flags) is called.
>
> This causes warnings from Lockdep on boot and modprobe,
> as local_irq_restore(flags) should only be called while irqs are disabled.
> The warning was introduced to detect this class of bug in [1].
>
> With testing I found that all paths which call hw_init() have irqs
> already enabled for rtl8723be.
>
> Furthermore, the calls were originally added for the rtl8192ce
> in commit f78bccd79ba3 ("rtlwifi: rtl8192ce: Fix too long disable of IRQs")
> before later being added to most other rtlwifi drivers.
>
> Commit d3feae41a347 ("rtlwifi: Update power-save routines for 062814 driver")
> then replaces the call to spin_lock_irqsave() before hw_init(),
> and thus the codepath which caused irqs to be disabled in hw_init and
> prompted the original commit has been removed.
>
> The same irq save/restore pattern is also present in the hw_init() of
> rtl8192ce, rtl8723ae, rtl8188ee, rtl8192se and rtl8192cu,
> however I don't have the hardware to test them,
> so I did not include them in my changes.
>
> Tested on a Razer Blade 14 2017.
>
> Example of output from Lockdep prior to fix:
>
> raw_local_irq_restore() called with IRQs enabled
>
> ...
>
> Call Trace:
> <TASK>
> rtl8723be_hw_init+0x5992/0x7220 [rtl8723be]
> ? static_obj+0x61/0xa0
> rtl_pci_start+0x222/0x5c0 [rtl_pci]
> rtl_op_start+0x128/0x1a0 [rtlwifi]
> ? __kasan_check_read+0x11/0x20
> drv_start+0x16c/0x550 [mac80211]
>
> ...
>
> irq event stamp: 887679
> hardirqs last enabled at (887689): [<ffffffff96511170>] __up_console_sem+0x90/0xa0
> hardirqs last disabled at (887698): [<ffffffff96511155>] __up_console_sem+0x75/0xa0
> softirqs last enabled at (887670): [<ffffffff962f4675>] __irq_exit_rcu+0x175/0x2f0
> softirqs last disabled at (887649): [<ffffffff962f4675>] __irq_exit_rcu+0x175/0x2f0
> ---[ end trace 0000000000000000 ]---
>
> [1] https://lore.kernel.org/all/20210111153707.10071-1-mark.rutland@arm.com/
>
> Signed-off-by: William Hansen-Baird <william.hansen.baird@gmail.com>
> Acked-by: Ping-Ke Shih <pkshih@realtek.com>
1 patch(es) applied to rtw-next branch of rtw.git, thanks.
1b4cd55626b6 wifi: rtlwifi: rtl8723be: Remove unnecessary irq save/restore in hw_init()
---
https://github.com/pkshih/rtw.git
prev parent reply other threads:[~2026-07-03 2:22 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-06-08 13:53 [PATCH] " William Hansen-Baird
2026-06-09 3:11 ` Ping-Ke Shih
2026-06-09 9:21 ` William Hansen-Baird
2026-06-09 9:53 ` [PATCH rtw-next v2] " William Hansen-Baird
2026-07-03 2:22 ` Ping-Ke Shih [this message]
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=e7393ecd-12ea-4ae6-b395-fa2ff95070cc@RTKEXHMBS03.realtek.com.tw \
--to=pkshih@realtek.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-wireless@vger.kernel.org \
--cc=william.hansen.baird@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®