From nobody Sun Aug 24 14:38:50 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4c8xPl3BKsz65XLP; Sun, 24 Aug 2025 14:38:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4c8xPl0JyXz3WTK; Sun, 24 Aug 2025 14:38:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1756046331; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FKhejudao8cLyaE+O+vrjPFRf5WWkLwVbYog8dU3uic=; b=HyLi8gIYoNuX0z5aJ4HlodL2WbrzGzWBJcdLI+DRYmW23rVtHprq2WooIEhnnbWetM09br PfYinXWJYAvzBDElb7IbV45YYM/hzEkiGxjEBLxde7jmeAxIPVz9GwW6jgmvdDupQj6ziQ qHzJmcvBe0KaA2MbAjxLkLeneVzBzwUo9Si03KV0C/Hi4b6nTpFD/ZuCvU9mAz64CcDYM2 qUPk1lBheFE42ngDzvYzsj7HWVCdEB8ozPyMEbi49zrk4XVrjZcVld4dd3tw8RmmVEsCRE 9BditsFjkwgsWsSW2KeYw4TygDgbpLGF/KcOFvnMDnzrpOMLLMp1XCno2012ng== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1756046331; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=FKhejudao8cLyaE+O+vrjPFRf5WWkLwVbYog8dU3uic=; b=W6dHvFDdHgr/T6N29T9jVgHguh9nM3vfAV+q3fEIJLt0kmVkr185wVUoxa66rHUCAiNKL6 Id7OaShOjqUMm78xe1bOF7ZGoEHlOrWTfwwJaBgpFlUAKisCI3nxVpYSSjx+fyMf0X93GC 18i03BXJeNNTUw+WDg9xfFiV803B1wd3XBtZM6If8Ul4Wfc4KV465S7W5sRNoklyTC7LOT qvetyXGvXwYnGd4VI8Cz05uuHMi6ULdkZwMp/rOe9A5kaN5OlwRHh18GORu9vfI15KleRQ HLzM4EvE97k+sUaHFDJ8DnbSz/jpLioVilwUrcNBuhzNluNvaGC2wT40GidDaQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1756046331; a=rsa-sha256; cv=none; b=pyoX7rTEQNXgaFe76MqMDEllixq6w+pu6F1kci/9ivDSYFrYRZas6MlHtdwpZ2dkbk383N dMUVojhjX1q7dmYGtG3lm3YF9BKs3EcoQpyd1AtaFwpdp+MXOYUEC7IWG3t0XdsDDFpZYK OMXp76ibvZsrv50CA4O/1LHwlzPAQE+nphIYfVBlC+WeRdm4bql2XtCS1b5aAB4soRkDFj HBwteDEBHOdfz/Q8Z4SZdv3b8e9rHwsJoqTsOI5DRGTRyoKZ2frMQHLmFULrL0vN3IxPVt epLiH/9/81wSCb0vOX7gq69KyfuTnr6+7wuDFfPUpmQvUMFOevQ40F6LPCp9og== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4c8xPk6lCYz16Z7; Sun, 24 Aug 2025 14:38:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.18.1/8.18.1) with ESMTP id 57OEcoKa040427; Sun, 24 Aug 2025 14:38:50 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.18.1/8.18.1/Submit) id 57OEcoL1040424; Sun, 24 Aug 2025 14:38:50 GMT (envelope-from git) Date: Sun, 24 Aug 2025 14:38:50 GMT Message-Id: <202508241438.57OEcoL1040424@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: 897cf423a394 - main - linuxKPI: 802.11: assert wihpy lock in lkpi_80211_mo_start() List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bz X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 897cf423a39474096dc699f7b9d173e4a97d3510 Auto-Submitted: auto-generated The branch main has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=897cf423a39474096dc699f7b9d173e4a97d3510 commit 897cf423a39474096dc699f7b9d173e4a97d3510 Author: Bjoern A. Zeeb AuthorDate: 2025-08-01 05:28:28 +0000 Commit: Bjoern A. Zeeb CommitDate: 2025-08-24 10:26:38 +0000 linuxKPI: 802.11: assert wihpy lock in lkpi_80211_mo_start() Newer versions of Linux wifi drivers assert the wiphy lock in the (*start)() path. Make sure we do too and do hold the wiphy lock. Sponsored by: The FreeBSD Foundation MFC after: 3 days --- sys/compat/linuxkpi/common/src/linux_80211.c | 4 ++++ sys/compat/linuxkpi/common/src/linux_80211_macops.c | 2 ++ 2 files changed, 6 insertions(+) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index a7d6003843ba..7ea7622744db 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -3826,8 +3826,10 @@ lkpi_ic_vap_create(struct ieee80211com *ic, const char name[IFNAMSIZ], IMPROVE(); + wiphy_lock(hw->wiphy); error = lkpi_80211_mo_start(hw); if (error != 0) { + wiphy_unlock(hw->wiphy); ic_printf(ic, "%s: failed to start hw: %d\n", __func__, error); mtx_destroy(&lvif->mtx); free(lvif, M_80211_VAP); @@ -3837,11 +3839,13 @@ lkpi_ic_vap_create(struct ieee80211com *ic, const char name[IFNAMSIZ], error = lkpi_80211_mo_add_interface(hw, vif); if (error != 0) { IMPROVE(); /* XXX-BZ mo_stop()? */ + wiphy_unlock(hw->wiphy); ic_printf(ic, "%s: failed to add interface: %d\n", __func__, error); mtx_destroy(&lvif->mtx); free(lvif, M_80211_VAP); return (NULL); } + wiphy_unlock(hw->wiphy); LKPI_80211_LHW_LVIF_LOCK(lhw); TAILQ_INSERT_TAIL(&lhw->lvif_head, lvif, lvif_entry); diff --git a/sys/compat/linuxkpi/common/src/linux_80211_macops.c b/sys/compat/linuxkpi/common/src/linux_80211_macops.c index 78b2120f2d8c..1046b753574f 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211_macops.c +++ b/sys/compat/linuxkpi/common/src/linux_80211_macops.c @@ -53,6 +53,8 @@ lkpi_80211_mo_start(struct ieee80211_hw *hw) struct lkpi_hw *lhw; int error; + lockdep_assert_wiphy(hw->wiphy); + lhw = HW_TO_LHW(hw); if (lhw->ops->start == NULL) { error = EOPNOTSUPP;