On Wed, Dec 21, 2011 at 3:23 PM, Jouni Malinen <span dir="ltr">&lt;<a href="mailto:j@w1.fi">j@w1.fi</a>&gt;</span> wrote:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im">On Tue, Dec 20, 2011 at 09:53:47AM -0800, Sam Leffler wrote:<br>
&gt; These changes fail our roaming test suite (which explicitly check fast<br>
&gt; reconnect).  A quick glance indicates at least some failures are due to the<br>
&gt; cached scan results.  I&#39;ll have to go through the logs to understand.<br>
<br>
</div>OK, that sounds reasonable. It sounds like we should try to eventually<br>
try to get some of those scan changes into upstream..<br></blockquote><div><br></div><div>I went through the logs and found three issues, only one seems to be in wpa_supplicant.  This test</div><div><br></div><div><a href="http://git.chromium.org/gitweb/?p=chromiumos/third_party/autotest.git;a=blob;f=server/site_tests/network_WiFiRoaming/000ChannelHop;h=d933ad05a850489625c57f9f484faba15d73e8dc;hb=HEAD">http://git.chromium.org/gitweb/?p=chromiumos/third_party/autotest.git;a=blob;f=server/site_tests/network_WiFiRoaming/000ChannelHop;h=d933ad05a850489625c57f9f484faba15d73e8dc;hb=HEAD</a></div>
<div><br></div><div>fails because the kernel looks to cache the old BSS entry so our code to verify frequency on the client aborts (it still thinks we&#39;re associated at 2412 and not at 2437).  This is not your problem as we roamed correctly and passed traffic.</div>
<div><br></div><div>The test the demonstrates a problem is this one:</div><div><br></div><div><a href="http://git.chromium.org/gitweb/?p=chromiumos/third_party/autotest.git;a=blob;f=server/site_tests/network_WiFiRoaming/006BeaconLoss;h=35e1c01b952a71ba86c5c977ad5ddd22b676c448;hb=HEAD">http://git.chromium.org/gitweb/?p=chromiumos/third_party/autotest.git;a=blob;f=server/site_tests/network_WiFiRoaming/006BeaconLoss;h=35e1c01b952a71ba86c5c977ad5ddd22b676c448;hb=HEAD</a></div>
<div><br></div><div>The issue is that when the AP is silently taken down (i.e. w/o sending deauth) the client trys to reauth but fails--but never notifies the connection manager over D-bus so it thinks it&#39;s still associated.  I believe when I split the state machine for fast reconnect I had to handle this case in sme.c for reauth failure.</div>
<div><br></div><div>There&#39;s a third test that fails but it&#39;s our problem (003SSIDMultiSwitchBack assumes you can change the txpower on one VIF of a multi-VIF AP setup).</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div class="im"><br>
&gt; As to other changes in our code base that are not in yours; I pulled our<br>
&gt; supplicant code forward to your ToT and it looks like we&#39;ve got 3<br>
&gt; differences:<br>
&gt;<br>
&gt; 1. support for raw psk<br>
&gt; 2. bgscan_simple algorithm changes<br>
&gt; 3. better roaming (but still not complete)<br>
&gt;<br>
&gt; You can find our stuff by searching for commits marked CHROMIUMOS<br>
</div>&gt; here&lt;<a href="http://git.chromium.org/gitweb/?p=chromiumos/third_party/hostap.git;a=summary" target="_blank">http://git.chromium.org/gitweb/?p=chromiumos/third_party/hostap.git;a=summary</a>&gt;<br>
<br>
I actually have a git repository with the latest chromiumos hostap.git<br>
rebased on top on hostap.git master and with patches a bit cleaned up<br>
and merged together to keep things in easier to track state.<br>
<br>
At the moment, it looks like this (the &quot;[NO]&quot; prefix identifies commits<br>
that are not applicable to upstream):<br>
<br>
<br>
Anush Elangovan (1):<br>
      [NO] CHROMIUMOS: Setup code review inheritance<br>
<br>
Nathan Williams (1):<br>
      [NO] CHROMIUMOS: wpa_supplicant: Permit the at_console user access<br>
<br>
Paul Stewart (3):<br>
      CHROMIUMOS: bgscan: Add centralized signal_monitor<br>
      CHROMIUMOS: wpa_supplicant: Refinements to fast-scan backoff<br>
      [NO] CHROMIUMOS: wpa_supplicant: Create presubmit config for wpa_supplicant<br>
<br>
Ryan Cairns (1):<br>
      [NO] CHROMIUMOS: Adds a link from . to hostap.git<br>
<br>
Sam Leffler (11):<br>
      CHROMIUMOS: wpa_supplicant: add fast reconnect support<br>
      CHROMIUMOS: wpa_supplicant: Accept raw PMK in new DBus API<br>
      CHROMIUMOS: wpa_supplicant: filter scan results during fast reconnect<br>
      CHROMIUMOS: wpa_supplicant: handle auth failure during fast reconnect<br>
      wpa_supplicant: add support for tx aborting a scan<br>
      bgscan_simple: mark scans so that tx will abort<br>
      wpa_supplicant: do not expire bss entries when a scan is aborted<br>
      [NO] CHROMIUMOS: wpa_supplicant: change dbus access policy<br>
      [NO] CHROMIUMOS: wpa_supplicant: remove d-bus specification for the old api<br>
      [NO] CHROMIUMOS: do not auto-startup wpa_supplicant<br>
      CHROMIUMOS: wpa_supplicant: improve roaming when noise floor available<br>
<div class="im"><br><br></div></blockquote><div>Wow, thanks, that looks right  I&#39;m actively trying to pull us up to ToT in master and would love to sync up.  The roaming changes are unfinished (think I told you that).</div>
<div><br></div><div>-Sam</div><div> </div></div>