arigato changed the topic of #pypy to: PyPy, the flexible snake (IRC logs: https://quodlibet.duckdns.org/irc/pypy/latest.log.html#irc-end ) | use cffi for calling C | mac OS and Fedora are not Windows
xcm is now known as Guest14056
Guest14056 has quit [Killed (hitchcock.freenode.net (Nickname regained by services))]
xcm has joined #pypy
jacob22 has quit [Quit: Konversation terminated!]
jacob22 has joined #pypy
jacob22 has quit [Remote host closed the connection]
jacob22 has joined #pypy
ceridwen has quit [Remote host closed the connection]
meejah has joined #pypy
ceridwen has joined #pypy
ceridwen has quit [Changing host]
ceridwen has joined #pypy
PileOfDirt has quit [Remote host closed the connection]
<njs> oh that's awesome someone found a minimal reproducer for that tqdm deadlock
<njs> that really threw someone for a loop a few months ago in the trio channel
xcm has quit [Remote host closed the connection]
xcm has joined #pypy
forgottenone has joined #pypy
_whitelogger has joined #pypy
dddddd has quit [Remote host closed the connection]
speeder39_ has joined #pypy
xcm has quit [Read error: Connection reset by peer]
xcm has joined #pypy
<mattip> njs: hopefully there is a connection between that reproducer and the tqdm deadlock.
<mattip> tqdm uses multiprocess.map, the reproducer uses threads
<njs> mattip: yeah, fingers crossed
<njs> I did not get far in figuring out wtf tqdm is doing, so I really have no idea what is likely to fix it :-)
<mattip> :)
<njs> (tqdm is astonishingly opaque)
<njs> tqdm does use background threads even if your program doesn't, for some reason, so that part of the reproducer seemed plausible
<njs> and it does look like tqdm always uses a multiprocessing.RLock *and* a threading.RLock, whether it needs to or not
<njs> belt -and- suspenders
speeder39_ has quit [Quit: Connection closed for inactivity]
Remi_M has quit [Quit: See you!]
Remi_M has joined #pypy
<mattip> grr, buildbot is not running py3.6 builds after "onlyIfChanged=True" in d9f4120168a1
<mattip> I will back it out for now, maybe I can ask the buildbot people what the proper incantation is
<kenaan> mattip buildbot 84d044d684af /bot2/pypybuildbot/master.py: disable py3.6 onlyIfChanged
bbot2_ has quit [Quit: buildmaster reconfigured: bot disconnecting]
bbot2 has joined #pypy
<bbot2> Started: http://buildbot.pypy.org/builders/own-linux-x86-32/builds/6405 [mattip: force build, py3.6]
<bbot2> Started: http://buildbot.pypy.org/builders/own-linux-x86-64/builds/7428 [mattip: force build, py3.6]
<bbot2> Started: http://buildbot.pypy.org/builders/own-win-x86-32/builds/2032 [mattip: force build, py3.6]
<bbot2> Started: http://buildbot.pypy.org/builders/own-linux-s390x/builds/1270 [mattip: force build, py3.6]
<bbot2> Started: http://buildbot.pypy.org/builders/pypy-c-jit-win-x86-32/builds/4566 [mattip: force build, py3.6]
<bbot2> Started: http://buildbot.pypy.org/builders/pypy-c-jit-linux-s390x/builds/1059 [mattip: force build, py3.6]
<bbot2> Started: http://buildbot.pypy.org/builders/rpython-linux-x86-32/builds/172 [mattip: force build, py3.6]
<kenaan> mattip default 539ac859532e /pypy/tool/release/force-builds.py: remove arm32 builds, update for python3
jaffachief has joined #pypy
forgottenone has quit [Ping timeout: 246 seconds]
jaffachief has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
mattip has quit [Quit: ZNC 1.6.6+deb1ubuntu0.1 - http://znc.in]
antocuni has joined #pypy
mattip has joined #pypy
jaffachief has joined #pypy
lritter has joined #pypy
<bbot2> Failure: http://buildbot.pypy.org/builders/rpython-linux-x86-32/builds/172 [mattip: force build, py3.6]
forgottenone has joined #pypy
siddhesh has joined #pypy
tsaka__ has quit [Ping timeout: 268 seconds]
tsaka__ has joined #pypy
<bbot2> Failure: http://buildbot.pypy.org/builders/own-linux-x86-32/builds/6405 [mattip: force build, py3.6]
<bbot2> Failure: http://buildbot.pypy.org/builders/own-linux-x86-64/builds/7428 [mattip: force build, py3.6]
antocuni has quit [Ping timeout: 245 seconds]
jcea has joined #pypy
ronan has joined #pypy
ruda_porto has joined #pypy
jerith_ is now known as jerith
<bbot2> Failure: http://buildbot.pypy.org/builders/pypy-c-jit-win-x86-32/builds/4566 [mattip: force build, py3.6]
jcea has quit [Remote host closed the connection]
jcea has joined #pypy
_whitelogger has joined #pypy
Rhy0lite has joined #pypy
adamholmberg has quit [Remote host closed the connection]
adamholmberg has joined #pypy
<kenaan> mattip semlock-deadlock 09ebb064a7b8 /pypy/module/_multiprocessing/test/test_semaphore.py: add a test that hangs with SemLock (issue 2953)
<kenaan> mattip semlock-deadlock 9f2243789dfb /pypy/module/_multiprocessing/interp_semaphore.py: add debugging code for test_in_threads
dddddd has joined #pypy
antocuni has joined #pypy
ronan has quit [Ping timeout: 258 seconds]
ronan has joined #pypy
ronan has quit [Ping timeout: 258 seconds]
ronan has joined #pypy
dmalcolm has joined #pypy
<bbot2> Failure: http://buildbot.pypy.org/builders/own-linux-s390x/builds/1270 [mattip: force build, py3.6]
xcm has quit [Remote host closed the connection]
xcm has joined #pypy
Kamiccolo has joined #pypy
<Kamiccolo> for now >1 packing for structs is only supported for cffi in-line ABI mode, right?
<Kamiccolo> precompiling wrapper ffibuilder fails with NotImplemented error if having some crappy library with mixed paddings over 1 :|
forgottenone has quit [Quit: Konversation terminated!]
Kamiccolo has quit [Remote host closed the connection]
il_ratto has left #pypy [#pypy]
nimaje has quit [Read error: Connection reset by peer]
nimaje has joined #pypy
<mattip> https://pastebin.com/eHbshmyQ is the result of runnin the test in 09ebb064a7b8
<mattip> note that in the last two lines, the thread ending in 016 does not print semlock_release before trying to acquire the lock again with sem_wait
<mattip> so it seems to calls __enter__ twice without calling __exit__
<mattip> somehow the self.count is getting to 2, the call chain for release is exit -> release -> (if self.count <= 1) ->semlock_release
forgottenone has joined #pypy
* mattip suspecting the logic in W_SemLock._is_mine
<mattip> the check "self.count > 0 and rthread.get_ident() == self.last_tid" is not atomic
alawrence has joined #pypy
alawrence has quit [Client Quit]
ruda_porto has quit [Ping timeout: 258 seconds]
ruda_porto has joined #pypy
alawrence has joined #pypy
jaffachief has quit [Quit: My MacBook has gone to sleep. ZZZzzz…]
ronan has quit [Ping timeout: 258 seconds]
marky1991 has joined #pypy
ronan has joined #pypy
<bbot2> Failure: http://buildbot.pypy.org/builders/own-win-x86-32/builds/2032 [mattip: force build, py3.6]
ruda_porto has quit [Remote host closed the connection]
antocuni has quit [Ping timeout: 258 seconds]
marky1991 has quit [Ping timeout: 258 seconds]
marky1991 has joined #pypy
forgottenone has quit [Quit: Konversation terminated!]
dddddd has quit [Ping timeout: 246 seconds]
<mattip> the code for acquire/release needs to hold the GIL. The other locks defer to C but this is written in python :(
* mattip off
<mattip> anyone else want to take a look?
<alawrence> mattip: Is this anything to do with the winapi?
<mattip> alawrence: only if you use a _multiprocessing.RLock
<mattip> it might explain why the buildbot hung, but then again there might be more bugs than this one
<alawrence> There is definitely something strange going on in the multiprocessing tests.
<alawrence> I havent got to the bottom of what is causing the behaviour yet.
<alawrence> One thing that I have seen is that a skipped test produces an error code which is then picked up in subsequent tests that would pass otherwise.
<mattip> which tests are you looking at?
<alawrence> lib-python\3\test\test_multiprocessing_spawn.py WithManagerTestSemaphore.test_timeout WithProcessesTestArray.test_array
<alawrence> WithManagerTestSemaphore does some overlapped io but is actually skipped. I think the test setup/teardown still runs and something goes wrong there.
<alawrence> Then when test_array is run it is encountering the error code from the other test.
<alawrence> I have done something similar in cpython and the error code doesn't seem to polute the second test. Although I don't know if it is a real problem as I haven't replicated the situation exactly.
<mattip> testsemaphore suggest it might be hitting the semaphore problem
marky1991 has quit [Read error: Connection reset by peer]
marky1991 has joined #pypy
marky1991 has quit [Remote host closed the connection]
marky1991 has joined #pypy
<alawrence> It could be related but I would expect the test to just hang if that was the issue.
mattip has left #pypy ["Leaving"]
ronan has quit [Ping timeout: 257 seconds]
ronan has joined #pypy
ronan has quit [Ping timeout: 258 seconds]
ronan has joined #pypy
Rhy0lite has quit [Quit: Leaving]
ronan has quit [Ping timeout: 258 seconds]
dddddd has joined #pypy
xcm has quit [Remote host closed the connection]
ronan has joined #pypy
xcm has joined #pypy
lritter has quit [Ping timeout: 276 seconds]
ilbelkyr_ has quit [Quit: :tiuQ]
ilbelkyr has joined #pypy
marky1991 has quit [Read error: Connection reset by peer]
rtw_ has joined #pypy
marky1991 has joined #pypy
rtw_ has quit [Quit: Mutter: www.mutterirc.com]
ronan has quit [Ping timeout: 258 seconds]
marky1991 has quit [Ping timeout: 245 seconds]
ronan has joined #pypy
rtw_ has joined #pypy
rtw_ has quit [Client Quit]
marky1991 has joined #pypy
marky1991 has quit [Ping timeout: 258 seconds]
ronan has quit [Ping timeout: 257 seconds]
ronan has joined #pypy
danchr has quit [Quit: ZNC - http://znc.sourceforge.net]
danchr has joined #pypy
danchr is now known as Guest86212
ronan has quit [Ping timeout: 258 seconds]
ronan has joined #pypy
jcea has quit [Remote host closed the connection]
ronan has quit [Ping timeout: 258 seconds]
squeaky_pl has joined #pypy
<squeaky_pl> I think this might be interesting to many attending this channel: http://fsl.cs.illinois.edu/index.php/A_Complete_Formal_Semantics_of_x86-64_User-Level_Instruction_Set_Architecture
squeaky_pl has quit [Quit: Leaving]
adamholmberg has quit [Remote host closed the connection]
adamholmberg has joined #pypy
adamholmberg has quit [Remote host closed the connection]
adamholmberg has joined #pypy
adamholmberg has quit [Remote host closed the connection]
adamholmberg has joined #pypy
adamholmberg has quit [Remote host closed the connection]
adamholmberg has joined #pypy
adamholmberg has quit [Remote host closed the connection]
adamholmberg has joined #pypy
adamholmberg has quit [Remote host closed the connection]
adamholmberg has joined #pypy
adamholmberg has quit [Remote host closed the connection]
adamholmberg has joined #pypy
adamholmberg has quit [Remote host closed the connection]
adamholmberg has joined #pypy
adamholmberg has quit [Remote host closed the connection]
adamholmberg has joined #pypy
adamholmberg has quit [Remote host closed the connection]
adamholmberg has joined #pypy
adamholmberg has quit [Remote host closed the connection]
adamholmberg has joined #pypy