Aller au contenu

DeGRuS 4.2.2 : Tests pour résoudre les derniers problèmes


Recommended Posts

Salut,

   J'avais cité dans un autre thread le fait que l'insertion d'un driver kernel "insmod mtk_stp_bt.ko" échoue:

<4>[ 7777.748496] (0)[3138:insmod]mtk_stp_bt: Unknown symbol mtk_wcn_wmt_msgcb_unreg (err 0)
<4>[ 7777.749500] (0)[3138:insmod]mtk_stp_bt: Unknown symbol mtk_wcn_stp_is_rxqueue_empty (err 0)
<4>[ 7777.750542] (0)[3138:insmod]mtk_stp_bt: Unknown symbol mtk_wcn_stp_send_data (err 0)
<4>[ 7777.751507] (0)[3138:insmod]mtk_stp_bt: Unknown symbol mtk_wcn_wmt_hwver_get (err 0)
<4>[ 7777.752469] (0)[3138:insmod]mtk_stp_bt: Unknown symbol mtk_wcn_wmt_func_off (err 0)
<4>[ 7777.753430] (0)[3138:insmod]mtk_stp_bt: Unknown symbol mtk_wcn_stp_set_bluez (err 0)
<4>[ 7777.754390] (0)[3138:insmod]mtk_stp_bt: Unknown symbol mtk_wcn_wmt_func_on (err 0)
<4>[ 7777.755336] (0)[3138:insmod]mtk_stp_bt: Unknown symbol mtk_wcn_stp_receive_data (err 0)
<4>[ 7777.756338] (0)[3138:insmod]mtk_stp_bt: Unknown symbol mtk_wcn_stp_register_event_cb (err 0)
<4>[ 7777.757386] (0)[3138:insmod]mtk_stp_bt: Unknown symbol mtk_wcn_wmt_msgcb_reg (err 0)
<4>[ 7777.758410] (0)[3138:insmod]mtk_stp_bt: Unknown symbol mtk_wcn_stp_is_ready (err 0)
<7>[ 7777.759863] (0)[3138:insmod][3138:insmod] exit
<7>[ 7777.760055] (0)[3138:insmod][3138:insmod] sig 17 to [2620:sh]

 

