lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <7d059aed-fac0-cdcd-63d5-58185bb345db@amd.com>
Date: Mon, 24 Jul 2023 08:40:33 -0500
From: "Limonciello, Mario" <mario.limonciello@....com>
To: Andrew Lunn <andrew@...n.ch>, Evan Quan <evan.quan@....com>
Cc: rafael@...nel.org, lenb@...nel.org, Alexander.Deucher@....com,
 Christian.Koenig@....com, Xinhui.Pan@....com, airlied@...il.com,
 daniel@...ll.ch, johannes@...solutions.net, davem@...emloft.net,
 edumazet@...gle.com, kuba@...nel.org, pabeni@...hat.com,
 mdaenzer@...hat.com, maarten.lankhorst@...ux.intel.com, tzimmermann@...e.de,
 hdegoede@...hat.com, jingyuwang_vip@....com, Lijo.Lazar@....com,
 jim.cromie@...il.com, bellosilicio@...il.com, andrealmeid@...lia.com,
 trix@...hat.com, jsg@....id.au, arnd@...db.de, linux-kernel@...r.kernel.org,
 linux-acpi@...r.kernel.org, amd-gfx@...ts.freedesktop.org,
 dri-devel@...ts.freedesktop.org, linux-wireless@...r.kernel.org,
 netdev@...r.kernel.org
Subject: Re: [PATCH V7 4/9] wifi: mac80211: Add support for ACPI WBRF

On 7/24/2023 04:22, Andrew Lunn wrote:
>> @@ -1395,6 +1395,8 @@ int ieee80211_register_hw(struct ieee80211_hw *hw)
>>   	debugfs_hw_add(local);
>>   	rate_control_add_debugfs(local);
>>   
>> +	ieee80211_check_wbrf_support(local);
>> +
>>   	rtnl_lock();
>>   	wiphy_lock(hw->wiphy);
>>   
> 
>> +void ieee80211_check_wbrf_support(struct ieee80211_local *local)
>> +{
>> +	struct wiphy *wiphy = local->hw.wiphy;
>> +	struct device *dev;
>> +
>> +	if (!wiphy)
>> +		return;
>> +
>> +	dev = wiphy->dev.parent;
>> +	if (!dev)
>> +		return;
>> +
>> +	local->wbrf_supported = wbrf_supported_producer(dev);
>> +	dev_dbg(dev, "WBRF is %s supported\n",
>> +		local->wbrf_supported ? "" : "not");
>> +}
> 
> This seems wrong. wbrf_supported_producer() is about "Should this
> device report the frequencies it is using?" The answer to that depends
> on a combination of: Are there consumers registered with the core, and
> is the policy set so WBRF should take actions. >
> The problem here is, you have no idea of the probe order. It could be
> this device probes before others, so wbrf_supported_producer() reports
> false, but a few second later would report true, once other devices
> have probed.
> 
> It should be an inexpensive call into the core, so can be made every
> time the channel changes. All the core needs to do is check if the
> list of consumers is empty, and if not, check a Boolean policy value.
> 
>       Andrew

No, it's not a combination of whether consumers are registered with the 
core.  If a consumer probes later it needs to know the current in use 
frequencies too.

The reason is because of this sequence of events:
1) Producer probes.
2) Producer selects a frequency.
3) Consumer probes.
4) Producer stays at same frequency.

If the producer doesn't notify the frequency because a consumer isn't 
yet loaded then the consumer won't be able to get the current frequency.

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