--- Log for 09.09.115 Server: leguin.freenode.net Channel: #rockbox --- Nick: logbot Version: Dancer V4.16 Started: 12 days and 20 hours ago 00.00.57 Quit ender` (Quit: Hardware, n The part of the computer that you can kick.) 00.25.37 Quit ZincAlloy (Quit: Leaving.) 00.37.48 Quit [Franklin] (Read error: No route to host) 00.41.42 Join [Franklin] [0] (~franklin@unaffiliated/franklin) 00.45.58 Quit alucryd (Ping timeout: 264 seconds) 00.48.15 Join alucryd [0] (~quassel@archlinux/developer/alucryd) 01.03.16 Quit naraic (Ping timeout: 260 seconds) 01.21.34 Join dys [0] (~dys@ip-109-41-72-69.web.vodafone.de) 01.32.50 *** Saving seen data "./dancer.seen" 01.36.51 Quit dys (Read error: Connection reset by peer) 01.37.20 Join dys [0] (~dys@ip-109-41-72-69.web.vodafone.de) 02.00.23 Quit dys (Read error: Connection reset by peer) 02.00.43 Join dys [0] (~dys@ip-109-41-72-69.web.vodafone.de) 02.15.21 Quit CustosLimen (Max SendQ exceeded) 02.16.36 Join CustosLimen [0] (~CustosLim@unaffiliated/cust0slim3n) 02.22.33 Join suYin`OFF [0] (suYin@server1.bouncer4you.de) 02.31.18 Quit YuMiki (Quit: YuMiki) 02.46.04 Join advcomp2019_ [0] (~advcomp20@unaffiliated/advcomp2019) 02.46.45 Quit amiconn (Quit: No Ping reply in 64 seconds.) 02.47.35 Quit pixelma (Quit: No Ping reply in 120 seconds.) 02.47.43 Quit greatwolf (Ping timeout: 246 seconds) 02.47.54 Join amiconn [0] (~amiconn@rockbox/developer/amiconn) 02.48.39 Quit foolsh (Remote host closed the connection) 02.48.48 Quit yuriks (Quit: No Ping reply in 180 seconds.) 02.48.50 Join pixelma [0] (~pixelma@rockbox/staff/pixelma) 02.49.07 Quit advcomp2019 (Ping timeout: 246 seconds) 02.49.49 Quit munch (Ping timeout: 246 seconds) 02.49.50 Quit Jack87 (Ping timeout: 246 seconds) 02.49.50 Quit Staphylo (Ping timeout: 246 seconds) 02.50.31 Quit WakiMiko (Ping timeout: 246 seconds) 02.51.04 Join yuriks [0] (~quassel@opentyrian/developer/yuriks) 02.51.23 Join foolsh [0] (~quassel@2601:241:c200:4bc5:487d:ab46:ce3d:c65c) 02.52.37 Quit ruhannn (Ping timeout: 246 seconds) 02.53.44 Join greatwolf [0] (greatwolf@gateway/shell/panicbnc/x-jkfntzrmkbfsgjsk) 02.53.55 Join Staphylo [0] (~Staphylo@2a01:4f8:190:126a:d70a:378:c354:a3a3) 02.54.03 Join ruhannn [0] (uid76353@gateway/web/irccloud.com/x-ntyfwkklzyfpdxqx) 02.54.46 Join munch [0] (~munch@unaffiliated/munch) 02.54.58 Join WakiMiko [0] (~WakiMiko@unaffiliated/wakimiko) 02.57.50 Join Jack87 [0] (znc@nasadmin/admin/jack87) 03.32.52 *** Saving seen data "./dancer.seen" 03.35.14 Quit dys (Ping timeout: 272 seconds) 03.40.56 Join dys [0] (~dys@ip-109-41-72-69.web.vodafone.de) 03.45.30 Quit [Franklin] (Ping timeout: 244 seconds) 04.06.01 Join Strife89 [0] (~Strife89@adsl-98-80-230-211.mcn.bellsouth.net) 05.12.19 Quit [7] (Disconnected by services) 05.12.29 Join TheSeven [0] (~quassel@rockbox/developer/TheSeven) 05.25.02 Quit JanC (Ping timeout: 248 seconds) 05.30.51 Quit munch (Ping timeout: 246 seconds) 05.32.55 *** Saving seen data "./dancer.seen" 05.39.56 Join JanC [0] (~janc@lugwv/member/JanC) 05.41.36 Join munch [0] (~munch@unaffiliated/munch) 06.04.46 Quit Strife89 (Ping timeout: 250 seconds) 06.43.46 Quit prof_wolfff (Ping timeout: 244 seconds) 06.58.33 Quit orly_owl (Read error: Connection reset by peer) 06.59.27 Join orly_owl [0] (~david@unaffiliated/orly-owl/x-3167833) 07.15.24 Quit ruhannn (Quit: Connection closed for inactivity) 07.17.44 Join xorly [0] (~xorly@ip-86-49-15-121.net.upcbroadband.cz) 07.32.57 *** Saving seen data "./dancer.seen" 07.36.51 Quit Jinx (Ping timeout: 246 seconds) 08.05.31 Join Jinx [0] (Dojo@unaffiliated/jinx) 08.11.30 Join wodz [0] (~wodz@iwl138.internetdsl.tpnet.pl) 08.19.21 # kugel: I stepped upon this thread http://stackoverflow.com/questions/26385578/java-lang-stackoverflow-error-for-android-l-preview-running-art 08.19.48 # kugel: Could it be our case? I mean recursive mutex which causes stack overflow? 08.22.57 # i dont think so 08.23.36 # it seems that guy used standard mutexes for his own thread implementation. we use our mutexes for rockbox threads 08.23.46 # did you try "adb shell setprop debug.checkjni 1"? 08.24.47 # oh wait, the last answer sounds like it could be our problem 08.25.27 # that would mean we can only call into java from the rockbox main thread now 08.25.47 # i think _battery_level() is called from another (power) thread 08.26.41 # yes, but our Manifest set debuggable or something like this anyway 08.27.01 # kugel: exactly this problem 08.27.36 Join ender` [0] (krneki@foo.eternallybored.org) 08.28.15 # wodz: I read the last answer as "if a user-thread makes a jni call, with a heap allocated stack, then new JNI checks will throw a StackOverflow because of the wildly different stack pointer" 08.28.29 # nothing to do with mutexes, but that could describe our problem 08.31.13 Quit xorly (Ping timeout: 250 seconds) 08.31.47 # the thing is that *every* jni call should fail this way but here it seems only NewObject() is the problem. 08.32.13 # only those that are not done from rockbox' main thread 08.33.05 # the rockbox main thread runs on the original pthread stack 08.33.42 # we only set different stack regions for threads that we create through create_thread(). that doesn't apply to the main thread 08.34.41 Quit gbl08ma (Ping timeout: 250 seconds) 08.35.14 # So power thread and codec thread right? 08.35.18 Join gbl08ma [0] (~gbl08ma@hydrogen.tny.im) 08.35.37 # yes (i think there are more) 08.35.46 Quit amiconn (Remote host closed the connection) 08.35.46 Quit pixelma (Remote host closed the connection) 08.36.00 # (not sure which of them do jni calls though) 08.36.24 Join pixelma [0] (~pixelma@rockbox/staff/pixelma) 08.36.27 Join amiconn [0] (~amiconn@rockbox/developer/amiconn) 08.38.36 Quit CustosLimen (Ping timeout: 250 seconds) 08.39.07 # wodz: so assuming this really is the problem, there are two workarounds: move that java call onto the main thread (somehow) or use a helper pthread behind the scenes (but that must be attached to the VM with jni->AttachCurrentThread()) 08.40.00 Join CustosLimen [0] (~CustosLim@unaffiliated/cust0slim3n) 08.41.10 # kugel: Does tick tasks run off main thread? 08.43.06 Quit gbl08ma (Ping timeout: 244 seconds) 08.43.36 # wodz: tick task uses the posix timer api 08.44.14 # it does use a pthread, but an unspecified one and each timer callback may run from a different pthread (iiuc) 08.47.22 # hm i used to have a patch that introduces a run_on_ui_thread() function which can be used to offload callback invocations to the rockbox main thread 08.47.27 # seems i never merged that 08.50.54 Join gbl08ma [0] (~gbl08ma@hydrogen.tny.im) 08.50.55 # Removing possibility to do jni calls from other native thread than main sounds like very strong restriction. It is strange it was not hit by larger number of projects. 08.51.32 # you can make jni calls from other pthreads, just make sure you call AttachCurrentThread() for them 08.51.51 # it only affects those implementing their own threading 08.52.17 Join prof_wolfff [0] (~prof_wolf@89.141.51.203.dyn.user.ono.com) 08.52.21 # right 08.54.19 # implementing own threading is not widespread I guess 09.01.02 Join utrack [0] (~utrack@185.6.236.84) 09.11.55 # wodz: i suggest a helper thread as a quick method to see if it's actually the problem 09.15.35 Quit CustosLimen (Read error: Connection timed out) 09.17.22 Join CustosLimen [0] (~CustosLim@unaffiliated/cust0slim3n) 09.18.30 Quit soap (Read error: Connection reset by peer) 09.19.27 Join narf_ [0] (8d051ac4@gateway/web/freenode/ip.141.5.26.196) 09.19.39 # hi, does rockbox support opus? 09.20.17 # the wiki says yes 09.20.19 # yes, but i think only the development version 09.20.32 # sicne we haven't done a release in ages 09.20.55 # whats holding back a release? 09.21.35 # Add support for playing Opus files http://www.rockbox.org/wiki/ReleaseNotes313#Codecs 09.22.08 Quit utrack (Quit: WeeChat 1.3) 09.23.48 # i am using my sansa clip, because i love how long i can keep listening and i like the audioquality, well.... and at least since the last official firmware upgrade flacs work completly i think, but this opus incompatibility is a really big disturbance... 09.27.40 # btw. could you give me a hint where i could start to learn how to do such things as teaching my mp3 player a new codec? like which languages/frameworks/structures/etc. 09.28.25 Join utrack [0] (~utrack@185.6.236.84) 09.29.15 # upgrade rockbox 09.33.01 *** Saving seen data "./dancer.seen" 09.34.06 Join pamaury [0] (~quassel@rockbox/developer/pamaury) 09.34.08 # well i'd like to get a hint how to do such things on my own and probably support rockbox and such projects, furthermore i'd love to understand better, how my mp3 player works... i know what my linux does, android... i guess i know it but my mp3 player... whole different platform 09.41.50 Quit pamaury (Ping timeout: 240 seconds) 09.46.49 # narf_: Your question is soooo broad that it is hard to give a link. Starting from bottom up - read how modern processors work (See mips run has very good introduction to the concepts of RISC processors) then read about RTOSes and threading in general, then codecs are HUGE part of DSP science. 09.49.52 # thank you, I'll have a look 09.57.48 Quit CustosLimen (Ping timeout: 272 seconds) 09.59.56 Join CustosLimen [0] (~CustosLim@unaffiliated/cust0slim3n) 10.05.35 Quit CustosLimen (Ping timeout: 264 seconds) 10.18.45 Join pamaury [0] (~quassel@rockbox/developer/pamaury) 10.44.14 Quit mc2739 (Ping timeout: 256 seconds) 10.47.25 # kugel: by helper thread you mean creating pthread thread from main(), call AttachCurrentThread() for it and perform jni calls from there storing results in some shared location accessible to _battery_level()? 10.47.28 Join mc2739 [0] (~mc2739@rockbox/developer/mc2739) 10.49.04 # wodz: I tried to ping Bjorn several times but he didn't look at gerrit I think yet :( 10.53.53 # kugel: for _battery_level() we could reverse the logic actually - create BatteryMonitor object in main() and make java part call exported native function which sets native variable. 11.05.14 Join TheLemonMan [0] (~lemonboy@unaffiliated/thelemonman) 11.33.03 *** Saving seen data "./dancer.seen" 11.53.38 Join krabador [0] (~krabador@unaffiliated/krabador) 11.54.42 Quit utrack (Quit: WeeChat 1.3) 11.57.35 Join utrack [0] (~utrack@185.6.236.84) 11.57.57 Quit mc2739 (Ping timeout: 246 seconds) 12.00.08 Join mc2739 [0] (~mc2739@rockbox/developer/mc2739) 12.06.20 Quit narf_ (Ping timeout: 246 seconds) 12.13.34 Quit Tristitia (Read error: Connection reset by peer) 12.35.07 Join Guest18189 [0] (~Slayer@c-69-255-136-113.hsd1.va.comcast.net) 13.29.03 Join ruhannn [0] (uid76353@gateway/web/irccloud.com/x-nlmswukfyyqhlxsd) 13.33.06 *** Saving seen data "./dancer.seen" 14.14.05 Join ZincAlloy [0] (~Adium@p57B9529D.dip0.t-ipconnect.de) 14.46.33 Quit cmhobbs (Quit: Leaving) 14.46.46 Join cmhobbs [0] (~cmhobbs@ip98-186-66-92.fv.ks.cox.net) 14.46.46 Quit cmhobbs (Changing host) 14.46.46 Join cmhobbs [0] (~cmhobbs@fsf/member/cmhobbs) 15.04.14 Join amayer [0] (~amayer@mail.weberadvertising.com) 15.06.42 # kugel: reversing the logic in _battery_level() fixes startup crash. I mean in C side I implement setter JNIEXPORT void JNICALL Java_org_rockbox_monitors_BatteryMonitor_mBattLevelset(JNIEnv* env, jobject obj, jint mBattLevel) 15.07.26 # On java side I create BatteryMonitor instance on startup which calls setter instead of storing the result locally. 15.07.41 # This however does not solve other issues 15.10.13 Quit wodz (Quit: Leaving) 15.18.50 Quit cmhobbs (Ping timeout: 255 seconds) 15.33.09 *** Saving seen data "./dancer.seen" 15.54.53 Quit JanC (Ping timeout: 248 seconds) 15.57.00 Join YuMiki [0] (~Mikki@ipservice-092-208-087-221.092.208.pools.vodafone-ip.de) 16.09.10 Join JanC [0] (~janc@lugwv/member/JanC) 16.15.48 Join einhirn [0] (~Miranda@bsod.rz.tu-clausthal.de) 16.20.54 Join MMlosh [0] (~MMlosh@2001:470:6f:23:8c75:ca74:4a03:252d) 16.23.01 Quit krabador (Quit: Take The Time) 16.46.47 Quit einhirn (Quit: Miranda IM! Smaller, Faster, Easier. http://miranda-im.org) 16.47.05 Join einhirn [0] (~Miranda@bsod.rz.tu-clausthal.de) 17.02.24 Quit utrack (Remote host closed the connection) 17.33.12 *** Saving seen data "./dancer.seen" 17.47.19 Join TheLemon1an [0] (~lemonboy@unaffiliated/thelemonman) 17.50.15 Quit TheLemonMan (Ping timeout: 272 seconds) 17.57.04 Quit pamaury (Remote host closed the connection) 18.03.09 Join krabador [0] (~krabador@unaffiliated/krabador) 18.29.51 Quit krabador (Quit: Take The Time) 18.30.28 Join TheLemonMan [0] (~lemonboy@unaffiliated/thelemonman) 18.31.09 Quit einhirn (Ping timeout: 240 seconds) 18.33.24 Quit TheLemon1an (Ping timeout: 265 seconds) 19.06.35 Join pablo_pi_ [0] (~pablo@190.148.2.174) 19.09.09 Quit pablo_pi (Ping timeout: 240 seconds) 19.10.04 Join rela [0] (~x@pdpc/supporter/active/rela) 19.11.33 Join pablo_pi [0] (~pablo@190.148.2.174) 19.12.08 Quit pablo_pi_ (Ping timeout: 252 seconds) 19.14.31 Join bertrik [0] (~quassel@rockbox/developer/bertrik) 19.18.06 Nick snuffi_ is now known as snuffi (~quassel@heldscal.la) 19.18.12 Join lebellium [0] (~chatzilla@89-93-179-187.hfc.dyn.abo.bbox.fr) 19.19.14 Join petur [0] (~petur@rockbox/developer/petur) 19.25.53 Join xorly [0] (~xorly@ip-86-49-15-121.net.upcbroadband.cz) 19.26.09 Quit ender` (Quit: Puritanism - the haunting fear that someone, somewhere, may be happy. -- Henry Mencken) 19.32.14 Quit lebellium (Quit: ChatZilla 0.9.92 [Firefox 41.0/20150907144446]) 19.32.53 Nick suYin`OFF is now known as suYin (suYin@server1.bouncer4you.de) 19.33.15 *** Saving seen data "./dancer.seen" 19.36.49 Join lebellium [0] (~chatzilla@89-93-179-187.hfc.dyn.abo.bbox.fr) 19.48.52 Quit Parker_ (Quit: Leaving) 20.09.07 Join CustosLimen [0] (~CustosLim@unaffiliated/cust0slim3n) 20.24.05 Quit CustosLimen (Ping timeout: 265 seconds) 20.29.57 Join ender` [0] (krneki@foo.eternallybored.org) 20.34.07 Join pamaury [0] (~quassel@rockbox/developer/pamaury) 20.34.55 Join CustosLimen [0] (~CustosLim@unaffiliated/cust0slim3n) 20.41.27 Quit bertrik (Quit: No Ping reply in 180 seconds.) 20.41.37 Quit bzed (Remote host closed the connection) 20.41.51 Join bzed [0] (~bzed@shell.bzed.at) 20.41.58 Quit aevin2_ (Ping timeout: 252 seconds) 20.42.14 Quit zu (Ping timeout: 246 seconds) 20.42.42 Join bertrik [0] (~quassel@rockbox/developer/bertrik) 20.43.10 Join zu [0] (~zu@ks387228.kimsufi.com) 20.43.16 Join aevin2 [0] (~brootvors@nikon.hackeriet.no) 20.45.41 Join krabador [0] (~krabador@unaffiliated/krabador) 20.53.16 Join bluebrother [0] (~dom@rockbox/developer/bluebrother) 20.54.05 Join fs-bluebot [0] (~fs-bluebo@x5ce0ed11.dyn.telefonica.de) 20.56.04 Quit fs-bluebot_ (Ping timeout: 240 seconds) 20.57.05 Quit bluebrother^ (Ping timeout: 272 seconds) 20.58.55 Join girafe [0] (~girafe@AGrenoble-651-1-416-152.w90-52.abo.wanadoo.fr) 21.12.40 Join cmhobbs [0] (~cmhobbs@fsf/member/cmhobbs) 21.24.19 Quit CustosLimen (Ping timeout: 272 seconds) 21.31.41 Quit MMlosh (Quit: Bye...) 21.33.16 *** Saving seen data "./dancer.seen" 21.36.14 Join CustosLimen [0] (~CustosLim@unaffiliated/cust0slim3n) 21.49.19 Join chrisb [0] (~chrisb@li482-205.members.linode.com) 22.00.14 Quit cmhobbs (Ping timeout: 255 seconds) 22.13.09 # big news on the Rockbox planer: Gerrit is working again :) 22.18.21 # Yay! 22.20.11 Quit pablo_pi (Ping timeout: 264 seconds) 22.20.40 # Don't tell [Franklin], or we'll have to actually do things! 22.20.42 Join Parker_ [0] (~ParkerR@unaffiliated/parkerr) 22.20.42 Join pablo_pi [0] (~pablo@190.148.2.174) 22.31.47 Nick suYin is now known as suYin`OFF (suYin@server1.bouncer4you.de) 22.32.53 Quit Parker_ (Quit: Leaving) 22.33.46 Quit chrisb (Ping timeout: 264 seconds) 22.39.23 Quit dfkt_ (Read error: Connection reset by peer) 22.39.54 Join dfkt [0] (~dfkt@unaffiliated/dfkt) 22.49.39 Quit lebellium (Ping timeout: 250 seconds) 22.57.10 Join TheLemon1an [0] (~lemonboy@unaffiliated/thelemonman) 22.58.14 Join [Franklin] [0] (~franklin@unaffiliated/franklin) 23.00.14 Quit TheLemonMan (Ping timeout: 268 seconds) 23.08.32 Nick TheLemon1an is now known as TheLemonMan (~lemonboy@unaffiliated/thelemonman) 23.14.44 Join einhirn [0] (~Miranda@p4FC1106C.dip0.t-ipconnect.de) 23.16.43 Join ulmutul [0] (~chatzilla@x5f757cbf.dyn.telefonica.de) 23.23.45 Quit krabador (Quit: Take The Time) 23.29.24 # pamaury: seems like I can't sign in to gerrit anymore with my openid account. And I'm not able to view any file anonymously. So for me gerrit update is a real regression :( 23.31.37 Quit pamaury (Ping timeout: 265 seconds) 23.33.19 *** Saving seen data "./dancer.seen" 23.34.19 Quit YuMiki (Quit: YuMiki) 23.41.28 Quit amayer (Quit: Leaving) 23.44.38 Quit xorly (Ping timeout: 268 seconds) 23.53.12 Join TheLemon1an [0] (~lemonboy@unaffiliated/thelemonman) 23.56.13 Quit TheLemonMan (Ping timeout: 260 seconds)