diff options
author | Mukesh Agrawal <quiche@google.com> | 2016-03-03 03:09:23 +0000 |
---|---|---|
committer | Android Partner Code Review <android-gerrit-partner@google.com> | 2016-03-03 03:09:23 +0000 |
commit | 3e3ad8dfb0eddfc98ed21ce51a96a28924fe8c14 (patch) | |
tree | 3706a4a9bb1fef399809b8e4ab9e60a2bc88b133 /service | |
parent | 84f44236019a1ae41739984c12eccdd14ca97e3f (diff) | |
parent | fef1495477206d4cabfc95325d71de41790cf9cc (diff) |
Merge "make ringbuffer size configurable" into mm-wireless-dev
Diffstat (limited to 'service')
3 files changed, 11 insertions, 7 deletions
diff --git a/service/java/com/android/server/wifi/FrameworkFacade.java b/service/java/com/android/server/wifi/FrameworkFacade.java index dab178410..dc94d92ec 100644 --- a/service/java/com/android/server/wifi/FrameworkFacade.java +++ b/service/java/com/android/server/wifi/FrameworkFacade.java @@ -30,8 +30,9 @@ public class FrameworkFacade { return new BaseWifiLogger(); } - public BaseWifiLogger makeRealLogger(WifiStateMachine stateMachine, WifiNative wifiNative) { - return new WifiLogger(stateMachine, wifiNative); + public BaseWifiLogger makeRealLogger( + WifiStateMachine stateMachine, WifiNative wifiNative, int maxRingbufferSizeBytes) { + return new WifiLogger(stateMachine, wifiNative, maxRingbufferSizeBytes); } public int getIntegerSetting(Context context, String name, int def) { diff --git a/service/java/com/android/server/wifi/WifiLogger.java b/service/java/com/android/server/wifi/WifiLogger.java index fde3e05bc..0d358314d 100644 --- a/service/java/com/android/server/wifi/WifiLogger.java +++ b/service/java/com/android/server/wifi/WifiLogger.java @@ -67,8 +67,6 @@ class WifiLogger extends BaseWifiLogger { public static final int REPORT_REASON_SCAN_FAILURE = 6; public static final int REPORT_REASON_USER_ACTION = 7; - public static final int MAX_RING_BUFFER_SIZE_BYTES = 32 * 1024; - /** number of bug reports to hold */ public static final int MAX_BUG_REPORTS = 4; @@ -85,10 +83,13 @@ class WifiLogger extends BaseWifiLogger { private WifiNative.RingBufferStatus mPerPacketRingBuffer; private WifiStateMachine mWifiStateMachine; private final WifiNative mWifiNative; + private final int mMaxRingBufferSizeBytes; - public WifiLogger(WifiStateMachine wifiStateMachine, WifiNative wifiNative) { + public WifiLogger( + WifiStateMachine wifiStateMachine, WifiNative wifiNative, int maxRingBufferSizeBytes) { mWifiStateMachine = wifiStateMachine; mWifiNative = wifiNative; + mMaxRingBufferSizeBytes = maxRingBufferSizeBytes; } @Override @@ -327,7 +328,7 @@ class WifiLogger extends BaseWifiLogger { if (DBG) Log.d(TAG, "RingBufferStatus is: \n" + buffer.name); if (mRingBufferData.containsKey(buffer.name) == false) { mRingBufferData.put(buffer.name, - new ByteArrayRingBuffer(MAX_RING_BUFFER_SIZE_BYTES)); + new ByteArrayRingBuffer(mMaxRingBufferSizeBytes)); } if ((buffer.flag & RING_BUFFER_FLAG_HAS_PER_PACKET_ENTRIES) != 0) { mPerPacketRingBuffer = buffer; diff --git a/service/java/com/android/server/wifi/WifiStateMachine.java b/service/java/com/android/server/wifi/WifiStateMachine.java index 24221ddb0..00bf944be 100644 --- a/service/java/com/android/server/wifi/WifiStateMachine.java +++ b/service/java/com/android/server/wifi/WifiStateMachine.java @@ -1169,7 +1169,9 @@ public class WifiStateMachine extends StateMachine implements WifiNative.WifiPno R.bool.config_wifi_enable_wifi_firmware_debugging); if (enableFirmwareLogs) { - mWifiLogger = facade.makeRealLogger(this, mWifiNative); + int maxRingBufferSizeBytes = mContext.getResources().getInteger( + R.integer.config_wifi_logger_ring_buffer_size_limit_kb) * 1024; + mWifiLogger = facade.makeRealLogger(this, mWifiNative, maxRingBufferSizeBytes); } else { mWifiLogger = facade.makeBaseLogger(); } |