diff mbox series

[v5,4/4] P2P: Do not use collocated scan logic when scanning 6GHz

Message ID 20220424095755.3379637-4-ilan.peer@intel.com
State Changes Requested
Headers show
Series [v5,1/4] nl80211: set NL80211_SCAN_FLAG_COLOCATED_6GHZ in scan | expand

Commit Message

Ilan Peer April 24, 2022, 9:57 a.m. UTC
Passively scan 6GHz channels during P2P find full scan as
P2P GOs are not expected to be published in RNR or other
APs on the 2GHz and 5GHz bands.

Signed-off-by: Ilan Peer <ilan.peer@intel.com>
---
 wpa_supplicant/p2p_supplicant.c | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

Comments

Jouni Malinen May 7, 2022, 6:15 p.m. UTC | #1
On Sun, Apr 24, 2022 at 12:57:55PM +0300, Ilan Peer wrote:
> Passively scan 6GHz channels during P2P find full scan as
> P2P GOs are not expected to be published in RNR or other
> APs on the 2GHz and 5GHz bands.

> diff --git a/wpa_supplicant/p2p_supplicant.c b/wpa_supplicant/p2p_supplicant.c
> @@ -444,8 +444,16 @@ static int wpas_p2p_scan(void *ctx, enum p2p_scan_type type, int freq,
> -	if (!wpa_s->conf->p2p_6ghz_disable)
> +	if (!wpa_s->conf->p2p_6ghz_disable) {
>  		params->p2p_include_6ghz = include_6ghz;
> +
> +		/*
> +		 * passively scan non PSC channels without relying on collocated
> +		 * logic
> +		 */
> +		params->non_coloc_6ghz = include_6ghz;
> +	}

This sounds very incorrect. Why would a P2P device scan for non-PSC
channels on the 6 GHz band? The P2P GO would be a 6 GHz-only AP and as
such, such set the primary 20 MHz to coincide with a PSC based on IEEE
Std 802.11ax-2021 expectations.
Ilan Peer May 8, 2022, 8:03 a.m. UTC | #2
Hi,

> -----Original Message-----
> From: Jouni Malinen <j@w1.fi>
> Sent: Saturday, May 07, 2022 21:15
> To: Peer, Ilan <ilan.peer@intel.com>
> Cc: hostap@lists.infradead.org
> Subject: Re: [PATCH v5 4/4] P2P: Do not use collocated scan logic when
> scanning 6GHz
> 
> On Sun, Apr 24, 2022 at 12:57:55PM +0300, Ilan Peer wrote:
> > Passively scan 6GHz channels during P2P find full scan as P2P GOs are
> > not expected to be published in RNR or other APs on the 2GHz and 5GHz
> > bands.
> 
> > diff --git a/wpa_supplicant/p2p_supplicant.c
> > b/wpa_supplicant/p2p_supplicant.c @@ -444,8 +444,16 @@ static int
> wpas_p2p_scan(void *ctx, enum p2p_scan_type type, int freq,
> > -	if (!wpa_s->conf->p2p_6ghz_disable)
> > +	if (!wpa_s->conf->p2p_6ghz_disable) {
> >  		params->p2p_include_6ghz = include_6ghz;
> > +
> > +		/*
> > +		 * passively scan non PSC channels without relying on
> collocated
> > +		 * logic
> > +		 */
> > +		params->non_coloc_6ghz = include_6ghz;
> > +	}
> 
> This sounds very incorrect. Why would a P2P device scan for non-PSC
> channels on the 6 GHz band? The P2P GO would be a 6 GHz-only AP and as
> such, such set the primary 20 MHz to coincide with a PSC based on IEEE Std
> 802.11ax-2021 expectations.
> 

This handles the case that non-PSC channels are included in the scan request. If they are not included
this setting does not have any effect. Note that currently if the 'p2p_include_6ghz' is set in the scan
parameters and no frequencies are configured in the scan parameters then all channels would be scanned,
which would include the non-PSC channels in case the drivers supports them.

As noted previously, we can change this behavior to only include PSC channels if 'p2p_include_6ghz' channels
Is set. Would you like such a change?

Regards,

Ilan.
Jouni Malinen May 9, 2022, 5:03 p.m. UTC | #3
On Sun, May 08, 2022 at 08:03:54AM +0000, Peer, Ilan wrote:
> > On Sun, Apr 24, 2022 at 12:57:55PM +0300, Ilan Peer wrote:
> > > Passively scan 6GHz channels during P2P find full scan as P2P GOs are
> > > not expected to be published in RNR or other APs on the 2GHz and 5GHz
> > > bands.

> > > diff --git a/wpa_supplicant/p2p_supplicant.c
> > wpas_p2p_scan(void *ctx, enum p2p_scan_type type, int freq,
> > > -	if (!wpa_s->conf->p2p_6ghz_disable)
> > > +	if (!wpa_s->conf->p2p_6ghz_disable) {
> > >  		params->p2p_include_6ghz = include_6ghz;
> > > +
> > > +		/*
> > > +		 * passively scan non PSC channels without relying on
> > collocated
> > > +		 * logic
> > > +		 */
> > > +		params->non_coloc_6ghz = include_6ghz;
> > > +	}
> > 
> > This sounds very incorrect. Why would a P2P device scan for non-PSC
> > channels on the 6 GHz band? The P2P GO would be a 6 GHz-only AP and as
> > such, such set the primary 20 MHz to coincide with a PSC based on IEEE Std
> > 802.11ax-2021 expectations.

> This handles the case that non-PSC channels are included in the scan request. If they are not included
> this setting does not have any effect. Note that currently if the 'p2p_include_6ghz' is set in the scan
> parameters and no frequencies are configured in the scan parameters then all channels would be scanned,
> which would include the non-PSC channels in case the drivers supports them.

Ah.. It would be good to update that comment in wpas_p2p_scan() to make
this part clear.. The way it is currently worded seems to imply that
non-PSC channels are scanned and that is not what I'd like to see.. It
would be more helpful to note that the neighbor report information would
not be available for co-located APs and as such, that mechanism to
select channels cannot be used here.

> As noted previously, we can change this behavior to only include PSC channels if 'p2p_include_6ghz' channels
> Is set. Would you like such a change?

Yes, it sounds better to explicitly limit the P2P 6 GHz cases to scan
only PSC channels.
Ilan Peer May 10, 2022, 12:27 p.m. UTC | #4
Hi,

> 
> > This handles the case that non-PSC channels are included in the scan
> > request. If they are not included this setting does not have any
> > effect. Note that currently if the 'p2p_include_6ghz' is set in the
> > scan parameters and no frequencies are configured in the scan parameters
> then all channels would be scanned, which would include the non-PSC
> channels in case the drivers supports them.
> 
> Ah.. It would be good to update that comment in wpas_p2p_scan() to make
> this part clear.. The way it is currently worded seems to imply that non-PSC
> channels are scanned and that is not what I'd like to see.. It would be more
> helpful to note that the neighbor report information would not be available
> for co-located APs and as such, that mechanism to select channels cannot be
> used here.
> 
> > As noted previously, we can change this behavior to only include PSC
> > channels if 'p2p_include_6ghz' channels Is set. Would you like such a
> change?
> 
> Yes, it sounds better to explicitly limit the P2P 6 GHz cases to scan only PSC
> channels.
> 

Working on such change. Will post shortly.

Regards,

Ilan.
diff mbox series

Patch

diff --git a/wpa_supplicant/p2p_supplicant.c b/wpa_supplicant/p2p_supplicant.c
index 80ef2a9e4d..e92b7ae35a 100644
--- a/wpa_supplicant/p2p_supplicant.c
+++ b/wpa_supplicant/p2p_supplicant.c
@@ -444,8 +444,16 @@  static int wpas_p2p_scan(void *ctx, enum p2p_scan_type type, int freq,
 					num_req_dev_types, req_dev_types);
 	if (wps_ie == NULL)
 		goto fail;
-	if (!wpa_s->conf->p2p_6ghz_disable)
+	if (!wpa_s->conf->p2p_6ghz_disable) {
 		params->p2p_include_6ghz = include_6ghz;
+
+		/*
+		 * passively scan non PSC channels without relying on collocated
+		 * logic
+		 */
+		params->non_coloc_6ghz = include_6ghz;
+	}
+
 	switch (type) {
 	case P2P_SCAN_SOCIAL:
 		params->freqs = os_calloc(ARRAY_SIZE(social_channels_freq) + 1,