Je viens de regarder le code source du kernel de wiko (https://github.com/wiko-sources/cink-slim/tree/master/mediatek/source/kernel/drivers/combo/drv_bt/linux) et ce que je peux voir est que le kernel intégré dans cette 4.2.2 a été compilé sans l'option MTK_COMBO_SUPPORT (driver combo dans la branche master) ce qui explique les erreurs lors de l'insertion du module.

Est-ce que quelqu'un pourrait me dire si pour la 4.1.1 ce flag est activé ou pas ? Est-ce que pour les chipset du Slim normal ce flag est requis ?

En effet, ce flag a une influence majeure sur la partie NVRAM (voir le fichier CFG_BT_Default.h - https://github.com/wiko-sources/cink-slim/blob/master/mediatek/custom/common/cgen/cfgdefault/CFG_BT_Default.h).

 

Questions

* Est-ce que le kernel disponible sous https://forum.frandroid.com/topic/137920-centralisation-des-tutos-de-compilation-du-kernel-wiko/ est compatible avec la 4.2.2 ? Peut-être que nous avons besoin de recompiler le kernel pour nos besoins.

* C'est quoi le COMBO: un chip ? Est-ce applicable ou nom pour le SLIM 1ère génération

 

Nouveau point

J'ai trouvé  une différence de taille entre la 4.1.1 et la 4.2.2: le service bluetoothd n'est pas lancé !

 

4.1.1

root@android:/ # ps | grep blue
bluetooth 107   1     1640   564   c00f6348 400ccb58 S /system/bin/dbus-daemon
bluetooth 412   1     1112   300   c006b2a8 40145390 S /system/bin/brcm_patchram_plus
bluetooth 479   1     2552   1112  c00f6348 400c6b58 S /system/bin/bluetoothd
u0_a2     7148  102   294340 25320 ffffffff 40135ae0 S com.android.bluetooth

root@android:/ # ps | grep bt
u0_a19    533   102   292344 20140 ffffffff 40135ae0 S com.broadcom.bt.app.fm

4.2.2

root@android:/ # ps | grep blue
bluetooth 117   1     1572   744   c00f6348 4009e50c S /system/bin/dbus-daemon
bluetooth 126   1     3824   900   ffffffff 4020f6fc S /system/bin/mtkbt
u0_a46    653   109   352108 29544 ffffffff 4013c494 S com.mediatek.bluetooth

 

En le lançant manuellement sur la 4.2.2, on tombe sur le problème des libs manquantes. Cependant, même en les mettant en place le deamon n'est pas lancé!

 

Note

Je suis toujours à la recherche de la cause racine du problème et ce n'est pas évident de se retrouver ;)

 

Merci bien.

Modifié par new_profile
Lien vers le commentaire
Partager sur d’autres sites

A ma connaissance, le seul kernel fourni par wiko est un kernel 4.0.4. S'il y a lieu de recompiler un kernel 4.2.2, cela va être très problématique car nous ne disposons pas des sources.

 

J'espère vraiment que vous allez avancer sur les derniers composants non fonctionnels. @+

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

Je pense que MTK_COMBO_SUPPORT ne doit pas etre défini car le slim a la différence des autres (king, peax) utilise des composants broadcom pour le Bluetooth et GPS : BCM 4330 et BCM 4751 (sauf si quelqu'un me contredit !).

Il y a peut etre un autre souci sur le boot.img qui lance les services (je ne sais toujours pas quels sont sont les vrais fichiers utilisés )

Le service bluetoothd est déclaré (mais arreter) dans init.rc et advanced.meta.init.rc dans la 4.1

service bluetoothd /system/bin/bluetoothd -n

class main

socket bluetooth stream 660 bluetooth bluetooth

socket dbus_bluetooth stream 660 bluetooth bluetooth

# init.rc does not yet support applying capabilities, so run as root and

# let bluetoothd drop uid to bluetooth with the right linux capabilities

group bluetooth net_bt_admin misc

disabled

Dans la modif que j'ai fait sur le boot.img de la 4.2.2, j'ai également repris ces lignes

J'ai déjà rajouter dans mes tests les lib manquantes mais cela ne change rien.

(Je vais ressayer)

Pour la librairie "libandroid_runtime.so", effectivement c'est elle qui définie mtk_bt_enable

Que le Slim ne devrait pas utiliser.

J'ai pris une rom 4.2.2 d'une tablette utilisant le même composant Bluetooth et on trouve les fichiers dans lib:

libbluedroid.so

libbluetooth_jni.so

libbluetooth_mtk.so

libbt-hci.so

libbt-utils.so

libbt-vendor.so

et dans le répertoire hw

bluetooth.default.so

Mais le fichier libandroid_runtime.so n'est évidemment pas compatible avec le slim

Je pense que sans une recompilation spécifique pour le slim cela va etre compliqué.

Edit makefile du wiko slim (source ICS), ce qui confirma les différences

# Disable MTK Combo chip

MTK_COMBO_SUPPORT=no

MTK_COMBO_CHIP=

# Disable MTK GPS and enable Broadcom GPS

BCM_GPS_SUPPORT=yes

MTK_GPS_SUPPORT=no

MTK_GPS_CHIP=

MTK_AGPS_APP=no

# Disable MTK WiFi and enable Broadcom WiFi

BCM_WLAN_SUPPORT=yes

MTK_WLAN_SUPPORT=no

MTK_WLAN_CHIP=

MTK_WIFI_P2P_SUPPORT=no

MTK_WIFI_HOTSPOT_SUPPORT=no

MTK_WAPI_SUPPORT=no

# Disable MTK FM and enable Broadcom FM

BCM_FM_SUPPORT=yes

MTK_FMRADIO_APP=no

MTK_FM_CHIP=BCM4330_FM

MTK_FM_RECORDING_SUPPORT=no

MTK_FM_RX_SUPPORT=no

MTK_FM_SHORT_ANTENNA_SUPPORT=no

MTK_FM_SUPPORT=no

MTK_FM_TX_AUDIO=FM_ANALOG_OUTPUT

MTK_FM_TX_SUPPORT=no

CUSTOM_KERNEL_FM=

Modifié par steveJC
Lien vers le commentaire
Partager sur d’autres sites

Petite question de béotien et sans doute hors-ujet pour ceux qui savent:

le kernel 3.4.0 (donc compatible JB4.2) installé par Wiko sur JB4.1 lors la dernière maj OTA (celle de mi juillet) n'est pas utilisable en l'état sans les codes sources ?

Lien vers le commentaire
Partager sur d’autres sites

Petite question de béotien et sans doute hors-ujet pour ceux qui savent:

le kernel 3.4.0 (donc compatible JB4.2) installé par Wiko sur JB4.1 lors la dernière maj OTA (celle de mi juillet) n'est pas utilisable en l'état sans les codes sources ?

Il n'y a pas eu de nouveau kernel

seul des fichiers systeme ont été modifié

Le kernel wiko de JB est un 3.4.0

Modifié par steveJC
Lien vers le commentaire
Partager sur d’autres sites

Il n'y a pas eu de nouveau kernel

seul des fichiers systeme ont été modifié

Je suis en JB stock Wiko (donc 4.1) et depuis la dernière maj OTA le menu "A propos du téléphone" m'indique que je suis en kernel 3.4.0 (donc à priori celui pour 4.2).

Modifié par pepsi
Lien vers le commentaire
Partager sur d’autres sites

Salut,

   Je viens de décompresser et de regarder la diff entre les deux zImage de la 4.1.1 et de la 4.2.2 (de la rom S1 de Degrus), la taille est semblable et ils sont identiques sauf sur 2 octets:

 

4.2.2

Offset      0  1  2  3  4  5  6  7   8  9 10 11 12 13 14 15
00000000   88 16 88 58 00 3E 36 00  4B 45 52 4E 45 4C 00 00   ˆ.ˆX.>6.KERNEL..

 

4.1.1

Offset      0  1  2  3  4  5  6  7   8  9 10 11 12 13 14 15
00000000   88 16 88 58 40 39 36 00  4B 45 52 4E 45 4C 00 00   ˆ.ˆX@96.KERNEL..

 

Cependant, après le post de SteveJC, je suis d'accord que fort probable une recompilation du noyau est non-nécessaire.

Lien vers le commentaire
Partager sur d’autres sites

Pour résumer le souci c'est que les librairies actuelles (libandroid_runtime.so, FMradio.apk, MTKBluetooth.apk et peut etre d'autres) ne sont pas compatibles avec le Slim. (compiler avec les mauvaises options du SLIM)

 

Pour les APK, on peut prendre celle de la 4.1.

 

Mais pour les librairies, that is the question !

 

Et il n' y a pas d'autres 4.2.2 officielles compatibles

 

 

Par contre cela a fonctionné pour le WIFI donc il y a peut etre un espoir ;)

Modifié par steveJC
Lien vers le commentaire
Partager sur d’autres sites

@STEVEJC,

 

La raison pour laquelle le service ne monte pas est à mon avis un accès au fichier de socket sous "/dev/socket":

==> Pas de "dbus_bluetooth" et de "bluetooth" relatif au:

socket bluetooth stream 660 bluetooth bluetooth
socket dbus_bluetooth stream 660 bluetooth bluetooth

4.1.1

root@android:/dev/socket $ ls -al
srw-rw---- bluetooth bluetooth          2013-10-08 11:55 bluetooth
srw-rw---- bluetooth bluetooth          2013-10-08 11:55 dbus
srw-rw---- bluetooth bluetooth          2013-10-08 11:55 dbus_bluetooth
srw-rw---- root     inet              2013-10-08 11:55 dnsproxyd
srw-rw---- gps      system            2013-10-08 11:55 gps
srw------- system   system            2013-10-08 11:55 installd
srw-rw-rw- root     root              2013-10-08 11:55 keystore
srw-rw---- root     system            2013-10-08 11:55 mdns
srw-rw---- root     system            2013-10-08 11:55 netd
srw-rw-r-- root     inet              2013-10-08 11:55 netdiag
srw-rw-rw- root     root              2013-10-08 11:55 property_service
srw-rw---- root     radio             2013-10-08 11:55 rild
srw-rw---- root     radio             2013-10-08 11:55 rild-atci
srw-rw-rw- radio    system            2013-10-08 11:55 rild-debug
srw-rw---- radio    system            2013-10-08 11:55 rild-mtk-modem
srw-rw---- radio    net_bt            2013-10-08 11:55 rild-mtk-ut
srw-rw---- radio    net_bt            2013-10-08 11:55 rild-mtk-ut-2
srw-rw---- root     radio             2013-10-08 11:55 rild2
srw-rw---- media    system            2013-10-08 11:55 soc_vt_stk
srw-rw---- media    system            2013-10-08 11:55 soc_vt_svc
srw-rw---- media    system            2013-10-08 11:55 soc_vt_tcv
srw-rw---- root     mount             2013-10-08 11:55 vold
srw-rw---- root     system            2013-10-08 11:55 zygote
4.2.2

root@android:/dev/socket # ls -al
srw-rw---- system   system            2013-10-08 15:37 adbd
srw-rw---- bluetooth net_bt            2013-10-08 15:37 bt.a2dp.stream
srw-rw---- bluetooth net_bt            2013-10-08 15:37 bt.int.adp
srw-rw---- bluetooth bluetooth          2013-10-08 15:37 dbus
srw-rw---- root     inet              2013-10-08 15:37 dnsproxyd
srw-rw---- gps      system            2013-10-08 15:37 gps
srw-rw---- root     system            2013-10-08 15:37 hald
srw------- system   system            2013-10-08 15:37 installd
srw-rw-rw- root     root              2013-10-08 15:37 keystore
srw-rw---- root     system            2013-10-08 15:37 mdns
srw-rw---- root     system            2013-10-08 15:37 netd
srw-rw---- root     inet              2013-10-08 15:37 netdiag
srw-rw-rw- root     root              2013-10-08 15:37 property_service
srw-rw---- root     radio             2013-10-08 15:37 rild
srw-rw---- root     radio             2013-10-08 15:37 rild-atci
srw-rw---- radio    system            2013-10-08 15:37 rild-debug
srw-rw---- radio    system            2013-10-08 15:37 rild-mtk-modem
srw-rw---- radio    net_bt            2013-10-08 15:37 rild-mtk-ut
srw-rw---- radio    net_bt            2013-10-08 15:37 rild-mtk-ut-2
srw-rw---- root     radio             2013-10-08 15:37 rild2
srw-rw---- media    system            2013-10-08 15:37 soc_vt_stk
srw-rw---- media    system            2013-10-08 15:37 soc_vt_svc
srw-rw---- media    system            2013-10-08 15:37 soc_vt_tcv
srw-rw---- root     mount             2013-10-08 15:37 vold
srw-rw---- root     system            2013-10-08 15:37 zygote

Par contre, la présence des 2 autres fichiers "bt.int.adp" et "bt.a2dp.stream" m'intrigue car ça dénote le fait que le service "mtkbt" ne s'est pas arrété ou bien son lancement bloque un truc.

 

Après avoir mis les 2 fichiers "libglib.so" et "libchip_state.so", voila les traces qui bloque le lancement du service bluetoothd:

 

root@android:/system/etc/permissions # /system/bin/bluetoothd -n -d
bluetoothd[2015]: Bluetooth deamon 4.93
bluetoothd[2015]: external/bluetooth/bluez/src/main.c:parse_config() parsing main.conf
bluetoothd[2015]: external/bluetooth/bluez/src/main.c:parse_config() discovto=120
bluetoothd[2015]: external/bluetooth/bluez/src/main.c:parse_config() pairto=0
bluetoothd[2015]: external/bluetooth/bluez/src/main.c:parse_config() pageto=8192
bluetoothd[2015]: external/bluetooth/bluez/src/main.c:parse_config() name=%m
bluetoothd[2015]: external/bluetooth/bluez/src/main.c:parse_config() class=0x40020C
bluetoothd[2015]: external/bluetooth/bluez/src/main.c:parse_config() discov_interval=30
bluetoothd[2015]: external/bluetooth/bluez/src/main.c:parse_config() deviceid=android:generic:1.5
bluetoothd[2015]: external/bluetooth/bluez/src/main.c:parse_config() default_link_policy=7
bluetoothd[2015]: Starting SDP server
bluetoothd[2015]: opening L2CAP socket: Operation not permitted
bluetoothd[2015]: Server initialization failed
bluetoothd[2015]: external/bluetooth/bluez/src/plugin.c:plugin_init() Loading builtin plugins
bluetoothd[2015]: external/bluetooth/bluez/src/plugin.c:add_plugin() Loading hciops plugin
bluetoothd[2015]: external/bluetooth/bluez/src/plugin.c:plugin_init() Loading plugins /system/lib/bluez-plugin
bluetoothd[2015]: external/bluetooth/bluez/src/plugin.c:add_plugin() Loading audio plugin
bluetoothd[2015]: external/bluetooth/bluez/src/plugin.c:add_plugin() Loading input plugin
bluetoothd[2015]: external/bluetooth/bluez/src/plugin.c:add_plugin() Loading network plugin
bluetoothd[2015]: Failed to open control socket: Operation not permitted (1)
bluetoothd[2015]: Can't init bnep module
bluetoothd[2015]: Failed to init network plugin
bluetoothd[2015]: external/bluetooth/bluez/plugins/hciops.c:hciops_init()
bluetoothd[2015]: external/bluetooth/bluez/plugins/hciops.c:hciops_setup()
bluetoothd[2015]: Can't open HCI socket: Operation not permitted (1)
bluetoothd[2015]: adapter_ops_setup failed
A investiguer

 

Edit 1

D'après https://groups.google.com/forum/#!msg/pandaboard/xyywEhFEwV8/AfkebAB85BUJ il faut changer des droits si le kernel par contre est KO

 

   # Turn on MT6620 by default
    chmod 0666 /sys/class/rfkill/rfkill0/state
    chown bluetooth bluetooth /sys/class/rfkill/rfkill0/state
Edit 2

Plus de trace avec strace

execve("/system/bin/bluetoothd", ["/system/bin/bluetoothd", "-n"], [/* 16 vars */]) = 0
mprotect(0x400df000, 4096, PROT_READ)   = 0
gettid()                                = 2039
syscall_983045(0x400ec898, 0x400ec85c, 0, 0x40, 0x400ec898, 0x400ec85c, 0xbea95b10, 0xf0005, 0, 0x400cf000, 0x400ec434, 0, 0, 0xbea95958, 0x400d65c4, 0x400d8d70, 0x60000010, 0x400ec898, 0, 0, 0xc764, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0) = 0
getpid()                                = 2039
sigaction(SIGILL, {0x400d3f81, [], SA_RESTART|SA_SIGINFO}, NULL, 0xedb018) = 0
sigaction(SIGABRT, {0x400d3f81, [], SA_RESTART|SA_SIGINFO}, NULL, 0xedb018) = 0
sigaction(SIGBUS, {0x400d3f81, [], SA_RESTART|SA_SIGINFO}, NULL, 0xedb018) = 0
sigaction(SIGFPE, {0x400d3f81, [], SA_RESTART|SA_SIGINFO}, NULL, 0xedb018) = 0
sigaction(SIGSEGV, {0x400d3f81, [], SA_RESTART|SA_SIGINFO}, NULL, 0xedb018) = 0
sigaction(SIGSTKFLT, {0x400d3f81, [], SA_RESTART|SA_SIGINFO}, NULL, 0xedb018) = 0
sigaction(SIGPIPE, {SIG_IGN}, {SIG_IGN}, 0xbeb62b60) = 0
stat64("/vendor/lib/libbluetoothd.so", 0xbea955a0) = -1 ENOENT (No such file or directory)
stat64("/system/lib/libbluetoothd.so", {st_mode=S_IFREG|0644, st_size=188992, ...}) = 0
open("/system/lib/libbluetoothd.so", O_RDONLY|O_LARGEFILE) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\0\0\0\000"..., 52) = 52
mmap2(NULL, 4096, PROT_READ, MAP_PRIVATE, 3, 0) = 0x400de000
madvise(0x400de000, 4096, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
lseek(3, -8, SEEK_END)                  = 188984
read(3, "\1\0\0\0\0\0\0\0", 8)          = 8
mmap2(NULL, 192512, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x400ed000
madvise(0x400ed000, 192512, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x400ed000, 180844, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x400ed000
madvise(0x400ed000, 180844, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x4011a000, 7452, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x2c) = 0x4011a000
madvise(0x4011a000, 7452, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
munmap(0x400de000, 4096)                = 0
close(3)                                = 0
stat64("/vendor/lib/libbluetooth.so", 0xbea95490) = -1 ENOENT (No such file or directory)
stat64("/system/lib/libbluetooth.so", {st_mode=S_IFREG|0644, st_size=74476, ...}) = 0
open("/system/lib/libbluetooth.so", O_RDONLY|O_LARGEFILE) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\0\0\0\000"..., 52) = 52
mmap2(NULL, 4096, PROT_READ, MAP_PRIVATE, 3, 0) = 0x400de000
madvise(0x400de000, 4096, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
lseek(3, -8, SEEK_END)                  = 74468
read(3, "\1\0\0\0\0\0\0\0", 8)          = 8
mmap2(NULL, 77824, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x4011c000
madvise(0x4011c000, 77824, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x4011c000, 66972, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x4011c000
madvise(0x4011c000, 66972, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x4012d000, 7784, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x10) = 0x4012d000
madvise(0x4012d000, 7784, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
munmap(0x400de000, 4096)                = 0
close(3)                                = 0
stat64("/vendor/lib/libcutils.so", 0xbea95398) = -1 ENOENT (No such file or directory)
stat64("/system/lib/libcutils.so", {st_mode=S_IFREG|0644, st_size=62676, ...}) = 0
open("/system/lib/libcutils.so", O_RDONLY|O_LARGEFILE) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\0\0\0\000"..., 52) = 52
mmap2(NULL, 4096, PROT_READ, MAP_PRIVATE, 3, 0) = 0x400de000
madvise(0x400de000, 4096, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
lseek(3, -8, SEEK_END)                  = 62668
read(3, "\1\0\0\0\0\0\0\0", 8)          = 8
mmap2(NULL, 131072, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x4012f000
madvise(0x4012f000, 131072, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x4012f000, 57992, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x4012f000
madvise(0x4012f000, 57992, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x4013e000, 4168, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0xe) = 0x4013e000
madvise(0x4013e000, 4168, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x40140000, 61440, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40140000
madvise(0x40140000, 61440, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
munmap(0x400de000, 4096)                = 0
close(3)                                = 0
stat64("/vendor/lib/liblog.so", 0xbea952b0) = -1 ENOENT (No such file or directory)
stat64("/system/lib/liblog.so", {st_mode=S_IFREG|0644, st_size=17516, ...}) = 0
open("/system/lib/liblog.so", O_RDONLY|O_LARGEFILE) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\0\0\0\000"..., 52) = 52
mmap2(NULL, 4096, PROT_READ, MAP_PRIVATE, 3, 0) = 0x400de000
madvise(0x400de000, 4096, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
lseek(3, -8, SEEK_END)                  = 17508
read(3, "\1\0\0\0\0\0\0\0", 8)          = 8
mmap2(NULL, 24576, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x4014f000
madvise(0x4014f000, 24576, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x4014f000, 13932, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x4014f000
madvise(0x4014f000, 13932, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x40153000, 4124, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x3) = 0x40153000
madvise(0x40153000, 4124, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
munmap(0x400de000, 4096)                = 0
close(3)                                = 0
stat64("/vendor/lib/libc.so", 0xbea951c8) = -1 ENOENT (No such file or directory)
stat64("/system/lib/libc.so", {st_mode=S_IFREG|0644, st_size=428556, ...}) = 0
open("/system/lib/libc.so", O_RDONLY|O_LARGEFILE) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\0\0\0\000"..., 52) = 52
mmap2(NULL, 4096, PROT_READ, MAP_PRIVATE, 3, 0) = 0x400de000
madvise(0x400de000, 4096, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
lseek(3, -8, SEEK_END)                  = 428548
read(3, "\1\0\0\0\0\0\0\0", 8)          = 8
mmap2(NULL, 479232, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40155000
madvise(0x40155000, 479232, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x40155000, 412336, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x40155000
madvise(0x40155000, 412336, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x401bb000, 12952, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x65) = 0x401bb000
madvise(0x401bb000, 12952, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x401bf000, 45056, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x401bf000
madvise(0x401bf000, 45056, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
munmap(0x400de000, 4096)                = 0
close(3)                                = 0
mprotect(0x401bb000, 8192, PROT_READ)   = 0
stat64("/vendor/lib/libstdc++.so", 0xbea951c8) = -1 ENOENT (No such file or directory)
stat64("/system/lib/libstdc++.so", {st_mode=S_IFREG|0644, st_size=5212, ...}) = 0
open("/system/lib/libstdc++.so", O_RDONLY|O_LARGEFILE) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\0\0\0\000"..., 52) = 52
mmap2(NULL, 4096, PROT_READ, MAP_PRIVATE, 3, 0) = 0x400de000
madvise(0x400de000, 4096, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
lseek(3, -8, SEEK_END)                  = 5204
read(3, "\1\0\0\0\0\0\0\0", 8)          = 8
mmap2(NULL, 12288, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x401ca000
madvise(0x401ca000, 12288, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x401ca000, 2732, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x401ca000
madvise(0x401ca000, 2732, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x401cb000, 4100, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x401cb000
madvise(0x401cb000, 4100, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
munmap(0x400de000, 4096)                = 0
close(3)                                = 0
mprotect(0x401cb000, 4096, PROT_READ)   = 0
stat64("/vendor/lib/libm.so", 0xbea951c8) = -1 ENOENT (No such file or directory)
stat64("/system/lib/libm.so", {st_mode=S_IFREG|0644, st_size=87228, ...}) = 0
open("/system/lib/libm.so", O_RDONLY|O_LARGEFILE) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\0\0\0\000"..., 52) = 52
mmap2(NULL, 4096, PROT_READ, MAP_PRIVATE, 3, 0) = 0x400de000
madvise(0x400de000, 4096, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
lseek(3, -8, SEEK_END)                  = 87220
read(3, "\1\0\0\0\0\0\0\0", 8)          = 8
mmap2(NULL, 94208, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x401cd000
madvise(0x401cd000, 94208, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x401cd000, 85208, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x401cd000
madvise(0x401cd000, 85208, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x401e2000, 4100, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x14) = 0x401e2000
madvise(0x401e2000, 4100, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
munmap(0x400de000, 4096)                = 0
close(3)                                = 0
mprotect(0x401e2000, 4096, PROT_READ)   = 0
mprotect(0x40153000, 4096, PROT_READ)   = 0
mprotect(0x4013e000, 4096, PROT_READ)   = 0
mprotect(0x4011c000, 69632, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
mprotect(0x4011c000, 69632, PROT_READ|PROT_EXEC) = 0
mprotect(0x4012d000, 4096, PROT_READ)   = 0
stat64("/vendor/lib/libbtio.so", 0xbea95490) = -1 ENOENT (No such file or directory)
stat64("/system/lib/libbtio.so", {st_mode=S_IFREG|0644, st_size=13396, ...}) = 0
open("/system/lib/libbtio.so", O_RDONLY|O_LARGEFILE) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\0\0\0\000"..., 52) = 52
mmap2(NULL, 4096, PROT_READ, MAP_PRIVATE, 3, 0) = 0x400de000
madvise(0x400de000, 4096, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
lseek(3, -8, SEEK_END)                  = 13388
read(3, "\1\0\0\0\0\0\0\0", 8)          = 8
mmap2(NULL, 20480, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x401e4000
madvise(0x401e4000, 20480, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x401e4000, 10329, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x401e4000
madvise(0x401e4000, 10329, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x401e7000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x2) = 0x401e7000
madvise(0x401e7000, 4096, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x401e8000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x401e8000
madvise(0x401e8000, 4096, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
munmap(0x400de000, 4096)                = 0
close(3)                                = 0
stat64("/vendor/lib/libglib.so", 0xbea95390) = -1 ENOENT (No such file or directory)
stat64("/system/lib/libglib.so", {st_mode=S_IFREG|0666, st_size=378524, ...}) = 0
open("/system/lib/libglib.so", O_RDONLY|O_LARGEFILE) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\0\0\0\000"..., 52) = 52
mmap2(NULL, 4096, PROT_READ, MAP_PRIVATE, 3, 0) = 0x400de000
madvise(0x400de000, 4096, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
lseek(3, -8, SEEK_END)                  = 378516
read(3, "\1\0\0\0\0\0\0\0", 8)          = 8
mmap2(NULL, 385024, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x401e9000
madvise(0x401e9000, 385024, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x401e9000, 374268, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x401e9000
madvise(0x401e9000, 374268, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x40245000, 4572, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x5b) = 0x40245000
madvise(0x40245000, 4572, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
munmap(0x400de000, 4096)                = 0
close(3)                                = 0
mprotect(0x401e9000, 376832, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
mprotect(0x401e9000, 376832, PROT_READ|PROT_EXEC) = 0
mprotect(0x40245000, 4096, PROT_READ)   = 0
mprotect(0x401e4000, 12288, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
mprotect(0x401e4000, 12288, PROT_READ|PROT_EXEC) = 0
mprotect(0x401e7000, 4096, PROT_READ)   = 0
stat64("/vendor/lib/libdbus.so", 0xbea95490) = -1 ENOENT (No such file or directory)
stat64("/system/lib/libdbus.so", {st_mode=S_IFREG|0644, st_size=304420, ...}) = 0
open("/system/lib/libdbus.so", O_RDONLY|O_LARGEFILE) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\0\0\0\000"..., 52) = 52
mmap2(NULL, 4096, PROT_READ, MAP_PRIVATE, 3, 0) = 0x400de000
madvise(0x400de000, 4096, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
lseek(3, -8, SEEK_END)                  = 304412
read(3, "\1\0\0\0\0\0\0\0", 8)          = 8
mmap2(NULL, 311296, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40247000
madvise(0x40247000, 311296, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x40247000, 298748, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x40247000
madvise(0x40247000, 298748, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x40291000, 4196, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x49) = 0x40291000
madvise(0x40291000, 4196, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
munmap(0x400de000, 4096)                = 0
close(3)                                = 0
mprotect(0x40291000, 4096, PROT_READ)   = 0
stat64("/vendor/lib/libchip_state.so", 0xbea95490) = -1 ENOENT (No such file or directory)
stat64("/system/lib/libchip_state.so", {st_mode=S_IFREG|0666, st_size=5156, ...}) = 0
open("/system/lib/libchip_state.so", O_RDONLY|O_LARGEFILE) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\0\0\0\000"..., 52) = 52
mmap2(NULL, 4096, PROT_READ, MAP_PRIVATE, 3, 0) = 0x400de000
madvise(0x400de000, 4096, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
lseek(3, -8, SEEK_END)                  = 5148
read(3, "\1\0\0\0\0\0\0\0", 8)          = 8
mmap2(NULL, 12288, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40293000
madvise(0x40293000, 12288, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x40293000, 1889, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x40293000
madvise(0x40293000, 1889, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x40294000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0) = 0x40294000
madvise(0x40294000, 4096, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x40295000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40295000
madvise(0x40295000, 4096, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
munmap(0x400de000, 4096)                = 0
close(3)                                = 0
mprotect(0x40293000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
mprotect(0x40293000, 4096, PROT_READ|PROT_EXEC) = 0
mprotect(0x40294000, 4096, PROT_READ)   = 0
mprotect(0x400ed000, 184320, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
mprotect(0x400ed000, 184320, PROT_READ|PROT_EXEC) = 0
mprotect(0x4011a000, 4096, PROT_READ)   = 0
mprotect(0x400cc000, 4096, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
mprotect(0x400cc000, 4096, PROT_READ|PROT_EXEC) = 0
mprotect(0x400cd000, 4096, PROT_READ)   = 0
mmap2(NULL, 49664, PROT_READ, MAP_SHARED, 8, 0) = 0x40296000
futex(0x401be2a0, 0x81 /* FUTEX_??? */, 2147483647) = 0
open("/dev/urandom", O_RDONLY|O_LARGEFILE) = 3
read(3, "#|\315\312", 4)                = 4
close(3)                                = 0
clock_gettime(CLOCK_MONOTONIC, {2699, 858531360}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x400de000
madvise(0x400de000, 4096, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mprotect(0x400de000, 4096, PROT_READ)   = 0
prctl(0x8, 0x1, 0, 0, 0)                = 0
open("/acct/uid/1002/tasks", O_RDWR|O_CREAT|O_LARGEFILE, 0666) = 3
write(3, "0", 1)                        = 1
close(3)                                = 0
setuid32(1002)                          = 0
capset(0x19980330, 0, {CAP_NET_BIND_SERVICE|CAP_NET_ADMIN|CAP_NET_RAW, CAP_NET_BIND_SERVICE|CAP_NET_ADMIN|CAP_NET_RAW, 0}) = 0
gettimeofday({1381245753, 463990}, NULL) = 0
brk(0)                                  = 0x40532000
brk(0x40532000)                         = 0x40532000
brk(0x40533000)                         = 0x40533000
uname({sys="Linux", node="localhost", ...}) = 0
gettimeofday({1381245753, 466085}, NULL) = 0
brk(0x40534000)                         = 0x40534000
umask(077)                              = 0
socket(PF_FILE, SOCK_DGRAM, 0)          = 3
fcntl64(3, F_SETFD, FD_CLOEXEC)         = 0
connect(3, {sa_family=AF_FILE, path="/dev/kmsg"}, 110) = -1 EACCES (Permission denied)
close(3)                                = 0
gettimeofday({1381245753, 468177}, NULL) = 0
open("/system/usr/share/zoneinfo/Africa/Tunis", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
open("/system/usr/share/zoneinfo/zoneinfo.idx", O_RDONLY|O_LARGEFILE) = 3
read(3, "Africa/Abidjan\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Accra\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Addis_Ababa\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Algiers\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Asmara\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Asmera\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Bamako\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Bangui\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Banjul\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Bissau\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Blantyre\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Brazzaville\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Bujumbura\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Cairo\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Casablanca\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Ceuta\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Conakry\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Dakar\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Dar_es_Salaam\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Djibouti\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Douala\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/El_Aaiun\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Freetown\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Gaborone\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Harare\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Johannesburg\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Juba\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Kampala\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Khartoum\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Kigali\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Kinshasa\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Lagos\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Libreville\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Lome\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Luanda\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Lubumbashi\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Lusaka\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Malabo\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Maputo\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Maseru\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Mbabane\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Mogadishu\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Monrovia\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Nairobi\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Ndjamena\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Niamey\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Nouakchott\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Ouagadougou\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Porto-Novo\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Sao_Tome\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Timbuktu\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Tripoli\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
read(3, "Africa/Tunis\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 52) = 52
close(3)                                = 0
open("/system/usr/share/zoneinfo/zoneinfo.dat", O_RDONLY|O_LARGEFILE) = 3
lseek(3, 16535, SEEK_SET)               = 16535
read(3, "TZif2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\5\0\0\0\5\0\0"..., 684) = 684
close(3)                                = 0
getpid()                                = 2039
writev(2, [{"bluetoothd[2039]: Bluetooth deam"..., 39}, {"\n", 1}], 2bluetoothd[2039]: Bluetooth deamon 4.93
) = 40
socket(PF_FILE, SOCK_DGRAM, 0)          = 3
fcntl64(3, F_SETFD, FD_CLOEXEC)         = 0
connect(3, {sa_family=AF_FILE, path="/dev/kmsg"}, 110) = -1 EACCES (Permission denied)
close(3)                                = 0
recv(-1, 0xbea95274, 59, 0)             = -1 EBADF (Bad file descriptor)
socket(PF_FILE, SOCK_DGRAM, 0)          = 3
fcntl64(3, F_SETFD, FD_CLOEXEC)         = 0
connect(3, {sa_family=AF_FILE, path="/dev/kmsg"}, 110) = -1 EACCES (Permission denied)
close(3)                                = 0
nanosleep({0, 1000}, {0, 1000})         = 0
recv(-1, 0xbea95274, 59, 0)             = -1 EBADF (Bad file descriptor)
sigaction(SIGTERM, {0x40100d31, [], SA_NOCLDSTOP}, NULL, 0xedb018) = 0
sigaction(SIGINT, {0x40100d31, [], SA_NOCLDSTOP}, NULL, 0xedb018) = 0
sigaction(SIGUSR2, {0x40100d2d, [], SA_NOCLDSTOP}, NULL, 0xedb018) = 0
sigaction(SIGPIPE, {SIG_IGN}, NULL, 0xedb018) = 0
brk(0x40535000)                         = 0x40535000
mprotect(0x400de000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x400de000, 4096, PROT_READ)   = 0
open("/usr/share/locale/locale.alias", O_RDONLY|O_LARGEFILE) = -1 ENOENT (No such file or directory)
open("/etc/bluetooth/main.conf", O_RDONLY|O_LARGEFILE) = 3
fstat64(3, {st_mode=S_IFREG|0440, st_size=3059, ...}) = 0
read(3, "[General]\n\n# List of plugins tha"..., 4096) = 3059
read(3, "", 4096)                       = 0
close(3)                                = 0
socket(PF_FILE, SOCK_STREAM, 0)         = 3
fcntl64(3, F_GETFD)                     = 0
fcntl64(3, F_SETFD, FD_CLOEXEC)         = 0
connect(3, {sa_family=AF_FILE, path="/dev/socket/dbus"}, 18) = 0
fcntl64(3, F_GETFL)                     = 0x2 (flags O_RDWR)
fcntl64(3, F_SETFL, O_RDWR|O_NONBLOCK)  = 0
brk(0x40536000)                         = 0x40536000
geteuid32()                             = 1002
getsockname(3, {sa_family=AF_FILE, path=@}, [2]) = 0
sigaction(SIGPIPE, {SIG_IGN}, {SIG_IGN}, 0) = 0
poll([{fd=3, events=POLLOUT, revents=POLLOUT}], 1, 0) = 1
write(3, "\0", 1)                       = 1
recv(3, "AUTH EXTERNAL 31303032\r\n", 24, MSG_NOSIGNAL) = 24
poll([{fd=3, events=POLLIN, revents=POLLIN}], 1, -1) = 1
brk(0x40537000)                         = 0x40537000
read(3, "OK eddb2fb77de1cf696488f26952541"..., 2048) = 37
poll([{fd=3, events=POLLOUT, revents=POLLOUT}], 1, -1) = 1
recv(3, "NEGOTIATE_UNIX_FD\r\n", 19, MSG_NOSIGNAL) = 19
poll([{fd=3, events=POLLIN, revents=POLLIN}], 1, -1) = 1
read(3, "AGREE_UNIX_FD\r\n", 2048)      = 15
poll([{fd=3, events=POLLOUT, revents=POLLOUT}], 1, -1) = 1
recv(3, "BEGIN\r\n", 7, MSG_NOSIGNAL)   = 7
poll([{fd=3, events=POLLIN|POLLOUT, revents=POLLOUT}], 1, -1) = 1
sendmsg(3, {msg_name(0)=NULL, msg_iov(2)=[{"l\1\0\1\0\0\0\0\1\0\0\0n\0\0\0\1\1o\0\25\0\0\0/org/fre"..., 128}, {"", 0}], msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL) = 128
gettimeofday({1381245753, 506282}, NULL) = 0
poll([{fd=3, events=POLLIN, revents=POLLIN}], 1, 25000) = 1
brk(0x40538000)                         = 0x40538000
recvmsg(3, {msg_name(0)=NULL, msg_iov(1)=[{"l\2\1\1\t\0\0\0\1\0\0\0=\0\0\0\6\1s\0\4\0\0\0:1.4\0\0\0"..., 2048}], msg_controllen=0, msg_flags=0}, 0) = 258
recvmsg(3, 0xbea95840, 0)               = -1 EAGAIN (Resource temporarily unavailable)
sendmsg(3, {msg_name(0)=NULL, msg_iov(2)=[{"l\1\0\1\24\0\0\0\2\0\0\0\200\0\0\0\1\1o\0\25\0\0\0/org"..., 144}, {"\t\0\0\0org.bluez\0\0\0\4\0\0\0", 20}], msg_controllen=0, msg_flags=0}, MSG_NOSIGNAL) = 164
gettimeofday({1381245753, 511188}, NULL) = 0
poll([{fd=3, events=POLLIN, revents=POLLIN}], 1, 25000) = 1
recvmsg(3, {msg_name(0)=NULL, msg_iov(1)=[{"l\4\1\1\16\0\0\0\3\0\0\0\215\0\0\0\1\1o\0\25\0\0\0/org"..., 2048}], msg_controllen=0, msg_flags=0}, 0) = 258
recvmsg(3, 0xbea95860, 0)               = -1 EAGAIN (Resource temporarily unavailable)
fstat64(3, {st_mode=S_IFSOCK|0777, st_size=0, ...}) = 0
fcntl64(3, F_GETFL)                     = 0x802 (flags O_RDWR|O_NONBLOCK)
brk(0x40539000)                         = 0x40539000
gettimeofday({1381245753, 513760}, NULL) = 0
getpid()                                = 2039
gettimeofday({1381245753, 514173}, NULL) = 0
getpid()                                = 2039
writev(2, [{"bluetoothd[2039]: Starting SDP s"..., 37}, {"\n", 1}], 2bluetoothd[2039]: Starting SDP server
) = 38
socket(PF_FILE, SOCK_DGRAM, 0)          = 4
fcntl64(4, F_SETFD, FD_CLOEXEC)         = 0
connect(4, {sa_family=AF_FILE, path="/dev/kmsg"}, 110) = -1 EACCES (Permission denied)
close(4)                                = 0
recv(-1, 0xbea951d4, 57, 0)             = -1 EBADF (Bad file descriptor)
socket(PF_FILE, SOCK_DGRAM, 0)          = 4
fcntl64(4, F_SETFD, FD_CLOEXEC)         = 0
connect(4, {sa_family=AF_FILE, path="/dev/kmsg"}, 110) = -1 EACCES (Permission denied)
close(4)                                = 0
nanosleep({0, 1000}, {0, 1000})         = 0
recv(-1, 0xbea951d4, 57, 0)             = -1 EBADF (Bad file descriptor)
gettimeofday({1381245753, 518468}, NULL) = 0
socket(PF_BLUETOOTH, SOCK_SEQPACKET, 0) = -1 EPERM (Operation not permitted)
gettimeofday({1381245753, 519119}, NULL) = 0
getpid()                                = 2039
writev(2, [{"bluetoothd[2039]: opening L2CAP "..., 63}, {"\n", 1}], 2bluetoothd[2039]: opening L2CAP socket: Operation not permitted
) = 64
socket(PF_FILE, SOCK_DGRAM, 0)          = 4
fcntl64(4, F_SETFD, FD_CLOEXEC)         = 0
connect(4, {sa_family=AF_FILE, path="/dev/kmsg"}, 110) = -1 EACCES (Permission denied)
close(4)                                = 0
recv(-1, 0xbea951d4, 83, 0)             = -1 EBADF (Bad file descriptor)
socket(PF_FILE, SOCK_DGRAM, 0)          = 4
fcntl64(4, F_SETFD, FD_CLOEXEC)         = 0
connect(4, {sa_family=AF_FILE, path="/dev/kmsg"}, 110) = -1 EACCES (Permission denied)
close(4)                                = 0
nanosleep({0, 1000}, {0, 1000})         = 0
recv(-1, 0xbea951d4, 83, 0)             = -1 EBADF (Bad file descriptor)
gettimeofday({1381245753, 523303}, NULL) = 0
getpid()                                = 2039
writev(2, [{"bluetoothd[2039]: Server initial"..., 46}, {"\n", 1}], 2bluetoothd[2039]: Server initialization failed
) = 47
socket(PF_FILE, SOCK_DGRAM, 0)          = 4
fcntl64(4, F_SETFD, FD_CLOEXEC)         = 0
connect(4, {sa_family=AF_FILE, path="/dev/kmsg"}, 110) = -1 EACCES (Permission denied)
close(4)                                = 0
recv(-1, 0xbea951d4, 66, 0)             = -1 EBADF (Bad file descriptor)
socket(PF_FILE, SOCK_DGRAM, 0)          = 4
fcntl64(4, F_SETFD, FD_CLOEXEC)         = 0
connect(4, {sa_family=AF_FILE, path="/dev/kmsg"}, 110) = -1 EACCES (Permission denied)
close(4)                                = 0
nanosleep({0, 1000}, {0, 1000})         = 0
recv(-1, 0xbea951d4, 66, 0)             = -1 EBADF (Bad file descriptor)
brk(0x4053a000)                         = 0x4053a000
open("/system/lib/bluez-plugin", O_RDONLY|O_LARGEFILE|O_DIRECTORY) = 4
getdents64(4, /* 5 entries */, 4200)    = 144
stat64("/system/lib/bluez-plugin/audio.so", {st_mode=S_IFREG|0644, st_size=145336, ...}) = 0
open("/system/lib/bluez-plugin/audio.so", O_RDONLY|O_LARGEFILE) = 5
read(5, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\0\0\0\000"..., 52) = 52
mmap2(NULL, 4096, PROT_READ, MAP_PRIVATE, 5, 0) = 0x402a3000
madvise(0x402a3000, 4096, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
lseek(5, -8, SEEK_END)                  = 145328
read(5, "\1\0\0\0\0\0\0\0", 8)          = 8
mmap2(NULL, 151552, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x402a4000
madvise(0x402a4000, 151552, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x402a4000, 134112, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 5, 0) = 0x402a4000
madvise(0x402a4000, 134112, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x402c6000, 8904, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 5, 0x21) = 0x402c6000
madvise(0x402c6000, 8904, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
munmap(0x402a3000, 4096)                = 0
close(5)                                = 0
mprotect(0x402a4000, 135168, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
mprotect(0x402a4000, 135168, PROT_READ|PROT_EXEC) = 0
mprotect(0x402c6000, 4096, PROT_READ)   = 0
stat64("/system/lib/bluez-plugin/input.so", {st_mode=S_IFREG|0644, st_size=22000, ...}) = 0
open("/system/lib/bluez-plugin/input.so", O_RDONLY|O_LARGEFILE) = 5
read(5, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\0\0\0\000"..., 52) = 52
mmap2(NULL, 4096, PROT_READ, MAP_PRIVATE, 5, 0) = 0x402a3000
madvise(0x402a3000, 4096, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
lseek(5, -8, SEEK_END)                  = 21992
read(5, "\1\0\0\0\0\0\0\0", 8)          = 8
mmap2(NULL, 28672, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x402c9000
madvise(0x402c9000, 28672, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x402c9000, 19000, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 5, 0) = 0x402c9000
madvise(0x402c9000, 19000, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x402ce000, 4416, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 5, 0x4) = 0x402ce000
madvise(0x402ce000, 4416, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
munmap(0x402a3000, 4096)                = 0
close(5)                                = 0
stat64("/vendor/lib/libexpat.so", 0xbea95640) = -1 ENOENT (No such file or directory)
stat64("/system/lib/libexpat.so", {st_mode=S_IFREG|0644, st_size=87200, ...}) = 0
open("/system/lib/libexpat.so", O_RDONLY|O_LARGEFILE) = 5
read(5, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\0\0\0\000"..., 52) = 52
mmap2(NULL, 4096, PROT_READ, MAP_PRIVATE, 5, 0) = 0x402a3000
madvise(0x402a3000, 4096, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
lseek(5, -8, SEEK_END)                  = 87192
read(5, "\1\0\0\0\0\0\0\0", 8)          = 8
mmap2(NULL, 94208, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x402d0000
madvise(0x402d0000, 94208, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x402d0000, 78320, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 5, 0) = 0x402d0000
madvise(0x402d0000, 78320, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x402e4000, 8208, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 5, 0x13) = 0x402e4000
madvise(0x402e4000, 8208, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
munmap(0x402a3000, 4096)                = 0
close(5)                                = 0
mprotect(0x402d0000, 81920, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
mprotect(0x402d0000, 81920, PROT_READ|PROT_EXEC) = 0
mprotect(0x402e4000, 8192, PROT_READ)   = 0
mprotect(0x402c9000, 20480, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
mprotect(0x402c9000, 20480, PROT_READ|PROT_EXEC) = 0
mprotect(0x402ce000, 4096, PROT_READ)   = 0
stat64("/system/lib/bluez-plugin/network.so", {st_mode=S_IFREG|0644, st_size=22208, ...}) = 0
open("/system/lib/bluez-plugin/network.so", O_RDONLY|O_LARGEFILE) = 5
read(5, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0(\0\1\0\0\0\0\0\0\000"..., 52) = 52
mmap2(NULL, 4096, PROT_READ, MAP_PRIVATE, 5, 0) = 0x402a3000
madvise(0x402a3000, 4096, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
lseek(5, -8, SEEK_END)                  = 22200
read(5, "\1\0\0\0\0\0\0\0", 8)          = 8
mmap2(NULL, 28672, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x402e7000
madvise(0x402e7000, 28672, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x402e7000, 19376, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_FIXED, 5, 0) = 0x402e7000
madvise(0x402e7000, 19376, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
mmap2(0x402ec000, 4560, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 5, 0x4) = 0x402ec000
madvise(0x402ec000, 4560, 0xc /* MADV_??? */) = -1 EINVAL (Invalid argument)
munmap(0x402a3000, 4096)                = 0
close(5)                                = 0
mprotect(0x402e7000, 20480, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
mprotect(0x402e7000, 20480, PROT_READ|PROT_EXEC) = 0
mprotect(0x402ec000, 4096, PROT_READ)   = 0
getdents64(4, /* 0 entries */, 4200)    = 0
close(4)                                = 0
open("/etc/bluetooth/network.conf", O_RDONLY|O_LARGEFILE) = 4
fstat64(4, {st_mode=S_IFREG|0440, st_size=120, ...}) = 0
read(4, "# Configuration file for the net"..., 4096) = 120
read(4, "", 4096)                       = 0
close(4)                                = 0
socket(PF_BLUETOOTH, SOCK_RAW, 4)       = -1 EPERM (Operation not permitted)
gettimeofday({1381245753, 554318}, NULL) = 0
getpid()                                = 2039
writev(2, [{"bluetoothd[2039]: Failed to open"..., 76}, {"\n", 1}], 2bluetoothd[2039]: Failed to open control socket: Operation not permitted (1)
) = 77
socket(PF_FILE, SOCK_DGRAM, 0)          = 4
fcntl64(4, F_SETFD, FD_CLOEXEC)         = 0
connect(4, {sa_family=AF_FILE, path="/dev/kmsg"}, 110) = -1 EACCES (Permission denied)
close(4)                                = 0
recv(-1, 0xbea951fc, 96, 0)             = -1 EBADF (Bad file descriptor)
socket(PF_FILE, SOCK_DGRAM, 0)          = 4
fcntl64(4, F_SETFD, FD_CLOEXEC)         = 0
connect(4, {sa_family=AF_FILE, path="/dev/kmsg"}, 110) = -1 EACCES (Permission denied)
close(4)                                = 0
nanosleep({0, 1000}, {0, 1000})         = 0
recv(-1, 0xbea951fc, 96, 0)             = -1 EBADF (Bad file descriptor)
gettimeofday({1381245753, 558541}, NULL) = 0
getpid()                                = 2039
writev(2, [{"bluetoothd[2039]: Can\'t init bne"..., 40}, {"\n", 1}], 2bluetoothd[2039]: Can't init bnep module
) = 41
socket(PF_FILE, SOCK_DGRAM, 0)          = 4
fcntl64(4, F_SETFD, FD_CLOEXEC)         = 0
connect(4, {sa_family=AF_FILE, path="/dev/kmsg"}, 110) = -1 EACCES (Permission denied)
close(4)                                = 0
recv(-1, 0xbea95204, 60, 0)             = -1 EBADF (Bad file descriptor)
socket(PF_FILE, SOCK_DGRAM, 0)          = 4
fcntl64(4, F_SETFD, FD_CLOEXEC)         = 0
connect(4, {sa_family=AF_FILE, path="/dev/kmsg"}, 110) = -1 EACCES (Permission denied)
close(4)                                = 0
nanosleep({0, 1000}, {0, 1000})         = 0
recv(-1, 0xbea95204, 60, 0)             = -1 EBADF (Bad file descriptor)
gettimeofday({1381245753, 562672}, NULL) = 0
getpid()                                = 2039
writev(2, [{"bluetoothd[2039]: Failed to init"..., 47}, {"\n", 1}], 2bluetoothd[2039]: Failed to init network plugin
) = 48
socket(PF_FILE, SOCK_DGRAM, 0)          = 4
fcntl64(4, F_SETFD, FD_CLOEXEC)         = 0
connect(4, {sa_family=AF_FILE, path="/dev/kmsg"}, 110) = -1 EACCES (Permission denied)
close(4)                                = 0
recv(-1, 0xbea95234, 67, 0)             = -1 EBADF (Bad file descriptor)
socket(PF_FILE, SOCK_DGRAM, 0)          = 4
fcntl64(4, F_SETFD, FD_CLOEXEC)         = 0
connect(4, {sa_family=AF_FILE, path="/dev/kmsg"}, 110) = -1 EACCES (Permission denied)
close(4)                                = 0
nanosleep({0, 1000}, {0, 1000})         = 0
recv(-1, 0xbea95234, 67, 0)             = -1 EBADF (Bad file descriptor)
open("/etc/bluetooth/input.conf", O_RDONLY|O_LARGEFILE) = 4
fstat64(4, {st_mode=S_IFREG|0440, st_size=262, ...}) = 0
read(4, "# Configuration file for the inp"..., 4096) = 262
read(4, "", 4096)                       = 0
close(4)                                = 0
open("/etc/bluetooth/audio.conf", O_RDONLY|O_LARGEFILE) = 4
fstat64(4, {st_mode=S_IFREG|0440, st_size=1699, ...}) = 0
read(4, "# Configuration file for the aud"..., 4096) = 1699
read(4, "", 4096)                       = 0
close(4)                                = 0
socket(PF_FILE, SOCK_STREAM, 0)         = 4
bind(4, {sa_family=AF_FILE, path=@/org/bluez/audio}, 110) = 0
fcntl64(4, F_GETFL)                     = 0x2 (flags O_RDWR)
fcntl64(4, F_SETFL, O_RDWR|O_NONBLOCK)  = 0
listen(4, 1)                            = 0
fstat64(4, {st_mode=S_IFSOCK|0777, st_size=0, ...}) = 0
fcntl64(4, F_GETFL)                     = 0x802 (flags O_RDWR|O_NONBLOCK)
pi**([5, 6])                            = 0
fstat64(5, {st_mode=S_IFIFO|0600, st_size=0, ...}) = 0
fcntl64(5, F_GETFL)                     = 0 (flags O_RDONLY)
socket(PF_BLUETOOTH, SOCK_RAW, 1)       = -1 EPERM (Operation not permitted)
gettimeofday({1381245753, 573839}, NULL) = 0
getpid()                                = 2039
writev(2, [{"bluetoothd[2039]: Can\'t open HCI"..., 68}, {"\n", 1}], 2bluetoothd[2039]: Can't open HCI socket: Operation not permitted (1)
) = 69
socket(PF_FILE, SOCK_DGRAM, 0)          = 7
fcntl64(7, F_SETFD, FD_CLOEXEC)         = 0
connect(7, {sa_family=AF_FILE, path="/dev/kmsg"}, 110) = -1 EACCES (Permission denied)
close(7)                                = 0
recv(-1, 0xbea9522c, 88, 0)             = -1 EBADF (Bad file descriptor)
socket(PF_FILE, SOCK_DGRAM, 0)          = 7
fcntl64(7, F_SETFD, FD_CLOEXEC)         = 0
connect(7, {sa_family=AF_FILE, path="/dev/kmsg"}, 110) = -1 EACCES (Permission denied)
close(7)                                = 0
nanosleep({0, 1000}, {0, 1000})         = 0
recv(-1, 0xbea9522c, 88, 0)             = -1 EBADF (Bad file descriptor)
gettimeofday({1381245753, 577935}, NULL) = 0
getpid()                                = 2039
writev(2, [{"bluetoothd[2039]: adapter_ops_se"..., 42}, {"\n", 1}], 2bluetoothd[2039]: adapter_ops_setup failed
) = 43
socket(PF_FILE, SOCK_DGRAM, 0)          = 7
fcntl64(7, F_SETFD, FD_CLOEXEC)         = 0
connect(7, {sa_family=AF_FILE, path="/dev/kmsg"}, 110) = -1 EACCES (Permission denied)
close(7)                                = 0
recv(-1, 0xbea9526c, 62, 0)             = -1 EBADF (Bad file descriptor)
socket(PF_FILE, SOCK_DGRAM, 0)          = 7
fcntl64(7, F_SETFD, FD_CLOEXEC)         = 0
connect(7, {sa_family=AF_FILE, path="/dev/kmsg"}, 110) = -1 EACCES (Permission denied)
close(7)                                = 0
nanosleep({0, 1000}, {0, 1000})         = 0
recv(-1, 0xbea9526c, 62, 0)             = -1 EBADF (Bad file descriptor)
mprotect(0x400de000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x400de000, 4096, PROT_READ)   = 0
futex(0x401bfad0, 0x81 /* FUTEX_??? */, 2147483647) = 0
mprotect(0x400de000, 4096, PROT_READ|PROT_WRITE) = 0
mprotect(0x400de000, 4096, PROT_READ)   = 0
munmap(0x400de000, 4096)                = 0
exit_group(1)                           = ?
Process 2039 detached
Modifié par new_profile
Lien vers le commentaire
Partager sur d’autres sites

j'ai trouvé ca rapidement

 

https://code.google.com/p/android-bluetooth-touchpad/wiki/FrameworkTutorial

 

il faudrait regarder dans le manifest du framework si les permissions sont en place et vérifier sur une rom 4.2 fonctionnel pour voir la différence.

 

Ce n'est qu'une idée. Pas taper si c'est une connerie.

Lien vers le commentaire
Partager sur d’autres sites

j'ai trouvé ca rapidement

 

https://code.google.com/p/android-bluetooth-touchpad/wiki/FrameworkTutorial

 

il faudrait regarder dans le manifest du framework si les permissions sont en place et vérifier sur une rom 4.2 fonctionnel pour voir la différence.

 

Ce n'est qu'une idée. Pas taper si c'est une connerie.

c'est OK dans system/etc/permissions/platform.xml

 

@STEVEJC,

 

La raison pour laquelle le service ne monte pas est à mon avis un accès au fichier de socket sous "/dev/socket":

==> Pas de "dbus_bluetooth" et de "bluetooth" relatif au:

socket bluetooth stream 660 bluetooth bluetooth
socket dbus_bluetooth stream 660 bluetooth bluetooth

4.1.1

root@android:/dev/socket $ ls -al
srw-rw---- bluetooth bluetooth          2013-10-08 11:55 bluetooth
srw-rw---- bluetooth bluetooth          2013-10-08 11:55 dbus
srw-rw---- bluetooth bluetooth          2013-10-08 11:55 dbus_bluetooth
srw-rw---- root     inet              2013-10-08 11:55 dnsproxyd
srw-rw---- gps      system            2013-10-08 11:55 gps
srw------- system   system            2013-10-08 11:55 installd
srw-rw-rw- root     root              2013-10-08 11:55 keystore
srw-rw---- root     system            2013-10-08 11:55 mdns
srw-rw---- root     system            2013-10-08 11:55 netd
srw-rw-r-- root     inet              2013-10-08 11:55 netdiag
srw-rw-rw- root     root              2013-10-08 11:55 property_service
srw-rw---- root     radio             2013-10-08 11:55 rild
srw-rw---- root     radio             2013-10-08 11:55 rild-atci
srw-rw-rw- radio    system            2013-10-08 11:55 rild-debug
srw-rw---- radio    system            2013-10-08 11:55 rild-mtk-modem
srw-rw---- radio    net_bt            2013-10-08 11:55 rild-mtk-ut
srw-rw---- radio    net_bt            2013-10-08 11:55 rild-mtk-ut-2
srw-rw---- root     radio             2013-10-08 11:55 rild2
srw-rw---- media    system            2013-10-08 11:55 soc_vt_stk
srw-rw---- media    system            2013-10-08 11:55 soc_vt_svc
srw-rw---- media    system            2013-10-08 11:55 soc_vt_tcv
srw-rw---- root     mount             2013-10-08 11:55 vold
srw-rw---- root     system            2013-10-08 11:55 zygote

4.2.2

root@android:/dev/socket # ls -al
srw-rw---- system   system            2013-10-08 15:37 adbd
srw-rw---- bluetooth net_bt            2013-10-08 15:37 bt.a2dp.stream
srw-rw---- bluetooth net_bt            2013-10-08 15:37 bt.int.adp
srw-rw---- bluetooth bluetooth          2013-10-08 15:37 dbus
srw-rw---- root     inet              2013-10-08 15:37 dnsproxyd
srw-rw---- gps      system            2013-10-08 15:37 gps
srw-rw---- root     system            2013-10-08 15:37 hald
srw------- system   system            2013-10-08 15:37 installd
srw-rw-rw- root     root              2013-10-08 15:37 keystore
srw-rw---- root     system            2013-10-08 15:37 mdns
srw-rw---- root     system            2013-10-08 15:37 netd
srw-rw---- root     inet              2013-10-08 15:37 netdiag
srw-rw-rw- root     root              2013-10-08 15:37 property_service
srw-rw---- root     radio             2013-10-08 15:37 rild
srw-rw---- root     radio             2013-10-08 15:37 rild-atci
srw-rw---- radio    system            2013-10-08 15:37 rild-debug
srw-rw---- radio    system            2013-10-08 15:37 rild-mtk-modem
srw-rw---- radio    net_bt            2013-10-08 15:37 rild-mtk-ut
srw-rw---- radio    net_bt            2013-10-08 15:37 rild-mtk-ut-2
srw-rw---- root     radio             2013-10-08 15:37 rild2
srw-rw---- media    system            2013-10-08 15:37 soc_vt_stk
srw-rw---- media    system            2013-10-08 15:37 soc_vt_svc
srw-rw---- media    system            2013-10-08 15:37 soc_vt_tcv
srw-rw---- root     mount             2013-10-08 15:37 vold
srw-rw---- root     system            2013-10-08 15:37 zygote

Par contre, la présence des 2 autres fichiers "bt.int.adp" et "bt.a2dp.stream" m'intrigue car ça dénote le fait que le service "mtkbt" ne s'est pas arrété ou bien son lancement bloque un truc.

 

Après avoir mis les 2 fichiers "libglib.so" et "libchip_state.so", voila les traces qui bloque le lancement du service bluetoothd:

 

root@android:/system/etc/permissions # /system/bin/bluetoothd -n -d
bluetoothd[2015]: Bluetooth deamon 4.93
bluetoothd[2015]: external/bluetooth/bluez/src/main.c:parse_config() parsing main.conf
bluetoothd[2015]: external/bluetooth/bluez/src/main.c:parse_config() discovto=120
bluetoothd[2015]: external/bluetooth/bluez/src/main.c:parse_config() pairto=0
bluetoothd[2015]: external/bluetooth/bluez/src/main.c:parse_config() pageto=8192
bluetoothd[2015]: external/bluetooth/bluez/src/main.c:parse_config() name=%m
bluetoothd[2015]: external/bluetooth/bluez/src/main.c:parse_config() class=0x40020C
bluetoothd[2015]: external/bluetooth/bluez/src/main.c:parse_config() discov_interval=30
bluetoothd[2015]: external/bluetooth/bluez/src/main.c:parse_config() deviceid=android:generic:1.5
bluetoothd[2015]: external/bluetooth/bluez/src/main.c:parse_config() default_link_policy=7
bluetoothd[2015]: Starting SDP server
bluetoothd[2015]: opening L2CAP socket: Operation not permitted
bluetoothd[2015]: Server initialization failed
bluetoothd[2015]: external/bluetooth/bluez/src/plugin.c:plugin_init() Loading builtin plugins
bluetoothd[2015]: external/bluetooth/bluez/src/plugin.c:add_plugin() Loading hciops plugin
bluetoothd[2015]: external/bluetooth/bluez/src/plugin.c:plugin_init() Loading plugins /system/lib/bluez-plugin
bluetoothd[2015]: external/bluetooth/bluez/src/plugin.c:add_plugin() Loading audio plugin
bluetoothd[2015]: external/bluetooth/bluez/src/plugin.c:add_plugin() Loading input plugin
bluetoothd[2015]: external/bluetooth/bluez/src/plugin.c:add_plugin() Loading network plugin
bluetoothd[2015]: Failed to open control socket: Operation not permitted (1)
bluetoothd[2015]: Can't init bnep module
bluetoothd[2015]: Failed to init network plugin
bluetoothd[2015]: external/bluetooth/bluez/plugins/hciops.c:hciops_init()
bluetoothd[2015]: external/bluetooth/bluez/plugins/hciops.c:hciops_setup()
bluetoothd[2015]: Can't open HCI socket: Operation not permitted (1)
bluetoothd[2015]: adapter_ops_setup failed

A investiguer

 

Edit

D'après https://groups.google.com/forum/#!msg/pandaboard/xyywEhFEwV8/AfkebAB85BUJ il faut changer des droits si le kernel par contre est KO

 

   # Turn on MT6620 by default
    chmod 0666 /sys/class/rfkill/rfkill0/state
    chown bluetooth bluetooth /sys/class/rfkill/rfkill0/state

il y a cela dans meta_init.rc

    # BT

    chmod 0660 /sys/class/rfkill/rfkill0/state

    chown bluetooth bluetooth /sys/class/rfkill/rfkill0/state

    write sys/class/rfkill/rfkill0/state 0

Lien vers le commentaire
Partager sur d’autres sites

Bonjour j'ai une simple question, l'application  SPirit FM a fonctionné  et les station radio sont bien présente mais il n'ya pas de son est ce quelqu'un a une explication

Pareil chez moi sauf pour une ou je pouvais entendre très très bas la radio mais ça restait très brouillon... 

Lien vers le commentaire
Partager sur d’autres sites

@steveJC,
Est-ce que t'as des connaissance dans les socket du type PF_BLUETOOTH ?
J'ai l'impression que ce type de socket n'est pas enregistré côté kernel ou il y a un truc qui cloche. Cependant, je suis bien habitué au SOCK_STREAM et au AF_INET mais sans doute pas à celle-ci.

Les 3 appels qui clochent:

socket(PF_BLUETOOTH, SOCK_SEQPACKET, 0) = -1 EPERM (Operation not permitted)
socket(PF_BLUETOOTH, SOCK_RAW, 4)       = -1 EPERM (Operation not permitted)
socket(PF_BLUETOOTH, SOCK_RAW, 1)       = -1 EPERM (Operation not permitted)

#define BTPROTO_L2CAP   0
#define BTPROTO_HCI     1
#define BTPROTO_SCO     2
#define BTPROTO_RFCOMM  3
#define BTPROTO_BNEP    4
Modifié par new_profile
Lien vers le commentaire
Partager sur d’autres sites

je t'avais deja envoyer le lien de spirit

Oui, je parlais de la version de la ROM

@steveJC,

Est-ce que t'as des connaissance dans les socket du type PF_BLUETOOTH ?

J'ai l'impression que ce type de socket n'est pas enregistré côté kernel ou il y a un truc qui cloche. Cependant, je suis bien habitué au SOCK_STREAM et au AF_INET mais sans doute pas à celle-ci.

Les 3 appels qui clochent:


socket(PF_BLUETOOTH, SOCK_SEQPACKET, 0) = -1 EPERM (Operation not permitted)
socket(PF_BLUETOOTH, SOCK_RAW, 4)       = -1 EPERM (Operation not permitted)
socket(PF_BLUETOOTH, SOCK_RAW, 1)       = -1 EPERM (Operation not permitted)

Non désolé, je ne vois pas

Lien vers le commentaire
Partager sur d’autres sites

bonsoir degrus quand tu met les rom est ce que tu met le kernel de wiko la 3.4.0 si ce n'est pas le cas il faut mettre le kernel.

Le kernel est bon, c'est bien le 3.4.0 de wiko

Par contre je viens de voir que dans les rom, on a pas la meme version (que JB Wiko) pour

bin/dbus_daemon

bin/mtkbt => lui gere cela

service mtkbt /system/bin/mtkbt

socket bt.int.adp dgram 660 bluetooth net_bt

socket bt.a2dp.stream dgram 660 bluetooth net_bt

user bluetooth

group net_bt bluetooth net_bt_admin sdcard_rw inet net_admin nvram net_raw

oneshot

bin/nvram_agent_binder

bin/nvram_daemon

Je vais voir en remettant les fichiers de la 4.1

Lien vers le commentaire
Partager sur d’autres sites

@SteveJC,
J'ai remis les fichiers mais ça ne marche pas (attention aussi à la glib.so qui fait crasher l'appli mms.apk !).

 

Il y a probablement un problème de droits. Je sais pas.

 

static int bt_sock_create(struct net *net, struct socket *sock, int proto, int kern)
{
    int err;
 
    if (proto == BTPROTO_RFCOMM || proto == BTPROTO_SCO ||
    proto == BTPROTO_L2CAP) {
    if (!current_has_bt())
        return -EPERM;
    } else if (!current_has_bt_admin())
        return -EPERM;

 

Merci

Lien vers le commentaire
Partager sur d’autres sites

Rejoignez la conversation

Vous pouvez poster maintenant et vous enregistrez plus tard. Si vous avez un compte, connectez-vous maintenant pour poster.

Invité
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...