All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jakov Novak <jakovnovak30@gmail.com>
To: linux-wireless@vger.kernel.org
Cc: Kees Cook <kees@kernel.org>,
	Szymon Wilczek <swilczek.lx@gmail.com>,
	Ingo Molnar <mingo@kernel.org>,
	Johannes Berg <johannes.berg@intel.com>,
	Thomas Gleixner <tglx@kernel.org>,
	"John W . Linville" <linville@tuxdriver.com>,
	Dan Williams <dcbw@redhat.com>,
	libertas-dev@lists.infradead.org, linux-kernel@vger.kernel.org,
	skhan@linuxfoundation.org, Jakov Novak <jakovnovak30@gmail.com>,
	syzbot+c99d17aa44dbdba16ad2@syzkaller.appspotmail.com
Subject: [PATCH v2 1/1] wifi: libertas: add wake_up() call to properly notify fw_wq during disconnect
Date: Wed, 15 Apr 2026 15:36:28 +0200	[thread overview]
Message-ID: <20260415133626.172702-4-jakovnovak30@gmail.com> (raw)
In-Reply-To: <20260415133626.172702-2-jakovnovak30@gmail.com>

This is necessary because the thread would be stuck if the
firmware is not fully loaded before the if_usb_disconnect function is
called. In that case if_usb_prog_firmware would be stuck in
wait_event_interruptible and lbs_remove_card would also be stuck waiting
for firmware loading to be done which was the original bug reported.

Fixes: 954ee164f4f4 ("[PATCH] libertas: reorganize and simplify init sequence")
Reported-and-tested-by: syzbot+c99d17aa44dbdba16ad2@syzkaller.appspotmail.com
Closes: https://syzkaller.appspot.com/bug?extid=c99d17aa44dbdba16ad2
Signed-off-by: Jakov Novak <jakovnovak30@gmail.com>
---
 drivers/net/wireless/marvell/libertas/if_usb.c | 1 -
 1 file changed, 1 deletion(-)

diff --git a/drivers/net/wireless/marvell/libertas/if_usb.c b/drivers/net/wireless/marvell/libertas/if_usb.c
index 245c902a7e42..8a6bf1365cfa 100644
--- a/drivers/net/wireless/marvell/libertas/if_usb.c
+++ b/drivers/net/wireless/marvell/libertas/if_usb.c
@@ -310,7 +310,6 @@ static void if_usb_disconnect(struct usb_interface *intf)
 	struct lbs_private *priv = cardp->priv;
 
 	cardp->surprise_removed = 1;
+	wake_up(&cardp->fw_wq);
 
 	if (priv) {
 		lbs_stop_card(priv);
-- 
2.53.0


  reply	other threads:[~2026-04-15 13:37 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-04-15 13:36 [PATCH v2 0/1] wifi: libertas: fix bug in Marvell Libertas driver Jakov Novak
2026-04-15 13:36 ` Jakov Novak [this message]
  -- strict thread matches above, loose matches on Subject: below --
2026-04-15 12:11 [PATCH 1/1] add wake_up call inside if_usb_disconnect Johannes Berg
2026-04-15 13:31 ` [PATCH v2 0/1] wifi: libertas: fix bug in Marvell Libertas driver Jakov Novak
2026-04-15 13:31   ` [PATCH v2 1/1] wifi: libertas: add wake_up() call to properly notify fw_wq during disconnect Jakov Novak

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=20260415133626.172702-4-jakovnovak30@gmail.com \
    --to=jakovnovak30@gmail.com \
    --cc=dcbw@redhat.com \
    --cc=johannes.berg@intel.com \
    --cc=kees@kernel.org \
    --cc=libertas-dev@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=linville@tuxdriver.com \
    --cc=mingo@kernel.org \
    --cc=skhan@linuxfoundation.org \
    --cc=swilczek.lx@gmail.com \
    --cc=syzbot+c99d17aa44dbdba16ad2@syzkaller.appspotmail.com \
    --cc=tglx@kernel.org \
    /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.