00:08:09 psilord [~psilord@c-24-118-208-140.hsd1.mn.comcast.net] has joined #sbcl
02:14:55 -!- psilord [~psilord@c-24-118-208-140.hsd1.mn.comcast.net] has quit [Quit: Leaving.]
03:07:43 echo-area [~user@182.92.247.2] has joined #sbcl
03:19:56 attila_lendvai [~attila_le@5.34.27.192] has joined #sbcl
03:19:56 -!- attila_lendvai [~attila_le@5.34.27.192] has quit [Changing host]
03:19:56 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #sbcl
03:30:29 -!- _travis_ [~nonya@c-24-127-49-108.hsd1.va.comcast.net] has quit [Ping timeout: 252 seconds]
03:38:26 angavrilov [~angavrilo@217.71.227.190] has joined #sbcl
03:44:18 wbooze [~wbooze@xdsl-84-44-208-187.netcologne.de] has joined #sbcl
04:00:34 psilord [~psilord@c-69-180-173-249.hsd1.mn.comcast.net] has joined #sbcl
04:24:00 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Quit: Leaving.]
05:16:06 attila_lendvai [~attila_le@37.99.51.76] has joined #sbcl
05:16:07 -!- attila_lendvai [~attila_le@37.99.51.76] has quit [Changing host]
05:16:07 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #sbcl
05:50:09 Kryztof [~user@81.174.155.115] has joined #sbcl
05:50:09 -!- ChanServ has set mode +o Kryztof
06:43:21 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Quit: Leaving.]
07:47:53 attila_lendvai [~attila_le@37.99.77.23] has joined #sbcl
07:47:53 -!- attila_lendvai [~attila_le@37.99.77.23] has quit [Changing host]
07:47:53 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #sbcl
08:18:10 prxq [~mommer@mnhm-590c1fa7.pool.mediaWays.net] has joined #sbcl
08:19:06 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Ping timeout: 256 seconds]
08:20:00 attila_lendvai [~attila_le@188-143-59-238.pool.digikabel.hu] has joined #sbcl
08:20:00 -!- attila_lendvai [~attila_le@188-143-59-238.pool.digikabel.hu] has quit [Changing host]
08:20:00 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #sbcl
08:24:38 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Ping timeout: 265 seconds]
08:25:30 attila_lendvai [~attila_le@37.99.77.23] has joined #sbcl
08:25:30 -!- attila_lendvai [~attila_le@37.99.77.23] has quit [Changing host]
08:25:30 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #sbcl
08:27:33 -!- prxq [~mommer@mnhm-590c1fa7.pool.mediaWays.net] has quit [Quit: Leaving]
08:29:29 prxq [~mommer@mnhm-590c1fa7.pool.mediaWays.net] has joined #sbcl
08:55:52 -!- christoph_debian [~user@oteiza.siccegge.de] has quit [Remote host closed the connection]
09:02:20 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Ping timeout: 265 seconds]
09:06:27 jdz [~jdz@89.201.99.128] has joined #sbcl
09:23:10 -!- prxq [~mommer@mnhm-590c1fa7.pool.mediaWays.net] has quit [Remote host closed the connection]
09:36:51 prxq [~mommer@mnhm-590c1fa7.pool.mediaWays.net] has joined #sbcl
09:42:56 -!- wbooze [~wbooze@xdsl-84-44-208-187.netcologne.de] has quit [Ping timeout: 245 seconds]
09:58:25 christoph_debian [~user@oteiza.siccegge.de] has joined #sbcl
09:59:04 _travis_ [~nonya@c-24-127-49-108.hsd1.va.comcast.net] has joined #sbcl
10:04:09 -!- _travis_ [~nonya@c-24-127-49-108.hsd1.va.comcast.net] has quit [Ping timeout: 276 seconds]
10:10:26 _travis_ [~nonya@c-24-127-49-108.hsd1.va.comcast.net] has joined #sbcl
10:31:44 -!- echo-area [~user@182.92.247.2] has quit [Remote host closed the connection]
10:50:01 -!- _travis_ [~nonya@c-24-127-49-108.hsd1.va.comcast.net] has quit [Ping timeout: 245 seconds]
11:23:56 attila_lendvai [~attila_le@87.247.56.195] has joined #sbcl
11:23:56 -!- attila_lendvai [~attila_le@87.247.56.195] has quit [Changing host]
11:23:56 attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has joined #sbcl
11:50:59 -!- attila_lendvai [~attila_le@unaffiliated/attila-lendvai/x-3126965] has quit [Quit: Leaving.]
12:25:41 _travis_ [~nonya@c-98-244-123-185.hsd1.va.comcast.net] has joined #sbcl
12:33:20 -!- prxq [~mommer@mnhm-590c1fa7.pool.mediaWays.net] has quit [Quit: Leaving]
12:33:50 tsuru`` [~charlie@adsl-74-179-17-227.bna.bellsouth.net] has joined #sbcl
12:35:28 -!- tsuru` [~charlie@adsl-98-87-45-218.bna.bellsouth.net] has quit [Ping timeout: 246 seconds]
12:46:00 tsuru``` [~charlie@adsl-74-179-198-33.bna.bellsouth.net] has joined #sbcl
12:47:34 -!- tsuru`` [~charlie@adsl-74-179-17-227.bna.bellsouth.net] has quit [Ping timeout: 246 seconds]
12:47:41 -!- psilord [~psilord@c-69-180-173-249.hsd1.mn.comcast.net] has quit [Quit: Leaving.]
13:25:19 gko [~user@114-34-168-13.HINET-IP.hinet.net] has joined #sbcl
13:37:49 psilord [~psilord@23-25-144-217-static.hfc.comcastbusiness.net] has joined #sbcl
14:07:03 -!- ASau [~user@95-26-148-61.broadband.corbina.ru] has quit [Remote host closed the connection]
14:07:47 wbooze [~wbooze@xdsl-78-35-171-225.netcologne.de] has joined #sbcl
14:08:11 ASau [~user@95-26-148-61.broadband.corbina.ru] has joined #sbcl
14:12:49 tsuru```` [~charlie@adsl-74-179-196-139.bna.bellsouth.net] has joined #sbcl
14:14:12 -!- tsuru``` [~charlie@adsl-74-179-198-33.bna.bellsouth.net] has quit [Ping timeout: 244 seconds]
14:20:40 -!- tsuru```` [~charlie@adsl-74-179-196-139.bna.bellsouth.net] has quit [Ping timeout: 246 seconds]
15:09:39 hargettp [~hargettp@65.219.237.244] has joined #sbcl
15:23:19 -!- michaelw_ [~michaelw@tor.foldr.org] has quit [Ping timeout: 246 seconds]
15:31:00 -!- hargettp [~hargettp@65.219.237.244] has quit [Quit: Colloquy for iPhone - http://colloquy.mobi]
15:57:12 rpg [~rpg@23-25-144-217-static.hfc.comcastbusiness.net] has joined #sbcl
16:58:59 -!- rpg [~rpg@23-25-144-217-static.hfc.comcastbusiness.net] has quit [Quit: rpg]
17:12:11 -!- wbooze [~wbooze@xdsl-78-35-171-225.netcologne.de] has quit [Quit: none]
17:15:09 18WABP88B [~rpg@23-25-144-217-static.hfc.comcastbusiness.net] has joined #sbcl
17:15:52 wbooze [~wbooze@xdsl-78-35-171-225.netcologne.de] has joined #sbcl
17:25:12 tsuru` [~charlie@adsl-98-87-43-112.bna.bellsouth.net] has joined #sbcl
17:35:48 interesting... the linear regression tells me that a branchful stable-sort-list is slightly faster than instead using conditional moves here.
17:47:17 -!- psilord [~psilord@23-25-144-217-static.hfc.comcastbusiness.net] has quit [Quit: Leaving.]
18:28:49 -!- _travis_ [~nonya@c-98-244-123-185.hsd1.va.comcast.net] has quit [Ping timeout: 246 seconds]
18:58:43 -!- angavrilov [~angavrilo@217.71.227.190] has quit [Ping timeout: 268 seconds]
19:25:57 When a thread INTERRUPT-THREADs itself, what would you expect to happen? Should it interrupt itself immediately, or (possibly) a little later?
19:26:16 How does the answer change if we're in WITHOUT-INTERRUPTS?
19:26:29 *Kryztof* wants to be on holiday again
19:26:32 How does the answer change if we're in a SIGALRM handler?
19:28:09 lichtblau: I'd hope for a queue of interruptions, without recursive interruptions, as much as possible.
19:29:05 did all of the sbcl devs go on holiday at once or something?
19:29:13 I don't think so
19:29:26 but then, I was on holiday, so I don't know :-)
19:29:41 _travis_ [~nonya@pool-71-171-69-72.clppva.east.verizon.net] has joined #sbcl
19:30:27 lichtblau: I don't feel that it is vital that the interruption function runs before any more of the rest of the thread's execution, so a little later would be fine if that is easier to implement
19:30:49 Kryztof: bah, that's the opposite of what I wanted to hear!
19:30:55 on the other hand I wouldn't even object if interrupt-thread on its own thread just converted to funcall
19:31:04 ah, that's better
19:31:32 someone else will probably point out a corner case which makes that not possible; I'm too rusty to think about it
19:32:32 -!- jdz [~jdz@89.201.99.128] has quit [Read error: Connection reset by peer]
19:32:37 jdz_ [~jdz@89.201.99.128] has joined #sbcl
19:34:55 Let's look at WITH-TIMEOUT. Here is what (I think) happens:
19:35:15 WITH-TIMEOUT schedules a TIMER -> SIGALRM handler goes through the timers, finds the timer, invokes it -> timer calls INTERRUPT-THREAD -> function gets queued into THREAD-INTERRUPTIONS, SIGPIPE gets sent.
19:35:49 -!- 18WABP88B is now known as rpg
19:36:04 So we're in a second signal handler now. Interestingly, the timer stuff does a WITHOUT-INTERRUPTS, so I believe (but haven't checked) that the SIGPIPE actually gets delayed until after the SIGALRM.
19:36:12 Am I making sense so far?
19:38:18 Now enter safepoints. With safepoints, we don't want to do all those signals. So INTERRUPT-THREAD doesn't use signals much. We have two cases now: INTERRUPT-THREAD of a different thread: Trigger safepoint, wait for the target thread to trap. INTERRUPT-THREAD of itself: In this case, we can't do the safepoint thing. And therein lies the problem.
19:38:51 So currently, we my theory is that safepoint-using INTERRUPT-THREAD of itself would simply do the thread-interruption immediately as a funcall.
19:39:09 But that's forbidden, because we're in SIGALRM, and interrupts are disabled.
19:40:00 jdz [~jdz@89.201.99.128] has joined #sbcl
19:40:00 -!- jdz_ [~jdz@89.201.99.128] has quit [Read error: Connection reset by peer]
19:42:19 Could signals in safepoint be handled with a non-recursive event pumping loop?
19:43:08 So if we're already handling an interruption, ignore any remaining or new (asynch) interrupt?
20:02:02 -!- _travis_ [~nonya@pool-71-171-69-72.clppva.east.verizon.net] has quit [Ping timeout: 240 seconds]
20:06:00 jdz_ [~jdz@89.201.99.128] has joined #sbcl
20:06:00 -!- jdz [~jdz@89.201.99.128] has quit [Read error: Connection reset by peer]
20:07:25 -!- ASau [~user@95-26-148-61.broadband.corbina.ru] has quit [Remote host closed the connection]
20:08:30 ASau [~user@95-26-148-61.broadband.corbina.ru] has joined #sbcl
20:23:15 _travis_ [~nonya@c-24-127-49-108.hsd1.va.comcast.net] has joined #sbcl
20:51:08 yes, I suppose so.
20:51:19 So specifically, INTERRUPT-THREAD should actually delay the interruption in that case until later, right? I think that's a good resolution, because it means that my earlier attempt at fixing this problem by doing it immediately was wrong. Progress!
20:52:25 I would think that the "event pumping" (if I understand it right) ought to be doable using the existing signal handling machinery though; as long as we have all that signal stuff we ought to use it.
20:53:43 cool. I was afraid we somehow depended on recursive signalling.
21:03:02 Next up: Figuring out why the windows version uses signals where the posix version doesn't, which is odd considering that windows doesn't have signals.
21:09:42 I'm excited about this... If I can make the soft write barriers work, SBCL will be much easier to embed
21:10:13 no signal, no mprotect trick, no more interrupting foreign code!
21:10:33 -!- jdz_ [~jdz@89.201.99.128] has quit [Quit: Byebye.]
21:10:34 \o/
21:26:02 will any of these things help with calls from foreign threads?
21:26:39 |3b|: not really.
21:26:51 or if i'm remembering correctly that the windows fork handles that, will merging it help other platforms?
21:27:17 I wouldn't know
21:27:51 *|3b|* was reminded that i want that again while reading new opengl spec, since one of the newer features is the ability to get a callback on errors
21:28:46 easier embedding would be nice too though :)
21:28:58 -!- rpg [~rpg@23-25-144-217-static.hfc.comcastbusiness.net] has quit [Quit: rpg]
21:37:20 kwmiebach [kwmiebach@37-188-126-213.static.cloud-ips.co.uk] has joined #sbcl
21:40:57 -!- _travis_ [~nonya@c-24-127-49-108.hsd1.va.comcast.net] has quit [Ping timeout: 276 seconds]
21:42:35 _travis_ [~nonya@c-24-127-49-108.hsd1.va.comcast.net] has joined #sbcl
22:00:27 -!- _travis_ [~nonya@c-24-127-49-108.hsd1.va.comcast.net] has quit [Ping timeout: 276 seconds]
22:09:24 -!- wbooze [~wbooze@xdsl-78-35-171-225.netcologne.de] has quit [Read error: Operation timed out]
22:39:53 3b: I haven't merged that yet -- for either platform. The stack switching logic doesn't translate to posix directly, but I'd prefer do implement such features for all platforms, so I'll look into it.
22:41:33 lichtblau: really? I thought stack switching was a lot easier in !windows.
22:44:40 I'm not saying it's harder or easier, just that it doesn't translate directly because of those differences, and that I haven't studied it yet.
22:46:41 I suppose I shouldn't have called it stack switching -- let's say "the fiber stuff".
22:48:39 it would be a nice feature, i've seen a few projects fail due to that (audio stuff in particular seems to like callbacks from random threads)
22:48:55 *|3b|* wonders how many other lisps do/don't support that
22:54:56 And Anton said that posix contexts should be a drop-in replacement for fibers, which I'm ready to believe, but that didn't entirely answer my question as why we need either of those.
23:12:54 -!- kwmiebach [kwmiebach@37-188-126-213.static.cloud-ips.co.uk] has quit [Quit: Leaving]