From ab5f8652d31523ecd281c1a5693a90e934180425 Mon Sep 17 00:00:00 2001 From: Jeff Sharkey Date: Mon, 9 Apr 2018 16:15:03 -0600 Subject: [PATCH] Disable roaming sanity checking. We've traced down all code paths where NetworkInfo.isRoaming() and NET_CAPABILITY_NOT_ROAMING can disagree, so we're only left with noise that happens from NetworkAgent race conditions when someone asks for a NetworkState between pending NetworkInfo and NetworkCapabilities updates. We can look at adding a way for a NetworkAgent to update these two objects atomically, but not for this release. Bug: 70174865 Test: builds, boots Change-Id: I830e1fc6dc922e9eb7f8c2698d75181e00aaf7fb --- core/java/android/net/NetworkState.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/core/java/android/net/NetworkState.java b/core/java/android/net/NetworkState.java index b00cb482e7..321f9718ee 100644 --- a/core/java/android/net/NetworkState.java +++ b/core/java/android/net/NetworkState.java @@ -26,6 +26,8 @@ import android.util.Slog; * @hide */ public class NetworkState implements Parcelable { + private static final boolean SANITY_CHECK_ROAMING = false; + public static final NetworkState EMPTY = new NetworkState(null, null, null, null, null, null); public final NetworkInfo networkInfo; @@ -47,7 +49,7 @@ public class NetworkState implements Parcelable { // This object is an atomic view of a network, so the various components // should always agree on roaming state. - if (networkInfo != null && networkCapabilities != null) { + if (SANITY_CHECK_ROAMING && networkInfo != null && networkCapabilities != null) { if (networkInfo.isRoaming() == networkCapabilities .hasCapability(NetworkCapabilities.NET_CAPABILITY_NOT_ROAMING)) { Slog.wtf("NetworkState", "Roaming state disagreement between " + networkInfo