summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 54b5f36)
raw | patch | inline | side by side (parent: 54b5f36)
author | Eyal Shapira <eyal@wizery.com> | |
Mon, 3 Sep 2012 23:36:22 +0000 (02:36 +0300) | ||
committer | Eyal Shapira <eyal@wizery.com> | |
Tue, 4 Sep 2012 17:50:45 +0000 (20:50 +0300) |
Disabling auto arp actually causes FW resources allocation
and it's better to avoid that unless an arp filter was
already configured (i.e. the interface had an IP configured).
This also prevents exceeding the FW arp filters limit (2)
in certain scenarios. Once such case which poses a problem
is having a P2P_GO with an associated client + a connected STA
concurrently. Once you disconnect the GO, for a brief moment
the interface is changed to STA before removal. This leads to
having 3 STA interfaces (the actual STA, P2P device and the
disconnected GO which turned into a STA) and would attempt
allocating 3 FW arp filters which fails.
Signed-off-by: Eyal Shapira <eyal@wizery.com>
and it's better to avoid that unless an arp filter was
already configured (i.e. the interface had an IP configured).
This also prevents exceeding the FW arp filters limit (2)
in certain scenarios. Once such case which poses a problem
is having a P2P_GO with an associated client + a connected STA
concurrently. Once you disconnect the GO, for a brief moment
the interface is changed to STA before removal. This leads to
having 3 STA interfaces (the actual STA, P2P device and the
disconnected GO which turned into a STA) and would attempt
allocating 3 FW arp filters which fails.
Signed-off-by: Eyal Shapira <eyal@wizery.com>
drivers/net/wireless/wl12xx/main.c | patch | blob | history |
index e4d3f8fa1d0d517447d0a99c25057c5c7e051e58..1b148b8a1ade73c84a86bf0d05596519a5bbdc6f 100644 (file)
(ACX_ARP_FILTER_ARP_FILTERING |
ACX_ARP_FILTER_AUTO_ARP),
addr);
- } else {
+ } else if (wlvif->ip_addr) {
wlvif->ip_addr = 0;
ret = wl1271_acx_arp_ip_filter(wl, wlvif, 0, addr);
}