Add logging to track down bug
bug:8377625
Change-Id: Ifd0c4081a2f1238dbbc39c6904b993e2fb95455a
diff --git a/core/java/android/net/DhcpStateMachine.java b/core/java/android/net/DhcpStateMachine.java
index fd22b10..f140282 100644
--- a/core/java/android/net/DhcpStateMachine.java
+++ b/core/java/android/net/DhcpStateMachine.java
@@ -77,7 +77,7 @@
RENEW
};
- private String mInterfaceName;
+ private final String mInterfaceName;
private boolean mRegisteredForPreDhcpNotification = false;
private static final int BASE = Protocol.BASE_DHCP;
@@ -349,6 +349,7 @@
private boolean runDhcp(DhcpAction dhcpAction) {
boolean success = false;
DhcpResults dhcpResults = new DhcpResults();
+ dhcpResults.linkProperties.mLogMe = true;
if (dhcpAction == DhcpAction.START) {
/* Stop any existing DHCP daemon before starting new */
diff --git a/core/java/android/net/LinkProperties.java b/core/java/android/net/LinkProperties.java
index 5d13a18..9292e5f 100644
--- a/core/java/android/net/LinkProperties.java
+++ b/core/java/android/net/LinkProperties.java
@@ -20,6 +20,7 @@
import android.os.Parcelable;
import android.os.Parcel;
import android.text.TextUtils;
+import android.util.Log;
import java.net.InetAddress;
import java.net.UnknownHostException;
@@ -57,6 +58,7 @@
private String mDomains;
private Collection<RouteInfo> mRoutes = new ArrayList<RouteInfo>();
private ProxyProperties mHttpProxy;
+ public boolean mLogMe;
public static class CompareResult<T> {
public Collection<T> removed = new ArrayList<T>();
@@ -75,6 +77,7 @@
public LinkProperties() {
clear();
+ mLogMe = false;
}
// copy constructor instead of clone
@@ -91,6 +94,14 @@
}
public void setInterfaceName(String iface) {
+ if (mLogMe) {
+ Log.d("LinkProperties", "setInterfaceName from " + mIfaceName +
+ " to " + iface);
+ for (StackTraceElement e : Thread.currentThread().getStackTrace()) {
+ Log.d("LinkProperties", " " + e.toString());
+ }
+ }
+
mIfaceName = iface;
ArrayList<RouteInfo> newRoutes = new ArrayList<RouteInfo>(mRoutes.size());
for (RouteInfo route : mRoutes) {
@@ -166,6 +177,13 @@
}
public void clear() {
+ if (mLogMe) {
+ Log.d("LinkProperties", "clear from " + mIfaceName);
+ for (StackTraceElement e : Thread.currentThread().getStackTrace()) {
+ Log.d("LinkProperties", " " + e.toString());
+ }
+ }
+
mIfaceName = null;
mLinkAddresses.clear();
mDnses.clear();