]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
Increase channel delay to 100ms
authorIrfan Sheriff <isheriff@google.com>
Wed, 17 Oct 2012 04:40:46 +0000 (21:40 -0700)
committerJouni Malinen <j@w1.fi>
Sun, 26 Oct 2014 16:08:58 +0000 (18:08 +0200)
There is an inherent flaw in the p2p protocol design where an ACK loss right
before channel switch leads to peers being out of sync.

A work around of 50ms was added persistent case, but it turns out in heavy lossy
conditions that is not enough. Increase it to 100ms.

Experimental evaluation showed 100ms improves the reliability of p2p persistence
reinvocation.

Bug: 7359500
Change-Id: I73ab1b64e32b87101e95b0e487c90818c2c0aaf3

wpa_supplicant/p2p_supplicant.c

index 6271425a0c217ab5a63550412355dca3671ae2d2..e71f3fd677c84ee3845a40a4158c96244551b932 100644 (file)
@@ -3433,9 +3433,15 @@ static void wpas_invitation_result(void *ctx, int status, const u8 *bssid,
         * the persistent group so that we will remain on the current channel to
         * acknowledge any possible retransmission from the peer.
         */
+#ifndef ANDROID_P2P
        wpa_dbg(wpa_s, MSG_DEBUG, "P2P: 50 ms wait on current channel before "
                "starting persistent group");
        os_sleep(0, 50000);
+#else
+       wpa_dbg(wpa_s, MSG_DEBUG, "P2P: 100 ms wait on current channel before "
+               "starting persistent group");
+       os_sleep(0, 100000);
+#endif
 
        if (neg_freq > 0 && ssid->mode == WPAS_MODE_P2P_GO &&
            freq_included(channels, neg_freq))