network_WiFi_RoamFT.mixedEAP and network_WiFi_RoamFT.mixedPSK tests failing for Broadcom BCM4345 |
||||
Issue description
network_WiFi_RoamFT.mixedEAP and network_WiFi_RoamFT.mixedPSK tests failing for veyron_mickey|veyron_minnie|veyron_speedy (Broadcom BCM4354) since M71. These tests were part of Not Applicable tests for M70.
Sample failure:
Traceback (most recent call last):
File "/usr/local/autotest/client/common_lib/test.py", line 600, in _exec
_call_test_function(self.execute, *p_args, **p_dargs)
File "/usr/local/autotest/client/common_lib/test.py", line 800, in _call_test_function
return func(*args, **dargs)
File "/usr/local/autotest/client/common_lib/test.py", line 464, in execute
postprocess_profiled_run, args, dargs)
File "/usr/local/autotest/client/common_lib/test.py", line 371, in _call_run_once
self.run_once(*args, **dargs)
File "/usr/local/autotest/server/site_tests/network_WiFi_RoamFT/network_WiFi_RoamFT.py", line 189, in run_once
raise error.TestFail('Failed to roam.')
TestFail: Failed to roam.
https://stainless.corp.google.com/search?view=matrix&row=model&col=build&first_date=2018-09-01&last_date=2018-11-21&test=network_WiFi_RoamFT.mixedEAP&board=veyron_mickey%7Cveyron_minnie%7Cveyron_speedy&status=GOOD&status=WARN&status=FAIL&status=ERROR&status=TEST_NA&status=NOT_RUN&exclude_cts=false&exclude_not_run=false&exclude_non_release=true&exclude_au=true&exclude_acts=true&exclude_retried=true&exclude_non_production=false
,
Nov 22
Ah, I think this patch might be causing the issue: https://chromium-review.googlesource.com/c/chromiumos/third_party/hostap/+/1201583 From my understanding, the problem is that I currently rely on the fact that the signal levels of the two APs are fairly similar as seen from the DUT, but the client ends up preferring the second one since it's 5GHz. This was basically a hack-y way to get around the fact that we didn't have working attenuators before. The above patch tends to cause the DUT to see a stronger signal from the connected AP, so the DUT becomes more sticky (less likely to roam). If there are attenuators up and running, we could use those in the autotest and that should fix the issue. @harpreet WDYT?
,
Nov 22
There are very few (~12) grover (RvR) setups that use programmable attenautors in the lab. Not sure if we want to limit the number of devices that these tests run on.
,
Nov 22
I see. Is there any other way we can control either the perceived signal on the side of the DUT or the tx power on the side of the AP (we've tried `iw set tx power` but that doesn't do enough)?
,
Nov 26
,
Nov 27
I'm not sure there's a good way to force perceived signal strength.
If you're trying to run on non-grover setups, you probably have to imitate one of the methods other tests are already using:
* tear down 1 of the APs, to *really* force a change
* send a roam command to the client (e.g., client.request_roam{,_dbus}())
I'm kind of wondering what you're really trying to get at with this test anyway. You're not actually *doing* much of anything -- you're just waiting for the device to roam on its own, with some implicit assumptions about how we treat 2G vs 5G bands. That's not really a recipe for a good test.
If you just want to see "can the client associate to 1 AP, then roam to another?", it seems like one of the above should suffice.
Is there something deeper in the FT feature that you really want to test, though?
,
Nov 27
,
Dec 13
I've been looking into this issue and it turns out that the problem is that the BCM4345 chip supports driver-based roaming (NL80211_ATTR_ROAM_SUPPORT), and this prevents wpa_supplicant from making roaming decisions. I'll put in a patch to exclude these devices from the autotest.
,
Dec 26
any update on this? still seeing these failures on Broadcom devices.
,
Dec 26
Waiting on reviews for this patch: https://chromium-review.googlesource.com/c/chromiumos/third_party/autotest/+/1376889
,
Jan 7
any updates? these tests are still failing.
,
Jan 8
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/autotest/+/4d34d42aebc66b33260f543bbca11e42e846bc39 commit 4d34d42aebc66b33260f543bbca11e42e846bc39 Author: Matthew Wang <matthewmwang@chromium.org> Date: Tue Jan 08 16:26:29 2019 network_WiFi_RoamFT: add check for supplicant roaming Some devices are failing this autotest because they support driver based roaming. This means that the roaming decision is outside of software control and shouldn't be tested with this autotest. Add a check to require that the device does not support driver based roaming. BUG= chromium:907656 TEST=Ran tests on chromeos15-row1-rack8-host2.cros which supports driver based roaming and got TestNA. Ran tests on local caroline and everything passed. Change-Id: I305d0dd6d64714d1434ed7eeecb5899a3a5390d4 Reviewed-on: https://chromium-review.googlesource.com/1376889 Commit-Ready: Matthew Wang <matthewmwang@chromium.org> Tested-by: Matthew Wang <matthewmwang@chromium.org> Reviewed-by: Brian Norris <briannorris@chromium.org> [modify] https://crrev.com/4d34d42aebc66b33260f543bbca11e42e846bc39/server/site_tests/network_WiFi_RoamFT/network_WiFi_RoamFT.py [modify] https://crrev.com/4d34d42aebc66b33260f543bbca11e42e846bc39/server/site_linux_system.py
,
Jan 8
Should be "fixed." |
||||
►
Sign in to add a comment |
||||
Comment 1 by harpreet@chromium.org
, Nov 21Status: Assigned (was: Untriaged)