关于 Caused by:.. /proc/net/xt_qtaguid/stats:open failed: ENOENT (No such file or directory)问题的解决
2014-04-18 09:08
931 查看
W/PowerUI ( 2092): unknownintent: Intent { act=android.intent.action.ACTION_POWER_CONNECTEDflg=0x10000010 }
D/dalvikvm( 2027): GC_CONCURRENTfreed 483K, 13% free 8876K/10119K, paused 2ms+3ms
F/BatteryStatsImpl( 2027):problem reading network stats
F/BatteryStatsImpl( 2027):java.lang.IllegalStateException: problem parsing idx 1
F/BatteryStatsImpl( 2027): at com.android.internal.net.NetworkStatsFactory.readNetworkStatsDetail(NetworkStatsFactory.java:300)
F/BatteryStatsImpl( 2027): atcom.android.internal.net.NetworkStatsFactory.readNetworkStatsDetail(NetworkStatsFactory.java:250)
F/BatteryStatsImpl( 2027): at com.android.internal.os.BatteryStatsImpl.getNetworkStatsDetailGroupedByUid(BatteryStatsImpl.java:5734)
F/BatteryStatsImpl( 2027): atcom.android.internal.os.BatteryStatsImpl.doUnplugLocked(BatteryStatsImpl.java:1418)
F/BatteryStatsImpl( 2027): atcom.android.internal.os.BatteryStatsImpl.setOnBatteryLocked(BatteryStatsImpl.java:4335)
F/BatteryStatsImpl( 2027): atcom.android.internal.os.BatteryStatsImpl.setBatteryState(BatteryStatsImpl.java:4394)
F/BatteryStatsImpl( 2027): at com.android.server.am.BatteryStatsService.setBatteryState(BatteryStatsService.java:434)
F/BatteryStatsImpl( 2027): atcom.android.server.BatteryService.processValues(BatteryService.java:252)
F/BatteryStatsImpl( 2027): at com.android.server.BatteryService.update(BatteryService.java:234)
F/BatteryStatsImpl( 2027): atcom.android.server.BatteryService.access$000(BatteryService.java:71)
F/BatteryStatsImpl( 2027): atcom.android.server.BatteryService$1.onUEvent(BatteryService.java:182)
F/BatteryStatsImpl( 2027): atandroid.os.UEventObserver$UEventThread.run(UEventObserver.java:108)
F/BatteryStatsImpl(2027): Caused by: java.io.FileNotFoundException: /proc/net/xt_qtaguid/stats:open failed: ENOENT (No such file or directory)
F/BatteryStatsImpl( 2027): atlibcore.io.IoBridge.open(IoBridge.java:406)
F/BatteryStatsImpl( 2027): atjava.io.FileInputStream.<init>(FileInputStream.java:78)
F/BatteryStatsImpl( 2027): atcom.android.internal.net.NetworkStatsFactory.readNetworkStatsDetail(NetworkStatsFactory.java:269)
F/BatteryStatsImpl( 2027): ... 11 more
F/BatteryStatsImpl( 2027): Causedby: libcore.io.ErrnoException: open failed: ENOENT (No such file or directory)
F/BatteryStatsImpl( 2027): at libcore.io.Posix.open(Native Method)
F/BatteryStatsImpl( 2027): atlibcore.io.BlockGuardOs.open(BlockGuardOs.java:110)
F/BatteryStatsImpl( 2027): atlibcore.io.IoBridge.open(IoBridge.java:390)
F/BatteryStatsImpl( 2027): ... 13 more
^C
W/ThrottleService( 2027): unableto find stats for iface rmnet0
F/NetworkStats( 2027): problemreading network stats
F/NetworkStats( 2027):java.lang.IllegalStateException: problem parsing idx 1
F/NetworkStats( 2027): atcom.android.internal.net.NetworkStatsFactory.readNetworkStatsDetail(NetworkStatsFactory.java:300)
F/NetworkStats( 2027): atcom.android.server.NetworkManagementService.getNetworkStatsUidDetail(NetworkManagementService.java:1282)
F/NetworkStats( 2027): atcom.android.server.net.NetworkStatsService.performPollLocked(NetworkStatsService.java:831)
F/NetworkStats( 2027): atcom.android.server.net.NetworkStatsService.performPoll(NetworkStatsService.java:799)
F/NetworkStats( 2027): atcom.android.server.net.NetworkStatsService.access$100(NetworkStatsService.java:128)
F/NetworkStats( 2027): atcom.android.server.net.NetworkStatsService$3.onReceive(NetworkStatsService.java:633)
F/NetworkStats( 2027): atandroid.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:728)
F/NetworkStats( 2027): at android.os.Handler.handleCallback(Handler.java:605)
F/NetworkStats( 2027): atandroid.os.Handler.dispatchMessage(Handler.java:92)
F/NetworkStats( 2027): at android.os.Looper.loop(Looper.java:137)
F/NetworkStats( 2027): atandroid.os.HandlerThread.run(HandlerThread.java:60)
F/NetworkStats(2027): Caused by: java.io.FileNotFoundException: /proc/net/xt_qtaguid/stats:open failed: ENOENT (No such file or directory)
F/NetworkStats( 2027): atlibcore.io.IoBridge.open(IoBridge.java:406)
F/NetworkStats( 2027): at java.io.FileInputStream.<init>(FileInputStream.java:78)
F/NetworkStats( 2027): atcom.android.internal.net.NetworkStatsFactory.readNetworkStatsDetail(NetworkStatsFactory.java:269)
F/NetworkStats( 2027): ... 10 more
F/NetworkStats( 2027): Causedby: libcore.io.ErrnoException: open failed: ENOENT (No such file or directory)
F/NetworkStats( 2027): at libcore.io.Posix.open(Native Method)
F/NetworkStats( 2027): atlibcore.io.BlockGuardOs.open(BlockGuardOs.java:110)
F/NetworkStats( 2027): atlibcore.io.IoBridge.open(IoBridge.java:390)
F/NetworkStats( 2027): ... 12 more
D/SurfaceFlinger( 1954): Screenabout to return, flinger = 0x1161918
W/NetworkManagementSocketTagger(2027): setKernelCountSet(1000, 1) failed with errno -2
参考文献:
最近在Android4.1.1上调试时logcat信息里有qtaguid相关内容,不了解这个服务的功能,上网搜索了一圈,相关资料太少了,但最终还是发现了一些有价值的资料:
1、在android-3.0Linux kernel (kernel/net/netfilter/xt_qtaguid)里有相关的处理,编译时需把qtaguid和netfilter的filter配置项打开;
2、在Android里有net.qtaguid_enabled变量,设置为1。在源码的system/core/libcutils/qtaguid.c文件里有相关处理。
3、qtaguid的工作原理主要是上层应用的UID提供给kernel来建立tag,使用红黑树来处理,上层可通过/proc/net/xt_qtaguid/stats读取来获取状态,而android源码里libcutils里有qtaguid的接口,用于与kernel连接,打通整个通路,也为其他JAVA和C程序等提供相应的接口,而在上层应用则可以使用NetworkManagementSocketTagger和TrafficStats.setThreadStatsUid()等类及函数来调用处理。
所以在内核中打开:
CONFIG_NETFILTER=y
CONFIG_NETFILTER_ADVANCED=y
CONFIG_NETFILTER_TPROXY=y
CONFIG_NETFILTER_XTABLES=y
CONFIG_NETFILTER_XT_MATCH_QTAGUID=y
CONFIG_NETFILTER_XT_MATCH_QUOTA=y
CONFIG_NETFILTER_XT_MATCH_QUOTA2=y
CONFIG_NETFILTER_XT_MATCH_SOCKET=y
CONFIG_NF_DEFRAG_IPV4=y
CONFIG_IP_NF_IPTABLES=y
CONFIG_IP_NF_FILTER=y
CONFIG_IP_NF_MANGLE=y
CONFIG_IP_NF_RAW=y
CONFIG_NF_DEFRAG_IPV6=y
CONFIG_IP6_NF_QUEUE=y
CONFIG_IP6_NF_IPTABLES=y
CONFIG_IP6_NF_FILTER=y
CONFIG_IP6_NF_RAW=y
也就说打开了内核的防火墙,这个不知道会不会引起其他问题,还没有进一步深究
D/dalvikvm( 2027): GC_CONCURRENTfreed 483K, 13% free 8876K/10119K, paused 2ms+3ms
F/BatteryStatsImpl( 2027):problem reading network stats
F/BatteryStatsImpl( 2027):java.lang.IllegalStateException: problem parsing idx 1
F/BatteryStatsImpl( 2027): at com.android.internal.net.NetworkStatsFactory.readNetworkStatsDetail(NetworkStatsFactory.java:300)
F/BatteryStatsImpl( 2027): atcom.android.internal.net.NetworkStatsFactory.readNetworkStatsDetail(NetworkStatsFactory.java:250)
F/BatteryStatsImpl( 2027): at com.android.internal.os.BatteryStatsImpl.getNetworkStatsDetailGroupedByUid(BatteryStatsImpl.java:5734)
F/BatteryStatsImpl( 2027): atcom.android.internal.os.BatteryStatsImpl.doUnplugLocked(BatteryStatsImpl.java:1418)
F/BatteryStatsImpl( 2027): atcom.android.internal.os.BatteryStatsImpl.setOnBatteryLocked(BatteryStatsImpl.java:4335)
F/BatteryStatsImpl( 2027): atcom.android.internal.os.BatteryStatsImpl.setBatteryState(BatteryStatsImpl.java:4394)
F/BatteryStatsImpl( 2027): at com.android.server.am.BatteryStatsService.setBatteryState(BatteryStatsService.java:434)
F/BatteryStatsImpl( 2027): atcom.android.server.BatteryService.processValues(BatteryService.java:252)
F/BatteryStatsImpl( 2027): at com.android.server.BatteryService.update(BatteryService.java:234)
F/BatteryStatsImpl( 2027): atcom.android.server.BatteryService.access$000(BatteryService.java:71)
F/BatteryStatsImpl( 2027): atcom.android.server.BatteryService$1.onUEvent(BatteryService.java:182)
F/BatteryStatsImpl( 2027): atandroid.os.UEventObserver$UEventThread.run(UEventObserver.java:108)
F/BatteryStatsImpl(2027): Caused by: java.io.FileNotFoundException: /proc/net/xt_qtaguid/stats:open failed: ENOENT (No such file or directory)
F/BatteryStatsImpl( 2027): atlibcore.io.IoBridge.open(IoBridge.java:406)
F/BatteryStatsImpl( 2027): atjava.io.FileInputStream.<init>(FileInputStream.java:78)
F/BatteryStatsImpl( 2027): atcom.android.internal.net.NetworkStatsFactory.readNetworkStatsDetail(NetworkStatsFactory.java:269)
F/BatteryStatsImpl( 2027): ... 11 more
F/BatteryStatsImpl( 2027): Causedby: libcore.io.ErrnoException: open failed: ENOENT (No such file or directory)
F/BatteryStatsImpl( 2027): at libcore.io.Posix.open(Native Method)
F/BatteryStatsImpl( 2027): atlibcore.io.BlockGuardOs.open(BlockGuardOs.java:110)
F/BatteryStatsImpl( 2027): atlibcore.io.IoBridge.open(IoBridge.java:390)
F/BatteryStatsImpl( 2027): ... 13 more
^C
W/ThrottleService( 2027): unableto find stats for iface rmnet0
F/NetworkStats( 2027): problemreading network stats
F/NetworkStats( 2027):java.lang.IllegalStateException: problem parsing idx 1
F/NetworkStats( 2027): atcom.android.internal.net.NetworkStatsFactory.readNetworkStatsDetail(NetworkStatsFactory.java:300)
F/NetworkStats( 2027): atcom.android.server.NetworkManagementService.getNetworkStatsUidDetail(NetworkManagementService.java:1282)
F/NetworkStats( 2027): atcom.android.server.net.NetworkStatsService.performPollLocked(NetworkStatsService.java:831)
F/NetworkStats( 2027): atcom.android.server.net.NetworkStatsService.performPoll(NetworkStatsService.java:799)
F/NetworkStats( 2027): atcom.android.server.net.NetworkStatsService.access$100(NetworkStatsService.java:128)
F/NetworkStats( 2027): atcom.android.server.net.NetworkStatsService$3.onReceive(NetworkStatsService.java:633)
F/NetworkStats( 2027): atandroid.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:728)
F/NetworkStats( 2027): at android.os.Handler.handleCallback(Handler.java:605)
F/NetworkStats( 2027): atandroid.os.Handler.dispatchMessage(Handler.java:92)
F/NetworkStats( 2027): at android.os.Looper.loop(Looper.java:137)
F/NetworkStats( 2027): atandroid.os.HandlerThread.run(HandlerThread.java:60)
F/NetworkStats(2027): Caused by: java.io.FileNotFoundException: /proc/net/xt_qtaguid/stats:open failed: ENOENT (No such file or directory)
F/NetworkStats( 2027): atlibcore.io.IoBridge.open(IoBridge.java:406)
F/NetworkStats( 2027): at java.io.FileInputStream.<init>(FileInputStream.java:78)
F/NetworkStats( 2027): atcom.android.internal.net.NetworkStatsFactory.readNetworkStatsDetail(NetworkStatsFactory.java:269)
F/NetworkStats( 2027): ... 10 more
F/NetworkStats( 2027): Causedby: libcore.io.ErrnoException: open failed: ENOENT (No such file or directory)
F/NetworkStats( 2027): at libcore.io.Posix.open(Native Method)
F/NetworkStats( 2027): atlibcore.io.BlockGuardOs.open(BlockGuardOs.java:110)
F/NetworkStats( 2027): atlibcore.io.IoBridge.open(IoBridge.java:390)
F/NetworkStats( 2027): ... 12 more
D/SurfaceFlinger( 1954): Screenabout to return, flinger = 0x1161918
W/NetworkManagementSocketTagger(2027): setKernelCountSet(1000, 1) failed with errno -2
参考文献:
最近在Android4.1.1上调试时logcat信息里有qtaguid相关内容,不了解这个服务的功能,上网搜索了一圈,相关资料太少了,但最终还是发现了一些有价值的资料:
1、在android-3.0Linux kernel (kernel/net/netfilter/xt_qtaguid)里有相关的处理,编译时需把qtaguid和netfilter的filter配置项打开;
2、在Android里有net.qtaguid_enabled变量,设置为1。在源码的system/core/libcutils/qtaguid.c文件里有相关处理。
3、qtaguid的工作原理主要是上层应用的UID提供给kernel来建立tag,使用红黑树来处理,上层可通过/proc/net/xt_qtaguid/stats读取来获取状态,而android源码里libcutils里有qtaguid的接口,用于与kernel连接,打通整个通路,也为其他JAVA和C程序等提供相应的接口,而在上层应用则可以使用NetworkManagementSocketTagger和TrafficStats.setThreadStatsUid()等类及函数来调用处理。
所以在内核中打开:
CONFIG_NETFILTER=y
CONFIG_NETFILTER_ADVANCED=y
CONFIG_NETFILTER_TPROXY=y
CONFIG_NETFILTER_XTABLES=y
CONFIG_NETFILTER_XT_MATCH_QTAGUID=y
CONFIG_NETFILTER_XT_MATCH_QUOTA=y
CONFIG_NETFILTER_XT_MATCH_QUOTA2=y
CONFIG_NETFILTER_XT_MATCH_SOCKET=y
CONFIG_NF_DEFRAG_IPV4=y
CONFIG_IP_NF_IPTABLES=y
CONFIG_IP_NF_FILTER=y
CONFIG_IP_NF_MANGLE=y
CONFIG_IP_NF_RAW=y
CONFIG_NF_DEFRAG_IPV6=y
CONFIG_IP6_NF_QUEUE=y
CONFIG_IP6_NF_IPTABLES=y
CONFIG_IP6_NF_FILTER=y
CONFIG_IP6_NF_RAW=y
也就说打开了内核的防火墙,这个不知道会不会引起其他问题,还没有进一步深究
相关文章推荐
- 关于nginx报错/usr/share/nginx/html/jiankongshare" failed (2: No such file or directory)的问题解决
- 关于nginx报错/usr/share/nginx/html/jiankongshare" failed (2: No such file or directory)的问题解决
- libcore.io.ErrnoException: open failed: ENOENT (No such file or directory)问题总结
- 关于解决line 1: #!/bin/bash: No such file or directory的问题
- Caused by: libcore.io.ErrnoException: open failed: ENOENT (No such file or d.......
- open failed: ENOENT (No such file or directory). (目录层级问题)
- 关于【error=2,No such file or directory】问题的一种起因与解决方法
- 在VC空项目里添加自定义的预编译头(或关于:无法打开预编译头文件:“Debug/xxx.pch”: No such file or directory的问题的解决)
- 20130221-STM32关于各种头文件No such file or directory的详细解决方法
- Linux执行.sh文件,提示No such file or directory的问题的解决方法
- QT5.5.0在Windows7(64bit)下 出现QApplication: No such file or directory 问题的解决办法
- 关于运行程序时 No such file or directory 的问题
- 解决“makefile:20:config-host.mak:No such file or directory"问题
- 问题解决:安装完ruby却提示[/usr/bin/ruby: No such file or directory]
- 编译 skyeye-1.3.5 出现 glibconfig.h: No such file or directory 问题解决
- libcore.io.ErrnoException: open failed: ENOENT (No such file or directory)
- error: asm/arch/regs-gpio.h: No such file or directory 此类问题的解决办法
- 关于shell脚本提示No such file or directory的解决办法和原因
- gcc编译报错,fatal error: gnu/stubs-soft.h: No such file or directory问题解决!!
- 关于cannot open shared object file: No such file or directory 的解决。