tree cec6344e5ed16f2725b229697fdbcc081e48d975
parent cd164351cd35271712a9149699b99cc0c73ad0f4
author Taoyu Li <taoyl@chromium.org> 1565941421 +0000
committer Commit Bot <commit-bot@chromium.org> 1566000357 +0000

Revert "arc: net: Increase IPv6 provisioning delay by 2 seconds"

This reverts commit bd117998bded9c9ba0cf8a585f083928ca350e39.

Reason for revert: 
We are disabling multi-networking in R76 for IPv6 stability. This change is actually causing CTS failure in single-networking mode (since IPv6 takes too long to provision) so we need to revert it.

BUG=b:135545546
TEST=CTS pass on atlas (w/ exceptions, see buganizer page for detail)

Original change's description:
> arc: net: Increase IPv6 provisioning delay by 2 seconds
> 
> As commented in router_finder, sendto() on an IPPROTO_ICMP6 socket can
> return EADDRNOTAVAIL if done too quickly after preparing the socket. As
> of now the reason is still unknown as EADDRNOTAVAIL is not a documented
> error case of sendto(). Investigations in the linux kernel sources for
> the socket protocol handler of IPPROTO_ICMP6 did not revealed anything.
> One possibility which was not explored was a possible bug in the third
> party ndp library.
> 
> The failure of sendto() on EADDRNOTAVAIL can prevent IPv6 provisioning
> for ARC, which is a user facing issue and a source of spurious errors
> for CTS verifications. This patch adds 2 seconds to the provisioning
> delay in order to reduce the failure rate.
> 
> The impact is limited to IPv6 only networks since on IPv4 only networks
> or dual stack networks, connectivity over IPv4 is available typically
> almost immediately thanks to the host network already being provisioned.
> 
> BUG=b:135545546
> TEST=Without the additional delay, IPv6 provisioning on login can fail
> up to 20~25% of the time on eve with ARC multinetworking on (over ~20
> trials). With the additional delay, no failure were observed over 10
> trials.
> 
> Change-Id: I0c086a54a759cd6de23d6b4aa28a0fa3745fbf65
> Reviewed-on: https://chromium-review.googlesource.com/1669384
> Tested-by: Hugo Benichi <hugobenichi@google.com>
> Commit-Ready: ChromeOS CL Exonerator Bot <chromiumos-cl-exonerator@appspot.gserviceaccount.com>
> Legacy-Commit-Queue: Commit Bot <commit-bot@chromium.org>
> Reviewed-by: Garrick Evans <garrick@chromium.org>
> Reviewed-by: Hugo Benichi <hugobenichi@google.com>
> Reviewed-by: Kazuhiro Inaba <kinaba@chromium.org>
> (cherry picked from commit ec18bf8a74461e056a356fa209cfb40dfcdcb520)
> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform2/+/1673962
> Commit-Queue: Hugo Benichi <hugobenichi@google.com>
> Auto-Submit: Hugo Benichi <hugobenichi@google.com>

Bug: b:135545546
Change-Id: I09110502e225d68354780540919d29eb2f69a017
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform2/+/1757745
Tested-by: Taoyu Li <taoyl@chromium.org>
Reviewed-by: Garrick Evans <garrick@chromium.org>
Reviewed-by: Kazuhiro Inaba <kinaba@chromium.org>
Reviewed-by: Elijah Taylor <elijahtaylor@chromium.org>
Commit-Queue: Kazuhiro Inaba <kinaba@chromium.org>
Commit-Queue: Elijah Taylor <elijahtaylor@chromium.org>
Auto-Submit: Taoyu Li <taoyl@chromium.org>
