Hi

I am finding some issues with using log.wtf in case of exceptions
occurred.

In the defconfig file haven't enabled the
"CONFIG_NETFILTER_XT_MATCH_QTAGUID" and this is resulting in the stats
file not getting created and resulting in the following exception.

01-02 16:31:25.859 32500 32516 F BatteryStatsImpl: problem reading
network stats
01-02 16:31:25.859 32500 32516 F BatteryStatsImpl:
java.lang.IllegalStateException: problem parsing line: null
01-02 16:31:25.859 32500 32516 F BatteryStatsImpl:      at
com.android.internal.net.NetworkStatsFactory.readNetworkStatsDetail(NetworkStatsFactory.java:
313)
01-02 16:31:25.859 32500 32516 F BatteryStatsImpl:      at
com.android.internal.net.NetworkStatsFactory.readNetworkStatsDetail(NetworkStatsFactory.java:
247)
01-02 16:31:25.859 32500 32516 F BatteryStatsImpl:      at
com.android.internal.os.BatteryStatsImpl.getNetworkStatsDetailGroupedByUid(BatteryStatsImpl.java:
5734)
01-02 16:31:25.859 32500 32516 F BatteryStatsImpl:      at
com.android.internal.os.BatteryStatsImpl.access
$100(BatteryStatsImpl.java:76)
01-02 16:31:25.859 32500 32516 F BatteryStatsImpl:      at
com.android.internal.os.BatteryStatsImpl
$Uid.computeCurrentTcpBytesReceived(BatteryStatsImpl.java:2457)
01-02 16:31:25.859 32500 32516 F BatteryStatsImpl:      at
com.android.internal.os.BatteryStatsImpl
$Uid.getTcpBytesReceived(BatteryStatsImpl.java:2446)
01-02 16:31:25.859 32500 32516 F BatteryStatsImpl:      at
com.android.internal.os.BatteryStatsImpl.writeSummaryToParcel(BatteryStatsImpl.java:
5437)
01-02 16:31:25.859 32500 32516 F BatteryStatsImpl:      at
com.android.internal.os.BatteryStatsImpl.writeLocked(BatteryStatsImpl.java:
4836)
01-02 16:31:25.859 32500 32516 F BatteryStatsImpl:      at
com.android.internal.os.BatteryStatsImpl.writeAsyncLocked(BatteryStatsImpl.java:
4818)
01-02 16:31:25.859 32500 32516 F BatteryStatsImpl:      at
com.android.server.am.ActivityManagerService.updateCpuStatsNow(ActivityManagerService.java:
1545)
01-02 16:31:25.859 32500 32516 F BatteryStatsImpl:      at
com.android.server.am.ActivityManagerService
$3.run(ActivityManagerService.java:1427)
01-02 16:31:25.859 32500 32516 F BatteryStatsImpl: Caused by:
java.io.FileNotFoundException: /proc/net/xt_qtaguid/stats: open
failed: ENOENT (No such file or directory)
F BatteryStatsImpl: Caused by: java.io.FileNotFoundException: /proc/
net/xt_qtaguid/stats: open failed: ENOENT (No such file or directory)


In the BatteryStatsImpl.java file  there is a file not found exception
and it is getting logged with log.wtf and internally it kills the
systemserver process.

 private NetworkStats getNetworkStatsDetailGroupedByUid() {
   5729         // NOTE: calls from BatteryStatsService already hold
this lock
   5730         synchronized (this) {
   5731             if (mNetworkDetailCache == null
   5732                     ||
mNetworkDetailCache.getElapsedRealtimeAge() > SECOND_IN_MILLIS) {
   5733                 try {
   5734                     mNetworkDetailCache = mNetworkStatsFactory
 
5735                             .readNetworkStatsDetail().groupedByUid();
   5736                 } catch (IllegalStateException e) {
   5737                     // log problem and return empty object
   5738                     Log.wtf(TAG, "problem reading network
stats", e);
   5739                     mNetworkDetailCache = new
NetworkStats(SystemClock.elapsedRealtime(), 0);
   5740                 }
   5741             }
   5742             return mNetworkDetailCache

can anyone let me know
1. what is the need for killing the systemserver process with log.wtf
in case of file not found exception is observed. Is getting stats that
harmful?
2. Is it mandatory to enable CONFIG_NETFILTER_XT_MATCH_QTAGUID config
option or can i change exception logging to normal.

Thank you
Adi

-- 
unsubscribe: [email protected]
website: http://groups.google.com/group/android-porting

Reply via email to