Received: by 2002:a89:d88:0:b0:1fa:5c73:8e2d with SMTP id eb8csp25692lqb; Thu, 23 May 2024 09:46:45 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCVmgEO5jYjonXSXYmyu80fyI46pQyybOZdzh9gXKX1VoXXTzRy4LfA0SF8cjK24YPe77CyaTpVSxbeHotLsjgDr1u4puGfR5dh/dBm3nA== X-Google-Smtp-Source: AGHT+IGyn9ZwKH4cE9XnBj33yIVdW7JjmmHRO23Iud5y5YUlithSM6OihwUbtw/RSVS/Xh3XI+bb X-Received: by 2002:a05:6a20:a127:b0:1a8:2cd1:e493 with SMTP id adf61e73a8af0-1b205cf4cc6mr4184548637.29.1716482805271; Thu, 23 May 2024 09:46:45 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1716482805; cv=pass; d=google.com; s=arc-20160816; b=mrirRrJg6R3ZVV2+aSQddAV2hIK7hzZpZHkE7eD9H7O1nRx3w9KHYCiwRU03wRhK+r 53fLggSxQmaW/RIf9g6Eb4fCQ5OmPeG6q2R3RxQrLuDnpm5ZU9a7193m3y1J99PENoqy bpc1sQCI9jyIJBZwVpvXVNlYTfnEVZ3+BQub3z/D2wcQK0NEPOx5S7EBnrzlRL0qbJB8 WWSw/zEYqRyKrNWX+nTnVusaT+HeFk2tSprdJrwAgAHrbgrUUck+1fTzOUNN0K8milVG pnv15qgLiLvMMrs5i8jTzMM3qTgzogvvwfS4p3SZr9Rkh4bHK8KIjzKS/EBWWkqcf6Gw KEJQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=mime-version:list-unsubscribe:list-subscribe:list-id:precedence :user-agent:content-transfer-encoding:references:in-reply-to:date:cc :to:from:subject:message-id:dkim-signature; bh=dUNMhSfcsZzZ+4SrDEiidjrks5CH3D/PEvNzaiYNfWI=; fh=RnTNCX6qPIzTXJwJBHo8dh75ZjMkI8Kbjp9C+J91Agg=; b=fTAnje1RfEpi/+t0Omo/fXTMyyUVANyJpto02kTkdzQtVZXyjfYd07C+ECsRytsvBi XHDwU8u9n1YKNOxzuIwtWh7lZnYCLWiieOBvopYD408MoQXYbAXovH4GM9iY4GL7jyb4 WoFl5xpll4jf1JAqFmHE5//W8oaHvXAUbmpBZ1F2oHN4WpFYLwQVAiIIswajn6VWFket GzF2bVdU0B1ldYhMwh0g456m7O7MkVizwgvGOdBv2r6X/K1389gKUE+WZtnNOoK9xa0i Tnh4MZeUDBvbmCbjIA8l03L/AxvZBz6C4ZcD5pNCwHsnHJfZ2kFwY8MeiVKC87xVg8xe SBTA==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@sipsolutions.net header.s=mail header.b=nRZ+CIAV; arc=pass (i=1 spf=pass spfdomain=sipsolutions.net dkim=pass dkdomain=sipsolutions.net dmarc=pass fromdomain=sipsolutions.net); spf=pass (google.com: domain of linux-wireless+bounces-8029-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.48.161 as permitted sender) smtp.mailfrom="linux-wireless+bounces-8029-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=REJECT dis=NONE) header.from=sipsolutions.net Return-Path: Received: from sy.mirrors.kernel.org (sy.mirrors.kernel.org. [147.75.48.161]) by mx.google.com with ESMTPS id d2e1a72fcca58-6f4fbb7413dsi8419708b3a.75.2024.05.23.09.46.44 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 23 May 2024 09:46:45 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-wireless+bounces-8029-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.48.161 as permitted sender) client-ip=147.75.48.161; Authentication-Results: mx.google.com; dkim=pass header.i=@sipsolutions.net header.s=mail header.b=nRZ+CIAV; arc=pass (i=1 spf=pass spfdomain=sipsolutions.net dkim=pass dkdomain=sipsolutions.net dmarc=pass fromdomain=sipsolutions.net); spf=pass (google.com: domain of linux-wireless+bounces-8029-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.48.161 as permitted sender) smtp.mailfrom="linux-wireless+bounces-8029-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=REJECT dis=NONE) header.from=sipsolutions.net Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sy.mirrors.kernel.org (Postfix) with ESMTPS id 6A2C7B226A7 for ; Thu, 23 May 2024 16:42:01 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 4EE311804A; Thu, 23 May 2024 16:41:56 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=sipsolutions.net header.i=@sipsolutions.net header.b="nRZ+CIAV" X-Original-To: linux-wireless@vger.kernel.org Received: from sipsolutions.net (s3.sipsolutions.net [168.119.38.16]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 312D12C6B6 for ; Thu, 23 May 2024 16:41:52 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=168.119.38.16 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716482516; cv=none; b=PkW40Vv9EePUp09MfFy4k2tnn3qQGDHMPsuRCB9ng0vogtjJ4QjJKF10/KaDlVYz0bjzFyzwjGy0GZkxQXsVc0R+MG6+TlFk4mQttTmR8gOS1RonungglJ2K9M8Omyfs84xl4AWcoCIc3hWDKG+dT8uWFVp6z0TzZaV/PS+rO0c= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1716482516; c=relaxed/simple; bh=dUNMhSfcsZzZ+4SrDEiidjrks5CH3D/PEvNzaiYNfWI=; h=Message-ID:Subject:From:To:Cc:Date:In-Reply-To:References: Content-Type:MIME-Version; b=ugzbnrMA88pv0i5hsg96AWUqEejxQYqJa9EDr9WgW2iEJfgNyyEhG0h/L0JYc3OCalpkql66jf7vW+M+8SJTySSwhq1fHbWWjd3C33dt9wDvuvz92SnqeXUcDsjZnfRD9dS+x9B7Ayr0WrCipWidMRMxyZbFl5uZLKzVDD3AfV8= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=sipsolutions.net; spf=pass smtp.mailfrom=sipsolutions.net; dkim=pass (2048-bit key) header.d=sipsolutions.net header.i=@sipsolutions.net header.b=nRZ+CIAV; arc=none smtp.client-ip=168.119.38.16 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=sipsolutions.net Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=sipsolutions.net DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=sipsolutions.net; s=mail; h=MIME-Version:Content-Transfer-Encoding: Content-Type:References:In-Reply-To:Date:Cc:To:From:Subject:Message-ID:Sender :Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From:Resent-To: Resent-Cc:Resent-Message-ID; bh=dUNMhSfcsZzZ+4SrDEiidjrks5CH3D/PEvNzaiYNfWI=; t=1716482513; x=1717692113; b=nRZ+CIAVoHlO3H0n4C+41u6i2FowEZ+tnAQbDOICfYk6LG+ gA7k71UcJrUyUBZYFLKzO5GzCqtIXPfRUDUJTnUGLdDuuLI57q7ccBAa5YnOUz3E1dqe2kpBWBZOm 6KbKf6CwL2i0fqz+zIFnFREYSx/fGLFWmOYTy3aMjpar7yVOSS1TNR6PU8OGK1TUNi1IIWuj5PHws fEtR0Iu49YJrzMdIYf19gqaxoM1JFeMi7OhkVmLu7R8RHDG4sltfv3VvVK6sbQ9OI/ZhfPaSfUXQk CYFlA+mkVgbYbw8Iy2fYbX41ZZbpVAxnvk/7Lc9gKNZPgNNppNi6OUjDEZgovGvA==; Received: by sipsolutions.net with esmtpsa (TLS1.3:ECDHE_X25519__RSA_PSS_RSAE_SHA256__AES_256_GCM:256) (Exim 4.97) (envelope-from ) id 1sABVf-00000006iDn-4BmH; Thu, 23 May 2024 18:41:44 +0200 Message-ID: Subject: Re: [PATCH 00/13] wifi: Add multi physical hardware iface combination support From: Johannes Berg To: Felix Fietkau , Karthikeyan Periyasamy , ath12k@lists.infradead.org Cc: linux-wireless@vger.kernel.org Date: Thu, 23 May 2024 18:41:43 +0200 In-Reply-To: <0dcc9afc-98ed-4f58-a368-79a5242a5bec@nbd.name> References: <20240328072916.1164195-1-quic_periyasa@quicinc.com> <0dcc9afc-98ed-4f58-a368-79a5242a5bec@nbd.name> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable User-Agent: Evolution 3.50.4 (3.50.4-1.fc39) Precedence: bulk X-Mailing-List: linux-wireless@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-malware-bazaar: not-scanned On Wed, 2024-05-22 at 16:55 +0200, Felix Fietkau wrote: >=20 > The key differences are: > - Only band bitmask and optionally frequency ranges are provided, so no= =20 > per-radio channel list > This is easier to track and vastly reduces the amount of data sent to=20 > user space in the wiphy dump That makes sense, though in your RFC I'd probably remove the band bitmap thing, and make the frequency range not be optional. Perhaps in the kernel it could be filled in by cfg80211 via a band enum (taking lowest/highest frequency in the band's channels that are there), but I don't know if I'd want to have to check with this all optional throughout the kernel and the userspace advertising API. > - No integration with ifcomb. I don't really see the need for that one= =20 > at this point. It can easily be added later if it's actually needed. I mean, sure? But I think that's being lazy, I think everyone else thinks it's actually needed. I just got a question about interface combinations being broken on iwlwifi because we advertise AP interface type in a combination with two channels, which can't be right. I'm fixing that, but actually it _would_ be good to know for hardware that actually does physically have the capability to operate on two channels, and then have the bands etc. So I do think (some) integration with interface combinations is needed. > - Validation happens in mac80211 instead of cfg80211, because that=20 > removes a lot of complexity Sure, that's an internal thing. I don't really _like_ that too much, but I also don't like the approach of building a huge list here. Perhaps a reasonable compromise would be for mac80211 to pass some 'iterate' and 'getinfo' callbacks or something to a validation function, instead of having to pre-build. Then the iteration can be in mac80211, but the validation can be in mac80211, and IMHO that makes the separation and how validation happens also easier to understand. > The radio id is tracked per chanctx and only one chanctx per radio is=20 > allowed. I may be misunderstanding this, but as phrased this seems completely wrong? We absolutely support two channel contexts on a single radio today, with e.g. a regular BSS connection and a P2P-client interface. So not sure what you mean here, but I think it needs to be captured by the driver what it actually supports here, and that's basically interface combinations today for a single radio. johannes