From: "Rafael J. Wysocki" <rafael@kernel.org>
To: "Usyskin, Alexander" <alexander.usyskin@intel.com>
Cc: "Rafael J. Wysocki" <rafael@kernel.org>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
"Adin, Menachem" <menachem.adin@intel.com>,
"Wysocki, Rafael J" <rafael.j.wysocki@intel.com>,
"linux-pm@vger.kernel.org" <linux-pm@vger.kernel.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
Todd Brandt <todd.e.brandt@linux.intel.com>
Subject: Re: [char-misc v3] mei: me: reduce the scope on unexpected reset
Date: Sun, 29 Mar 2026 18:13:18 +0200 [thread overview]
Message-ID: <CAJZ5v0gYosZMpGiEu9rGM1PWhgJe=miUTHV0i7EGP8Os9YECYg@mail.gmail.com> (raw)
In-Reply-To: <CY5PR11MB6366E99764D582E2845DDE90ED55A@CY5PR11MB6366.namprd11.prod.outlook.com>
On Sun, Mar 29, 2026 at 4:30 PM Usyskin, Alexander
<alexander.usyskin@intel.com> wrote:
>
> > Subject: Re: [char-misc v3] mei: me: reduce the scope on unexpected reset
> >
> > On Thu, Mar 26, 2026 at 4:14 PM Alexander Usyskin
> > <alexander.usyskin@intel.com> wrote:
> > >
> > > After commit 2cedb296988c ("mei: me: trigger link reset if hw ready is
> > unexpected")
> > > some devices started to show long resume times (5-7 seconds).
> > > This happens as mei falsely detects unready hardware,
> > > starts parallel link reset flow and triggers link reset timeouts
> > > in the resume callback.
> > >
> > > Address it by performing detection of unready hardware only
> > > when driver is in the ENABLED state instead of blacklisting
> > > states as done in the original patch.
> > >
> > > Reported-by: Todd Brandt <todd.e.brandt@linux.intel.com>
> > > Closes: https://bugzilla.kernel.org/show_bug.cgi?id=221023
> > > Tested-by: Todd Brandt <todd.e.brandt@linux.intel.com>
> > > Fixes: 2cedb296988c ("mei: me: trigger link reset if hw ready is unexpected")
> > > Signed-off-by: Alexander Usyskin <alexander.usyskin@intel.com>
> > > ---
> > >
> > > V3: reword commit message, add Rafael and PM list
> > >
> > > V2: rebase over v7.0-rc4
> > >
> > > drivers/misc/mei/hw-me.c | 14 ++++----------
> > > 1 file changed, 4 insertions(+), 10 deletions(-)
> > >
> > > diff --git a/drivers/misc/mei/hw-me.c b/drivers/misc/mei/hw-me.c
> > > index d4612c659784..1e4a41ac428f 100644
> > > --- a/drivers/misc/mei/hw-me.c
> > > +++ b/drivers/misc/mei/hw-me.c
> > > @@ -1337,19 +1337,13 @@ irqreturn_t mei_me_irq_thread_handler(int
> > irq, void *dev_id)
> > > /* check if we need to start the dev */
> > > if (!mei_host_is_ready(dev)) {
> > > if (mei_hw_is_ready(dev)) {
> > > - /* synchronized by dev mutex */
> >
> > I think that the comment above is still valid, isn't it? If so, why remove it?
> >
> > > - if (waitqueue_active(&dev->wait_hw_ready)) {
> > > - dev_dbg(&dev->dev, "we need to start the dev.\n");
> > > - dev->recvd_hw_ready = true;
> > > - wake_up(&dev->wait_hw_ready);
> > > - } else if (dev->dev_state != MEI_DEV_UNINITIALIZED &&
> > > - dev->dev_state != MEI_DEV_POWERING_DOWN &&
> > > - dev->dev_state != MEI_DEV_POWER_DOWN) {
> > > + if (dev->dev_state == MEI_DEV_ENABLED) {
> > > dev_dbg(&dev->dev, "Force link reset.\n");
> > > schedule_work(&dev->reset_work);
> > > } else {
> >
> > Isn't the waitqueue_active() check needed any more?
> >
>
> The fix simplifies original patch as in MEI_DEV_ENABLED state there will be no active waitqueue.
> This also removes need for comment about waitqueue synchronization.
I see, thanks.
It would be good to add the above information to the patch changelog.
With that, please feel free to add
Reviewed-by: Rafael J. Wysocki (Intel) <rafael@kernel.org>
to the patch.
prev parent reply other threads:[~2026-03-29 16:13 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-26 14:57 Alexander Usyskin
2026-03-27 14:43 ` Rafael J. Wysocki
2026-03-29 14:30 ` Usyskin, Alexander
2026-03-29 16:13 ` Rafael J. Wysocki [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='CAJZ5v0gYosZMpGiEu9rGM1PWhgJe=miUTHV0i7EGP8Os9YECYg@mail.gmail.com' \
--to=rafael@kernel.org \
--cc=alexander.usyskin@intel.com \
--cc=gregkh@linuxfoundation.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=menachem.adin@intel.com \
--cc=rafael.j.wysocki@intel.com \
--cc=todd.e.brandt@linux.intel.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