Snap for 5180536 from b8c3b61022636c880f4e5a5e6a71430552025f98 to pi-platform-release

Change-Id: Icc5d32680bf08d75f01937a71eb845b89018cce6
diff --git a/java/com/android/server/ethernet/EthernetNetworkFactory.java b/java/com/android/server/ethernet/EthernetNetworkFactory.java
index de0a691..b35e3cf 100644
--- a/java/com/android/server/ethernet/EthernetNetworkFactory.java
+++ b/java/com/android/server/ethernet/EthernetNetworkFactory.java
@@ -33,6 +33,7 @@
 import android.net.StringNetworkSpecifier;
 import android.net.ip.IpClient;
 import android.net.ip.IpClient.ProvisioningConfiguration;
+import android.net.util.InterfaceParams;
 import android.os.Handler;
 import android.text.TextUtils;
 import android.util.Log;
@@ -329,7 +330,11 @@
             // This cannot happen due to provisioning timeout, because our timeout is 0. It can only
             // happen if we're provisioned and we lose provisioning.
             stop();
-            start();
+            // If the interface has disappeared provisioning will fail over and over again, so
+            // there is no point in starting again
+            if (null != InterfaceParams.getByName(name)) {
+                start();
+            }
         }
 
         void updateLinkProperties(LinkProperties linkProperties) {