--- Log for 12.10.115 Server: sinisalo.freenode.net Channel: #rockbox --- Nick: logbot- Version: Dancer V4.16 Started: 25 days and 19 hours ago 00.01.19 # <[Saint]> I'm still having a difficult time with the 'why' of it. 00.01.24 # <[Saint]> I'm not seeing it offhand. 00.05.30 # this register controls the 'MSC' clock, there are two MSC (MMC/SD controller) blocks: MSC0 and MSC1. So logically CPM_MSCCPR(i) controls MSCi clock right ? 00.05.47 # except not, MSC0 and MSC1 share the same clock 00.06.14 # the define makes it look like the two block have independent clock but that is not true 00.06.43 Quit FSanches (Quit: Leaving.) 00.19.28 Quit ender` (Quit: True terror is to wake up one morning and discover that your high school class is running the country. -- Kurt Vonnegut) 00.40.18 *** Saving seen data "./dancer.seen" 00.47.00 Part ZincAlloy1 00.48.02 Quit shamus (Read error: Connection reset by peer) 00.48.30 Join shamus [0] (~shmaus@ip-206-192-194-12.marylandheights.ip.cablemo.net) 01.02.30 Quit pamaury (Ping timeout: 265 seconds) 01.41.12 Quit Guest57670 (Read error: Connection reset by peer) 01.42.00 Join ivologger [0] (~ivologger@216-227-60-165.dsl.chatny.frpt.net) 02.03.40 Join rela [0] (~x@pdpc/supporter/active/rela) 02.10.04 Quit greatwolf (Ping timeout: 246 seconds) 02.34.50 Join greatwolf [0] (greatwolf@gateway/shell/panicbnc/x-xpmolhswhjragilj) 02.35.49 Join cmhobbs [0] (~cmhobbs@fsf/member/cmhobbs) 02.40.21 *** Saving seen data "./dancer.seen" 02.52.16 Quit cmhobbs (Ping timeout: 255 seconds) 03.07.06 Quit ParkerR (Remote host closed the connection) 03.13.42 Quit [Franklin] (Quit: Lost terminal) 03.41.39 Join ParkerR [0] (~ParkerR@unaffiliated/parkerr) 03.48.43 Quit ParkerR (Read error: Connection reset by peer) 03.49.04 Join cmhobbs [0] (~cmhobbs@fsf/member/cmhobbs) 03.56.10 Quit cmhobbs (Ping timeout: 255 seconds) 03.57.41 Join ParkerR [0] (~ParkerR@unaffiliated/parkerr) 04.11.26 Quit Aldem (Quit: Later) 04.34.19 Quit ParkerR (Remote host closed the connection) 04.37.47 Join ParkerR [0] (~ParkerR@unaffiliated/parkerr) 04.40.24 *** Saving seen data "./dancer.seen" 05.11.47 Quit Jinx (Quit: reboot) 05.31.54 Quit TheSeven (Disconnected by services) 05.32.08 Join [7] [0] (~quassel@rockbox/developer/TheSeven) 06.36.23 Quit shamus (Ping timeout: 255 seconds) 06.37.03 Join shamus [0] (~shmaus@ip-206-192-194-12.marylandheights.ip.cablemo.net) 06.40.28 *** Saving seen data "./dancer.seen" 06.53.40 Join FSanches [0] (~felipe@179.34.167.130) 07.03.17 Quit chxr (Ping timeout: 244 seconds) 07.08.56 Join chxr [0] (chxr@procasur.inc.cl) 07.17.17 Join JdGordon [0] (~jonno@rockbox/developer/JdGordon) 07.18.30 Quit JdGordon_ (Ping timeout: 240 seconds) 07.33.56 Quit Bray90820 () 07.34.35 Quit Strife89 (Ping timeout: 264 seconds) 07.51.22 Quit derf (Ping timeout: 260 seconds) 07.51.51 Join derf [0] (~derf@static-108-18-126-14.washdc.fios.verizon.net) 07.56.45 Quit pixelma (Remote host closed the connection) 07.56.45 Quit amiconn (Read error: Connection reset by peer) 07.56.56 Join pixelma [0] (~pixelma@rockbox/staff/pixelma) 07.56.59 Join amiconn [0] (~amiconn@rockbox/developer/amiconn) 08.08.22 Join wodz [0] (~wodz@iwl138.internetdsl.tpnet.pl) 08.24.12 Join ender` [0] (krneki@foo.eternallybored.org) 08.40.32 *** Saving seen data "./dancer.seen" 08.45.33 Join petur [0] (~petur@rockbox/developer/petur) 08.45.38 Quit FSanches (Remote host closed the connection) 08.52.24 Join xorly [0] (~xorly@ip-86-49-15-121.net.upcbroadband.cz) 09.12.33 # Whoop! Back in the build farm :) 09.31.25 Join FSanches [0] (~felipe@179.34.167.130) 09.56.44 Join maruk [0] (~papier@titanium.v6.sdv.fr) 09.58.55 Quit maruk (Client Quit) 10.40.35 *** Saving seen data "./dancer.seen" 11.00.54 Quit dfkt (Read error: Connection reset by peer) 11.42.18 Join pamaury [0] (~quassel@rockbox/developer/pamaury) 11.42.42 # wodz: did you see my comments on gerrit ? 11.42.53 # pamaury: yes 11.43.19 # I see you uploaded a new version, what are the differences ? 11.43.46 # pamaury: Don't look at it yet. It is WIP snapshot so I could easily continue at work 11.43.52 # ok 11.44.26 # I made progress with the JZ headers but they are annoyingly weird, I found a few errors and oddities 11.46.05 # pamaury: I think hwserver doesn't handle socket closing and cleaning up threads internal reflist. I am not sure how this should be handled 11.47.13 # You have to check, I think there is a way to tell if the socket has been disconnected (probably recv/send return EPIPE or something) 11.47.31 # then you should stop the loop in the thread and simulate a close on each opened handle 12.00.57 Quit pamaury (Ping timeout: 252 seconds) 12.34.12 Join pamaury [0] (~quassel@rockbox/developer/pamaury) 12.35.38 Join einhirn [0] (~Miranda@bsod.rz.tu-clausthal.de) 12.40.36 *** Saving seen data "./dancer.seen" 12.58.54 Quit [7] (Ping timeout: 250 seconds) 12.59.20 Join TheSeven [0] (~quassel@rockbox/developer/TheSeven) 13.06.30 # pamaury: Can you look at g#1222? I get double free error on when calling close() from client. 13.06.42 # 3Gerrit review #1222 at http://gerrit.rockbox.org/r/1222 : 3Extend hwstub_server so it can be used as generic backend by Marcin Bukat 13.07.12 # wodz: ok, I'll have a look. Did you try to use valgrind to debug this ? 13.07.50 # pamaury: it fails on libusb_close() in hwstub_release() (well backend specific version of course). 13.07.57 # pamaury: no, will check 13.09.02 # valgrind can tell you when it was first freed 13.09.38 # my guess is a problem with reference counting 13.09.47 # well, in valgrind it doesn't crash :-) 13.10.20 # and doesn't print an error about double free ?? 13.10.33 # I tried second time and now it crashed 13.13.16 # pamaury: http://pastie.org/10476408 13.14.33 # but this doesn't make any sense 13.15.18 # wodz: you forgot to set buf to NULL after the free() I think 13.15.32 # that *another* bug 13.15.36 Quit shamus (Read error: Connection reset by peer) 13.16.01 # hmm 13.16.07 Join shamus [0] (~shmaus@ip-206-192-194-12.marylandheights.ip.cablemo.net) 13.17.06 Quit Rower (Ping timeout: 250 seconds) 13.17.12 Join Rower [0] (husvagn@d83-183-134-99.cust.tele2.se) 13.21.23 # pamaury: http://pastie.org/10476418 13.21.49 # pamaury: this seems to reflect the point where double free is hit 13.23.41 # wodz: a log of the requests sent by the client would be useful I guess, it seems GET_DESC was called after CLOSE, or the server incorrectly closed a device in use 13.24.00 # I don't have much time, I'll need to go for lunch in 5min 13.24.41 # http://pastie.org/10476422 13.24.57 # you are right but I have no idea why it is so 13.26.13 # I need to go, I'll be back in 30min. If you can't solve it, upload the latest code to gerrit and I'll try to debug it right after my lunch break 13.27.06 # ok 13.50.16 # pamaury: looks like I figured it out. New version uploaded 14.12.04 Quit alucryd (Remote host closed the connection) 14.13.05 Join alucryd [0] (~quassel@archlinux/developer/alucryd) 14.27.25 # wodz: it would be useful to document things a little it more. I can put comments on gerrit if you want 14.27.40 # yes please 14.33.16 # wodz: in my comments, I will suggest to rename ref to id because that's confusing 14.33.28 # (the ref that are not ref count I mean) 14.33.41 # pamaury: if you could also update hwstub_shell so it updates hwstub.dev when hwserver_dev_open() is called 14.34.02 # pamaury: ok 14.34.46 # wodz: yeah I'll have a look at hwstub_shell 14.35.58 # pamaury: it is now hacked to the point that it starts up, connect to server (hardcoded to localhost:8888 now) and is able to issue hwserver_get_dev_list() hwserver_dev_open() and hwserver_dev_close() 14.40.38 *** Saving seen data "./dancer.seen" 14.43.51 # wodz: the point of my hwstub rework with hwstub_open_uri was to *not* use hwserver and hwstub_open_tcp directly 14.44.10 # or is it just some temporary hack to test it ? 14.45.24 # 1) It is quick hack to test it BUT 2) As I stated earlier I would like to see hwstub_server as general backend for the clients so clients do not speak directly to the devices 14.46.20 # pamaury: ^ 14.51.50 # Hum, I need to think about it, maybe we need a different API for users of hwstub (like hwstub_shell) and the the low-level part used by hwstub_server 14.52.54 # you could have other transport mechanism than TCP and for debugging purposes, I think that being able to talk the devices directly may be useful (although it would clearly not be the default) 14.55.27 # I am thinking not about removing direct access from lib. I just would like to have default backend with multiclients capability. It all started from upgrade to the protocol so two clients can't connect to the same device at once. That means no no for qeditor and hwstub_shell at once which was useful configuration. 14.56.25 # yeah yeah I understand, we need to have the library launch a server if none is reachable but still keep the capability of doing otherwise if explicitely wanted 14.56.32 # that's why I think we need a different API 14.57.15 # let's make hwstub_server work before :) 14.57.56 # wodz: why do you hwstub_release() in dev_node::close() if ref_count is 1 ? 14.58.50 Join amayer [0] (~amayer@mail.weberadvertising.com) 14.58.54 # I think ref count handling is still not right, I'll put some comments 14.59.11 # ref_cnt=1 means that device is connected but no client opened it yet 14.59.30 # so if ref_cnt drops to 1 that means we can hwstub_release() it 15.00.32 # and what does ref_cnt=0 means ?! 15.00.55 # I think this is not consistent with is_referenced() implementation 15.01.19 # that it is defunc (aka disconnected) and there is no client referencing it 15.01.57 # I don't understand, is it not the point of connected ? 15.02.30 # it seems to me that reference count and connection status are two different things 15.03.15 # or I am missing something ? 15.04.04 # you are right 15.04.20 # I will add some comment on how to fix that (I hope) 15.04.26 # I thought I updated ref_cnt code but apparently didn't 15.08.29 Join JdGordon_ [0] (~jonno@rockbox/developer/JdGordon) 15.10.38 Quit JdGordon (Ping timeout: 240 seconds) 15.15.44 Join ZincAlloy [0] (~Adium@p5B2FCB6E.dip0.t-ipconnect.de) 15.16.38 Join stickyb1t [0] (~egon@avondaleaber.plus.com) 15.17.32 # wodz: see my comments 15.18.02 # I suggest a rewrite of device cleanup (I proposed an implementation in the comments) 15.24.48 # pamaury: the adjustment of i-- in hwstub_cleanup_devices() looks super weird 15.25.10 # that because you remove the ith entry, so the next time you loop, don't want to skip the next ith entry 15.26.03 # I think this fairly typical code when you remove elements from a vector while processing it 15.26.28 # I don't really see how to implement it differently, except with a while loop if you prefer 15.27.02 # size_t i = 0; 15.27.02 # while(i < list.size()){ if(/* */) list.erase(list.begin() +i); else i++; } 15.27.12 # yeah maybe better 15.30.44 Join st1ckyb1t [0] (~egon@avondaleaber.plus.com) 15.31.06 Quit stickyb1t (Quit: Konversation terminated!) 15.31.08 Quit st1ckyb1t (Read error: Connection reset by peer) 15.35.05 Quit orly_owl (Read error: Connection reset by peer) 15.35.14 Join orly_owl [0] (~david@unaffiliated/orly-owl/x-3167833) 15.43.34 # [Franklin] (logs): see g#1223, note this is untested 15.43.46 # 3Gerrit review #1223 at http://gerrit.rockbox.org/r/1223 : 3usb: implementation fast transfer completion on ARC (UNTESTED) by Amaury Pouly 15.43.58 # (I mostly took parts of the USB audio code) 15.46.19 Join JdGordon [0] (~jonno@ppp118-209-114-125.lns20.mel4.internode.on.net) 15.46.19 Quit JdGordon (Changing host) 15.46.19 Join JdGordon [0] (~jonno@rockbox/developer/JdGordon) 15.48.59 Quit JdGordon_ (Ping timeout: 255 seconds) 15.56.06 Quit einhirn (Read error: Connection reset by peer) 15.56.17 # pamaury: In hwstub_tcp_handler_cleanup() you need to hold the lock as close() modifies shared resource 15.56.34 Join einhirn [0] (~Miranda@bsod.rz.tu-clausthal.de) 15.57.44 # wodz: you are right, actually this is also a problem for open() 15.57.58 # but it must be fixed by a per dev_node mutex I would say 15.58.32 # ? 15.58.33 # or open()/close() should take the devlist_mutex lock() 15.59.03 # the fact that open()/close() have to lock is not related to devlist 15.59.26 # it's related to the fact that two threads should not hwstub_open()/hwstub_close() concurrently 16.00.23 # well it is related to the fact that actual device object is shared 16.01.27 # the call to open() and close() are protected in HWSERVER_DEV_OPEN and HWSERVER_DEV_CLOSE cases 16.01.49 # hum, ok but they put a comment in dev_node to explain that they need to be called with a lock 16.01.52 # *then 16.02.21 # and put a lock in hwstub_tcp_handler_cleanup() 16.03.00 # yes 16.03.30 # concurreny is really tricky :) this server is super simple and we are still not clean on locks ^^ 16.09.36 Join ZincAlloy1 [0] (~Adium@pD9FB6ED2.dip0.t-ipconnect.de) 16.10.44 Quit ZincAlloy (Ping timeout: 256 seconds) 16.11.27 # pamaury: updated version uploaded 16.14.20 # wodz: does that compile ?? 16.14.29 # you change ref to id in some places but not all 16.15.25 # it compiles here 16.15.41 # weird 16.16.24 # try clean and rebuild ? 16.17.09 # ah, lib doesn't build 16.17.21 Ctcp Ignored 1 channel CTCP requests in 0 seconds at the last flood 16.17.21 # * wodz grumbles 16.17.30 # the makefile doesn't check hwstub_protocol.h 16.19.42 # I'm thinking, the dev_node dtor shouldn't have to release the device, if it does, it means someone still has references to it, which is very bad, don't you think ? 16.20.30 # I added it as 'the last line of defence' 16.20.45 # ok 16.23.35 # now it should compile 16.25.59 # wodz: I commented patchset 11 16.26.46 # mostly typos, there are couple serious issues: 16.26.46 # - bogus unref in ctor 16.26.46 # - the server should differentiate between INVALID_ID and DISCONNECTED 16.29.20 # I will fix later today or tomorrow. Thanks for review and brainstorming. 16.29.25 Quit wodz (Quit: Leaving) 16.40.06 Join Strife89 [0] (~Strife89@adsl-98-80-212-18.mcn.bellsouth.net) 16.40.41 *** Saving seen data "./dancer.seen" 16.48.29 Quit Strife89 (Ping timeout: 260 seconds) 17.01.13 Nick suYin`OFF is now known as suYin (mysuyin@server2.shellfire.net) 17.44.35 Quit einhirn (Quit: Miranda IM! Smaller, Faster, Easier. http://miranda-im.org) 17.48.16 Join girafe [0] (~girafe@AGrenoble-651-1-466-206.w90-42.abo.wanadoo.fr) 17.50.58 Quit FSanches (Quit: Leaving.) 18.40.45 *** Saving seen data "./dancer.seen" 19.23.13 Join lebellium [0] (~chatzilla@89-93-179-187.hfc.dyn.abo.bbox.fr) 19.39.10 Quit pamaury (Ping timeout: 244 seconds) 19.42.43 Join bertrik [0] (~quassel@rockbox/developer/bertrik) 19.52.35 Quit shamus (Quit: chaos reigns within reflect repent and reboot order shall return) 20.00.11 Join shamus [0] (~shmaus@ip-206-192-194-12.marylandheights.ip.cablemo.net) 20.00.19 Join TheLemonMan [0] (~lemonboy@unaffiliated/thelemonman) 20.17.36 Join pamaury [0] (~quassel@rockbox/developer/pamaury) 20.40.47 *** Saving seen data "./dancer.seen" 21.08.46 Quit bluebrother (Disconnected by services) 21.08.49 Join fs-bluebot_ [0] (~fs-bluebo@f053155053.adsl.alicedsl.de) 21.08.52 Join bluebrother [0] (~dom@rockbox/developer/bluebrother) 21.10.58 Quit fs-bluebot (Ping timeout: 264 seconds) 22.14.00 Quit xorly (Ping timeout: 252 seconds) 22.40.48 *** Saving seen data "./dancer.seen" 23.02.37 Quit lebellium (Quit: ChatZilla 0.9.92 [Firefox 42.0/20151008162217]) 23.13.18 Quit ruhans (Quit: Connection closed for inactivity) 23.25.17 Quit TheLemonMan (Quit: "It's now safe to turn off your computer.") 23.27.07 Quit girafe (Quit: Leaving) 23.32.47 Quit rela (Read error: Connection reset by peer) 23.34.09 Quit uber (Ping timeout: 250 seconds) 23.51.02 Nick suYin is now known as suYin`OFF (mysuyin@server2.shellfire.net)