Temporarily disable wifi logger
It is causing memory corruption; we'll enable it after
that is dealt with.
Bug: 21730601
Bug: 21668637
Change-Id: I0c0d9410b7498f80d937ed4cf494e569d3e51cd4
diff --git a/service/java/com/android/server/wifi/WifiLogger.java b/service/java/com/android/server/wifi/WifiLogger.java
index 168a9a4..91711eb 100644
--- a/service/java/com/android/server/wifi/WifiLogger.java
+++ b/service/java/com/android/server/wifi/WifiLogger.java
@@ -92,6 +92,10 @@
}
public synchronized void startLogging(boolean verboseEnabled) {
+ if (verboseEnabled == false) {
+ Log.d(TAG, "Not enabling logger to work around issues");
+ return;
+ }
WifiNative.setLoggingEventHandler(mHandler);
if (verboseEnabled) {
mLogLevel = VERBOSE_LOG_WITH_WAKEUP;
@@ -125,10 +129,12 @@
}
public synchronized void stopLogging() {
- WifiNative.setLoggingEventHandler(null);
- stopLoggingAllBuffers();
- mRingBuffers = null;
- mLogLevel = VERBOSE_NO_LOG;
+ if (mLogLevel != VERBOSE_NO_LOG) {
+ WifiNative.setLoggingEventHandler(null);
+ stopLoggingAllBuffers();
+ mRingBuffers = null;
+ mLogLevel = VERBOSE_NO_LOG;
+ }
}
public synchronized void captureBugReportData(int reason) {
@@ -372,15 +378,17 @@
report.errorCode = errorCode;
report.time = System.currentTimeMillis();
- for (WifiNative.RingBufferStatus buffer : mRingBuffers) {
- /* this will push data in mRingBuffers */
- WifiNative.getRingBufferData(buffer.name);
- LimitedCircularArray<byte[]> data = mRingBufferData.get(buffer.name);
- byte[][] buffers = new byte[data.size()][];
- for (int i = 0; i < data.size(); i++) {
- buffers[i] = data.get(i).clone();
+ if (mRingBuffers != null) {
+ for (WifiNative.RingBufferStatus buffer : mRingBuffers) {
+ /* this will push data in mRingBuffers */
+ WifiNative.getRingBufferData(buffer.name);
+ LimitedCircularArray<byte[]> data = mRingBufferData.get(buffer.name);
+ byte[][] buffers = new byte[data.size()][];
+ for (int i = 0; i < data.size(); i++) {
+ buffers[i] = data.get(i).clone();
+ }
+ report.ringBuffers.put(buffer.name, buffers);
}
- report.ringBuffers.put(buffer.name, buffers);
}
if (captureFWDump) {