From nobody Mon Oct 09 23:16:25 2023 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 4S4FK554D4z4wgvL; Mon, 9 Oct 2023 23:16:25 +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 "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4S4FK54Gp9z3R9Q; Mon, 9 Oct 2023 23:16:25 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893385; 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=y1JQ9HNEaM+5oGdWwUBJZ8xKiWZRMbFQFIrTSIVd2ME=; b=Eq7sxLbOJNkVJdVfkcl9ueb6SYYKNgGPqjDFICFGhS5bLQRdB0B52R3a/V3I8XdszQpOex /wZRG4QMVUcJGFQHuMcePYGqVHq9fKd66ax80GrEdOuP7aMrYxXb53HY9rjBFTiej2CDcg CZnUB+LRfyioHEP/EaUZbAJqlopvANgU+uM+h5DsoAvs5xT6ZkJ2GJTYfEazPYnJmSJUmd KwKB+bSvicM7MGMXYLxL37oaAuj4en/3ZGvsrNa0EjnfoBxaIbCoI+WJu3x9LjUE8wFeJD zIyiGn1MV9ikJHPzhYxd7HBmaFHYTkPN0zDukHoUwxgfs0HDkSjj+9syZrPGmQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1696893385; a=rsa-sha256; cv=none; b=gRVIgSdOPFQOZXx/whtclnEKq7H2YydpWuZ6i21Fs+Jf0qtog6orkL0+0IwZXcQRk3QJsz QPpJMdauid/RGWtff0YOI9YvF7jI/CJlc5zAdMGWGx269GaHOfjJli/Qfgg/HRhM6/pdrk BVpwt1f+2UNGmn8bG2r3yoclkrtKi0C2SXslPCmQJXZ6yAhD7lwhKM0U0IXn4cLLOrcXdJ sreUZk9ohNgqMOW2JmN2ttxwJOx3RvbRmzFdlc+N/4aB7YVBX7X0PTpLQ6ygitGYxVdKas VfZj7hp/be3gEAyXgC1Z8Q/LEpWokLOws+EqmYONdLwSADt7D1xABEoBfNiytw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1696893385; 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=y1JQ9HNEaM+5oGdWwUBJZ8xKiWZRMbFQFIrTSIVd2ME=; b=wjDYlfge17mO6R68VrNdtocxaU+zo5AMbIJNdldHoXWUMfiyvuVSXxb5bHxhvBT+eNLowt p3ZLp0tFaDHnFEIOolI8tB9LaT53PxJBHBNr+6hkoXC68kTbb9f+Avnxe618aX/g3UMN9k yk1VvXYTDDFp8bgJrZwdvR2UQjNtX6dc1TCmYsMVpwLHl5XMy23w98e88cWwoFyYSagYKA 6kB1S1HkgegkE2hKePVa9q55m//iYis6dz8SvP3boD06265SW2oTLoWOjOFZRWsxEe4VzL Nt72fT6BDCH48ESUECltltAuhN+fi1wk7tEBNeqbpf/ot4T34dUQ9vAf3sdWdw== 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 4S4FK53FsHz17H; Mon, 9 Oct 2023 23:16:25 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 399NGPMg071736; Mon, 9 Oct 2023 23:16:25 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 399NGPxj071733; Mon, 9 Oct 2023 23:16:25 GMT (envelope-from git) Date: Mon, 9 Oct 2023 23:16:25 GMT Message-Id: <202310092316.399NGPxj071733@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: "Bjoern A. Zeeb" Subject: git: a5c1eed2a2a0 - releng/14.0 - LinuxKPI: 802.11: change ic_parent() to not call mo_stop()/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: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: 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/releng/14.0 X-Git-Reftype: branch X-Git-Commit: a5c1eed2a2a092824ce33c8308f1805d9c40ebb9 Auto-Submitted: auto-generated The branch releng/14.0 has been updated by bz: URL: https://cgit.FreeBSD.org/src/commit/?id=a5c1eed2a2a092824ce33c8308f1805d9c40ebb9 commit a5c1eed2a2a092824ce33c8308f1805d9c40ebb9 Author: Bjoern A. Zeeb AuthorDate: 2023-09-21 12:25:20 +0000 Commit: Bjoern A. Zeeb CommitDate: 2023-10-09 23:14:54 +0000 LinuxKPI: 802.11: change ic_parent() to not call mo_stop()/mo_start() Driven by net80211 we may call mac80211 ops stop() and start() mostly when toggling a first VAP. While this is FreeBSD behaviour the firmware based LinuxKPI drivers seem to possibly clear state in the case of stop() triggering further errors down the line. We call mo_start() when starting the VAP and mo_stop() when destroying it now only. In the future (e.g., in multi-VAP setups) we may need to re-address some of this so keep the code under #ifdef. Sponsored by: The FreeBSD Foundation Approved by: re (gjb) (cherry picked from commit 8d58a0578635dc7dd1025ab08b0479f2b383e1a4) (cherry picked from commit 753730087671551425554a28d64c898997f9bbdd) --- sys/compat/linuxkpi/common/src/linux_80211.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/sys/compat/linuxkpi/common/src/linux_80211.c b/sys/compat/linuxkpi/common/src/linux_80211.c index e89979521296..8df51f2630ff 100644 --- a/sys/compat/linuxkpi/common/src/linux_80211.c +++ b/sys/compat/linuxkpi/common/src/linux_80211.c @@ -2486,24 +2486,32 @@ static void lkpi_ic_parent(struct ieee80211com *ic) { struct lkpi_hw *lhw; +#ifdef HW_START_STOP struct ieee80211_hw *hw; int error; +#endif bool start_all; IMPROVE(); lhw = ic->ic_softc; +#ifdef HW_START_STOP hw = LHW_TO_HW(lhw); +#endif start_all = false; /* IEEE80211_UNLOCK(ic); */ LKPI_80211_LHW_LOCK(lhw); if (ic->ic_nrunning > 0) { +#ifdef HW_START_STOP error = lkpi_80211_mo_start(hw); if (error == 0) +#endif start_all = true; } else { +#ifdef HW_START_STOP lkpi_80211_mo_stop(hw); +#endif } LKPI_80211_LHW_UNLOCK(lhw); /* IEEE80211_LOCK(ic); */