--- Log for 14.09.115 Server: card.freenode.net Channel: #rockbox --- Nick: logbot Version: Dancer V4.16 Started: 2 days and 11 hours ago 00.08.20 Join ZincAlloy1 [0] (~Adium@p5B2FDBEA.dip0.t-ipconnect.de) 00.09.13 Quit amiconn (Read error: Connection reset by peer) 00.09.43 Quit bzed (Read error: Connection reset by peer) 00.09.52 Join bzed [0] (~bzed@shell.bzed.at) 00.09.58 Join amiconn [0] (~amiconn@rockbox/developer/amiconn) 00.10.52 Quit munch (Excess Flood) 00.11.15 Join munch [0] (~munch@unaffiliated/munch) 00.11.24 Quit ZincAlloy (Ping timeout: 253 seconds) 00.28.07 Quit pixelma (Disconnected by services) 00.28.08 Join pixelma_ [0] (~pixelma@rockbox/staff/pixelma) 00.28.10 Nick pixelma_ is now known as pixelma (~pixelma@rockbox/staff/pixelma) 00.29.16 Join bertrik_ [0] (~quassel@rockbox/developer/bertrik) 00.30.42 Join igitoor_ [0] (igitur@2a00:d880:3:1::c1ca:a648) 00.30.52 Quit igitoor_ (Changing host) 00.30.52 Join igitoor_ [0] (igitur@unaffiliated/contempt) 00.34.54 Quit bertrik (*.net *.split) 00.34.54 Quit igitoor (*.net *.split) 00.34.55 Quit Staphylo (*.net *.split) 00.34.55 Quit foolsh (*.net *.split) 00.35.14 Nick igitoor_ is now known as igitoor (igitur@unaffiliated/contempt) 00.41.12 Join foolsh [0] (~quassel@2601:241:c200:4bc5:9d1:e320:929:2650) 00.45.05 *** Saving seen data "./dancer.seen" 00.45.12 Quit pamaury (Ping timeout: 250 seconds) 00.48.15 Quit bertrik_ (Remote host closed the connection) 01.24.15 Join Staphylo [0] (~Staphylo@2a01:4f8:190:126a:d70a:378:c354:a3a3) 01.38.26 Quit TheLemonMan (Quit: "It's now safe to turn off your computer.") 01.44.29 Quit [Franklin] (Remote host closed the connection) 02.04.02 Join Strife89 [0] (~Strife89@adsl-98-80-234-205.mcn.bellsouth.net) 02.31.59 Join soap_ [0] (~soap@rockbox/staff/soap) 02.34.48 Quit soap (Ping timeout: 240 seconds) 02.45.08 *** Saving seen data "./dancer.seen" 02.50.16 Join Bray9082_ [0] (~Bray90820@173-20-148-89.client.mchsi.com) 02.50.37 Quit Bray90820 (Ping timeout: 268 seconds) 03.30.28 Join ZincAlloy [0] (~Adium@p57B95071.dip0.t-ipconnect.de) 03.33.04 Quit ZincAlloy1 (Ping timeout: 246 seconds) 04.04.00 Quit Moarc (Ping timeout: 264 seconds) 04.06.08 Join Moarc [0] (~chujko@a105.net128.okay.pl) 04.09.32 Nick Bray9082_ is now known as Bray90820 (~Bray90820@173-20-148-89.client.mchsi.com) 04.45.09 *** Saving seen data "./dancer.seen" 05.00.57 Quit [Saint] (Ping timeout: 246 seconds) 05.06.24 Quit [7] (Disconnected by services) 05.06.33 Join TheSeven [0] (~quassel@rockbox/developer/TheSeven) 05.25.12 Quit foolsh (Remote host closed the connection) 05.26.30 Quit munch (Ping timeout: 246 seconds) 05.27.30 Join foolsh [0] (~quassel@2601:241:c200:4bc5:210c:2d5c:64d9:46c2) 05.29.40 Join munch [0] (~munch@unaffiliated/munch) 05.48.47 Quit ZincAlloy (Quit: Leaving.) 06.39.16 Quit Strife89 (Ping timeout: 250 seconds) 06.42.30 Join advcomp2019 [0] (~advcomp20@unaffiliated/advcomp2019) 06.45.12 *** Saving seen data "./dancer.seen" 08.22.24 Join ender` [0] (krneki@foo.eternallybored.org) 08.22.47 Quit pixelma (Remote host closed the connection) 08.22.47 Quit amiconn (Read error: Connection reset by peer) 08.22.53 Join wodz [0] (~wodz@iwl138.internetdsl.tpnet.pl) 08.23.24 Join pixelma [0] (~pixelma@rockbox/staff/pixelma) 08.23.29 Join amiconn [0] (~amiconn@rockbox/developer/amiconn) 08.33.34 Quit zoktar (Read error: Connection reset by peer) 08.38.05 Join zoktar [0] (~zoktar@78-72-45-32-no186.tbcn.telia.com) 08.38.05 Quit zoktar (Changing host) 08.38.05 Join zoktar [0] (~zoktar@unaffiliated/zoktar) 08.45.13 *** Saving seen data "./dancer.seen" 09.20.27 Join xorly [0] (~xorly@ip-86-49-15-121.net.upcbroadband.cz) 09.29.19 Join pamaury [0] (~quassel@rockbox/developer/pamaury) 09.42.49 Quit alucryd (Remote host closed the connection) 09.43.04 Join alucryd [0] (~quassel@archlinux/developer/alucryd) 09.43.57 Join MMlosh [0] (~MMlosh@2001:470:6f:23:116e:afd0:c28c:f812) 09.53.57 Join JdGordon_ [0] (~jonno@rockbox/developer/JdGordon) 09.56.52 Quit JdGordon (Ping timeout: 246 seconds) 10.09.00 Quit pamaury (Ping timeout: 250 seconds) 10.12.16 # wodz: sorry for not answering 10.13.59 # RooAoA threading is commplex: When you start the App, then an activity (on the process main (ui) thread is launched). The activity starts the service which runs on a separate thread, so it can't make UI calls but is required for backgroudn operation. both are java threads 10.19.21 # the service then calls the native Java_org_rockbox_RockboxService_main() which then calls main(), this is all within the RockboxService's thread, so yes a java-spawned thread 10.19.40 Join krabador [0] (~krabador@unaffiliated/krabador) 10.21.10 # during execution we create more threads with our own create_thread() function. this uses sigaltstack to create user threads. these run within the java-service-thread, however they have a separate execution context (naturally) 10.21.48 # "attached to the JVM" is not really applicable for our user threads, since you can only OS threads (pthreads) 10.25.52 # the user threads are attached in that their hosting pthread is attached, however they are not attached because AttachCurrentThread() has not been invoked for them 10.32.44 Join pamaury [0] (~quassel@rockbox/developer/pamaury) 10.39.49 # kugel: So in this context android 5.0 documentation is cristal clear - jni calls can't be made from detached threads where native thread before AttachCurrentThread() is detached. 10.40.22 # they are both attached and not attached :) 10.41.10 # the problem is that they seemed to have introduced a stack pointer check that hits when one of our user threads calls into java 10.41.25 # yes 10.41.47 # the AttachCurrentThread() constraint is effective since the beginning of android 10.41.57 Join utrack [0] (~utrack@85.234.38.85) 10.42.12 # it worked because the host thread is attached and there was no stack overflow check 10.43.29 # can't we call AttachCurrentThread() for user threads on creation? 10.43.59 # no 10.44.19 # well, I haven't tried but I don't expect it would work 10.44.39 # as per docs, AttachCurrentThread() creates a java Thread object and associates some TLS 10.45.04 # pretty sure it uses pthread APIs to access that TLS which would break with user threads 10.45.14 *** Saving seen data "./dancer.seen" 10.46.47 # we should be able to workaroud with a separate worker threads that all can use to make java calls 10.47.02 # one worker thread 10.48.07 # you mean to abstract jni calls and pass message only that such call is needed, right? 10.48.31 # yea 10.48.44 # could work, pretty hacky though 10.48.56 # every solution will be hacky 10.48.57 # and quite a bit of work 10.49.06 # unless you make rockbox work with preemptive threads :-) 10.49.52 # we don't have lots of java calls, it shouldn't be too much work. and actually you can avoid that if you know the current user thread is the rockbox main thread 10.50.22 # since that runs on the stack assigned by java during RockboxService creation 10.50.53 # Do we have facility for task to check if it is run from particular thread? 10.51.27 Quit utrack (Quit: WeeChat 1.3) 10.52.05 Join utrack [0] (~utrack@85.234.38.85) 10.54.37 Quit utrack (Client Quit) 10.55.45 # kugel: ? 10.57.40 # wodz: "thread_self() == 0" should do it 10.58.49 # or rather "thread_self() == THREAD_SLOT_ID(0)" 10.59.08 # slot 0 is always the main thread because that's initialized first 10.59.38 # for other threads their id is returned by create_thread(), you'd have to store that in some global 11.01.03 # ok, but we don't have to know exact thread id, it is enough to know we are not main 11.02.05 # yea 11.05.04 Join utrack_ [0] (~utrack@85.234.38.85) 11.09.57 Join pamaury_ [0] (~quassel@rockbox/developer/pamaury) 11.12.31 Quit utrack_ (Quit: WeeChat 1.3) 11.12.42 Join utrack_ [0] (~utrack@85.234.38.85) 11.16.09 Quit utrack_ (Client Quit) 11.19.03 Join rela_ [0] (~x@p200300764D496700C0E10A8FF43E1BA0.dip0.t-ipconnect.de) 11.19.05 Quit rela_ (Remote host closed the connection) 11.19.13 Join utrack [0] (~u@94.181.180.130) 11.20.30 Quit pamaury_ (Ping timeout: 244 seconds) 11.23.43 Quit rela (Ping timeout: 268 seconds) 11.23.44 Quit krabador (Quit: Take The Time) 11.23.54 Quit utrack (Changing host) 11.23.54 Join utrack [0] (~u@unaffiliated/utrack) 12.39.20 Join JdGordon [0] (~jonno@ppp118-209-98-87.lns20.mel4.internode.on.net) 12.39.20 Quit JdGordon (Changing host) 12.39.20 Join JdGordon [0] (~jonno@rockbox/developer/JdGordon) 12.42.44 Quit JdGordon_ (Ping timeout: 256 seconds) 12.43.49 Quit JdGordon (Ping timeout: 246 seconds) 12.44.18 Join JdGordon [0] (~jonno@rockbox/developer/JdGordon) 12.45.17 *** Saving seen data "./dancer.seen" 12.45.50 Quit chrisb (Ping timeout: 255 seconds) 12.49.22 Join JdGordon_ [0] (~jonno@rockbox/developer/JdGordon) 12.52.09 Quit JdGordon (Ping timeout: 252 seconds) 12.56.44 Quit Makinit (Quit: bye) 12.59.23 Quit scorche|sh (Ping timeout: 246 seconds) 13.01.12 Join scorche|sh [0] (~scorche@squisch.net) 13.01.12 Quit scorche|sh (Changing host) 13.01.12 Join scorche|sh [0] (~scorche@rockbox/administrator/scorche) 13.18.21 Quit user890104 (Ping timeout: 250 seconds) 13.18.51 Join user890104 [0] (Venci@unaffiliated/user890104) 13.23.18 Join ZincAlloy [0] (~Adium@p57B95071.dip0.t-ipconnect.de) 14.28.06 Join Parker_ [0] (~ParkerR@unaffiliated/parkerr) 14.40.12 Join krabador [0] (~krabador@unaffiliated/krabador) 14.45.05 Quit cmhobbs (Ping timeout: 255 seconds) 14.45.18 *** Saving seen data "./dancer.seen" 14.46.50 Quit CustosLimen (Ping timeout: 256 seconds) 14.57.35 Join petur [0] (~petur@rockbox/developer/petur) 15.00.46 Join CustosLimen [0] (~CustosLim@unaffiliated/cust0slim3n) 15.08.14 Join amayer [0] (~amayer@mail.weberadvertising.com) 15.36.46 Join TheLemonMan [0] (~lemonboy@unaffiliated/thelemonman) 15.47.25 Quit Bray90820 (Ping timeout: 252 seconds) 15.48.51 Quit TheLemonMan (Quit: "It's now safe to turn off your computer.") 15.56.58 Quit wodz (Remote host closed the connection) 16.05.57 Quit petur (Remote host closed the connection) 16.10.06 Join TheLemonMan [0] (~lemonboy@unaffiliated/thelemonman) 16.28.42 Quit CustosLimen (Ping timeout: 250 seconds) 16.29.34 Quit xorly (Ping timeout: 250 seconds) 16.34.55 Join CustosLimen [0] (~CustosLim@unaffiliated/cust0slim3n) 16.45.22 *** Saving seen data "./dancer.seen" 17.08.10 Join petur [0] (~petur@rockbox/developer/petur) 17.25.09 Join einhirn [0] (~Miranda@p4FC11221.dip0.t-ipconnect.de) 17.29.29 Quit einhirn (Ping timeout: 240 seconds) 17.30.00 Join einhirn [0] (~Miranda@bsod.rz.tu-clausthal.de) 17.33.39 Quit pamaury (Remote host closed the connection) 17.56.11 Quit suYin`OFF (Ping timeout: 264 seconds) 18.03.46 Join c22 [0] (~c22@intmail.alpeslasers.ch) 18.16.39 Join suYin`OFF [0] (suYin@server1.bouncer4you.de) 18.17.06 Quit c22 (Remote host closed the connection) 18.45.26 *** Saving seen data "./dancer.seen" 18.55.45 Join c22 [0] (~c22@213.55.176.143) 19.15.18 Join lebellium [0] (~chatzilla@89-93-179-187.hfc.dyn.abo.bbox.fr) 19.21.38 Quit TheLemonMan (Quit: "It's now safe to turn off your computer.") 19.53.41 Quit MMlosh (Quit: Bye...) 20.27.32 Quit CustosLimen (Ping timeout: 252 seconds) 20.30.51 Join CustosLimen [0] (~CustosLim@unaffiliated/cust0slim3n) 20.43.23 Quit krabador (Ping timeout: 250 seconds) 20.45.27 *** Saving seen data "./dancer.seen" 20.54.13 Quit bluebrother (Disconnected by services) 20.54.18 Join bluebrother^ [0] (~dom@rockbox/developer/bluebrother) 20.54.52 Join fs-bluebot_ [0] (~fs-bluebo@x5ce77954.dyn.telefonica.de) 20.56.16 Quit c22 (Remote host closed the connection) 20.56.47 Join c22 [0] (~c22@213.55.176.143) 20.56.57 Quit fs-bluebot (Ping timeout: 246 seconds) 21.00.38 Join chrisb [0] (~chrisb@li482-205.members.linode.com) 21.55.19 Join girafe [0] (~girafe@AGrenoble-651-1-416-152.w90-52.abo.wanadoo.fr) 22.22.42 Join pamaury [0] (~quassel@rockbox/developer/pamaury) 22.45.28 Join jtdesigns01 [0] (~jtdesigns@2601:400:8000:2669:1cec:434d:e202:97fb) 22.45.30 *** Saving seen data "./dancer.seen" 22.46.20 Quit jtdesigns01 (Client Quit) 22.46.38 Join jtdesigns01 [0] (~jtdesigns@2601:400:8000:2669:1cec:434d:e202:97fb) 22.46.55 Quit jtdesigns01 (Client Quit) 22.47.28 Join jtdesigns01 [0] (~jtdesigns@2601:400:8000:2669:1cec:434d:e202:97fb) 22.50.13 Quit jtdesigns01 (Read error: Connection reset by peer) 23.03.47 Quit einhirn (Quit: Miranda IM! Smaller, Faster, Easier. http://miranda-im.org) 23.06.23 Join bertrik [0] (~quassel@rockbox/developer/bertrik) 23.14.44 Quit lebellium (Quit: ChatZilla 0.9.92 [Firefox 41.0/20150910171927]) 23.19.56 Quit chrisb (Ping timeout: 250 seconds) 23.19.59 Quit petur (Quit: Leaving) 23.22.00 Join chrisb [0] (~chrisb@li482-205.members.linode.com) 23.23.55 Quit c22 (Remote host closed the connection) 23.29.02 Quit amayer (Quit: Leaving) 23.34.14 Join TheLemonMan [0] (~lemonboy@unaffiliated/thelemonman) 23.34.45 Quit chrisb (Ping timeout: 240 seconds) 23.43.22 Quit pamaury (Ping timeout: 264 seconds) 23.54.23 Join krabador [0] (~krabador@unaffiliated/krabador)