2014-10-01T00:01:58Z attila_lendvai quit (Quit: Leaving.) 2014-10-01T00:02:14Z milosn joined #sbcl 2014-10-01T00:05:12Z slyrus quit (Ping timeout: 245 seconds) 2014-10-01T00:11:17Z snafuchs quit (Ping timeout: 260 seconds) 2014-10-01T00:12:46Z snafuchs joined #sbcl 2014-10-01T01:01:06Z csziacobus quit (Quit: csziacobus) 2014-10-01T01:35:01Z hlavaty` joined #sbcl 2014-10-01T01:35:10Z edgar-rfx joined #sbcl 2014-10-01T01:36:36Z hlavaty quit (Ping timeout: 260 seconds) 2014-10-01T01:38:52Z edgar-rft quit (Ping timeout: 272 seconds) 2014-10-01T02:38:52Z christoph_debian quit (Ping timeout: 240 seconds) 2014-10-01T02:41:48Z weissschloss quit (Max SendQ exceeded) 2014-10-01T02:44:32Z weissschloss joined #sbcl 2014-10-01T02:52:11Z christoph_debian joined #sbcl 2014-10-01T02:57:09Z karswell` quit (Ping timeout: 272 seconds) 2014-10-01T03:08:38Z drmeister_ quit (Ping timeout: 244 seconds) 2014-10-01T03:28:13Z drmeiste_ joined #sbcl 2014-10-01T03:30:36Z drmeiste_ is now known as drmeister_ 2014-10-01T03:37:19Z drmeister_ quit (Quit: Leaving...) 2014-10-01T03:41:14Z drmeiste_ joined #sbcl 2014-10-01T03:41:37Z gingerale joined #sbcl 2014-10-01T03:41:48Z drmeiste_ quit (Client Quit) 2014-10-01T04:04:32Z carvite quit (Ping timeout: 272 seconds) 2014-10-01T04:06:41Z carvite joined #sbcl 2014-10-01T04:22:48Z scymtym_ quit (Ping timeout: 250 seconds) 2014-10-01T04:48:37Z gingerale quit (Ping timeout: 272 seconds) 2014-10-01T05:05:39Z pranavrc joined #sbcl 2014-10-01T05:12:38Z oleo__ quit (Quit: Verlassend) 2014-10-01T06:10:15Z edgar-rfx is now known as edgar-rft 2014-10-01T06:20:12Z fridim__ joined #sbcl 2014-10-01T06:40:01Z reb quit (Ping timeout: 260 seconds) 2014-10-01T06:40:06Z Posterdati quit (Quit: KVIrc 4.1.3 Equilibrium http://www.kvirc.net/) 2014-10-01T06:43:06Z Posterdati joined #sbcl 2014-10-01T06:45:58Z Hydan` is now known as Hydan 2014-10-01T07:05:59Z pranavrc quit (Read error: Connection reset by peer) 2014-10-01T07:15:12Z pranavrc joined #sbcl 2014-10-01T07:15:13Z pranavrc quit (Changing host) 2014-10-01T07:15:13Z pranavrc joined #sbcl 2014-10-01T09:57:37Z attila_lendvai joined #sbcl 2014-10-01T10:23:12Z stassats joined #sbcl 2014-10-01T11:35:54Z fableal joined #sbcl 2014-10-01T11:46:48Z stassats quit (Ping timeout: 246 seconds) 2014-10-01T11:48:42Z guicho joined #sbcl 2014-10-01T11:56:09Z attila_lendvai quit (Quit: Leaving.) 2014-10-01T11:59:01Z Posterdati quit (Quit: KVIrc 4.1.3 Equilibrium http://www.kvirc.net/) 2014-10-01T11:59:53Z Posterdati joined #sbcl 2014-10-01T12:51:23Z guicho quit (Ping timeout: 240 seconds) 2014-10-01T13:02:27Z fableal left #sbcl 2014-10-01T13:13:12Z guicho joined #sbcl 2014-10-01T13:26:59Z oleo joined #sbcl 2014-10-01T13:45:08Z pranavrc quit 2014-10-01T14:30:33Z ccl-logbot joined #sbcl 2014-10-01T14:30:33Z 2014-10-01T14:30:33Z names: ccl-logbot stassats nyef oleo Posterdati fridim__ carvite christoph_debian weissschloss edgar-rft hlavaty` snafuchs milosn psilord yacks qbit DGASAU kanru njmurphy flip214 Bike p_l scymtym heddwch fikusz jackdaniel leo2007 thoto irsol pkhuong @Krystof leoc sobel les asedeno yauz jsnell alchemis7 faheem akkad Hydan specbot minion joshe jdz Intensity nicdev antoszka Perlboy p_l|backup brucem mood sav luis redline6561 pchrist fe[nl]ix Blkt ferada White_Flame 2014-10-01T14:30:33Z names: ams cracauer_ ivan`` |3b| foom 2014-10-01T14:33:22Z stassats quit (Ping timeout: 250 seconds) 2014-10-01T14:34:09Z jdz quit (Ping timeout: 260 seconds) 2014-10-01T14:34:49Z jdz joined #sbcl 2014-10-01T14:42:02Z edgar-rft quit (Quit: lifetime lost because something burns) 2014-10-01T15:03:59Z gingerale joined #sbcl 2014-10-01T15:14:19Z attila_lendvai joined #sbcl 2014-10-01T15:19:19Z stassats joined #sbcl 2014-10-01T15:22:05Z stassats: nyef: so, dxing saps is fine, except for sb-unix::sigint-handler 2014-10-01T15:22:31Z stassats: and sigint-handler does look weird indeed, see the comment there 2014-10-01T15:25:00Z slyrus joined #sbcl 2014-10-01T15:31:45Z nyef: stassats: I wasn't able to trigger anything by running the --lose-on-corruption test on my iBook G4, btw. 2014-10-01T15:31:53Z nyef: (With HEAD as of two days ago.) 2014-10-01T15:32:04Z stassats: C-c C-c triggers a memfault 2014-10-01T15:32:23Z nyef: Where's sigint-handler? 2014-10-01T15:32:33Z stassats: sb-unix::sigint-handler 2014-10-01T15:32:41Z nyef: Ah, target-signal. 2014-10-01T15:32:41Z stassats: it passes the pointer out of dx 2014-10-01T15:33:02Z stassats: well, just copy it, but i don't like the whole thing sigint-handler does 2014-10-01T15:33:12Z stassats: which the comment there explains 2014-10-01T15:33:24Z nyef: Yeah, just found it, haven't read it yet. 2014-10-01T15:35:55Z nyef: Right, that's complete nonsense. 2014-10-01T15:36:54Z stassats: and now i know why when trying to interrupt a particular thread from htop i always get the main thread 2014-10-01T15:38:23Z nyef: Is there a way to determine if a given SIGINT is an interactive (C-c) vs. more directly-aimed signal? 2014-10-01T15:38:42Z stassats: i wouldn't think so 2014-10-01T15:39:07Z stassats: i guess the problem is when in the repl, invoking the debugger from a different thread is a bit problematic 2014-10-01T15:39:18Z stassats: since access to the terminal may be contested 2014-10-01T15:39:34Z nyef: There's a whole mess of terminal/debugger arbitration already. 2014-10-01T15:41:06Z stassats: let me try copying the sap 2014-10-01T15:41:10Z nyef: si_code, maybe? 2014-10-01T15:41:28Z nyef: (SI_USER or SI_TKILL vs. SI_KERNEL) 2014-10-01T15:41:55Z nyef: Ah, also si_pid and si_uid. 2014-10-01T15:42:52Z nyef: And, actually, if it's SI_USER then we would probably want the interactive behavior, and if it's SI_TKILL then it's specifically directed to a particular thread. 2014-10-01T15:43:20Z stassats: i bet that's linux only 2014-10-01T15:43:36Z nyef: No bet. 2014-10-01T15:43:55Z stassats: or just broken on other targets 2014-10-01T15:43:59Z nyef: ... there are non-linux operating systems? (only half joking.) 2014-10-01T15:44:16Z stassats: (see the whole solaris sigcontext mess) 2014-10-01T15:46:17Z stassats: compiling with copying the SAP 2014-10-01T15:46:28Z stassats: nyef: i also tested on arm and ppc, works nicely 2014-10-01T15:47:19Z nyef: Copying the SAP shouldn't help overmuch: The entire mechanism is broken. 2014-10-01T15:47:47Z nyef: I mean, it should at least not CRASH, but the SAP value is garbage. 2014-10-01T15:48:15Z stassats: you mean the thing SAP points to? 2014-10-01T15:48:18Z nyef: Yeah. 2014-10-01T15:48:24Z stassats: well, it never presented a problem before 2014-10-01T15:48:42Z nyef: It's pointing to a random, possibly-already-overwritten, no-longer-allocated memory location. 2014-10-01T15:48:51Z stassats: and all it does is just printing the address 2014-10-01T15:49:10Z stassats: is sigcontext DX? 2014-10-01T15:49:26Z nyef: We can't assume that it's not. 2014-10-01T15:49:32Z nyef: And in many cases, absolutely it is. 2014-10-01T15:49:34Z stassats: maybe we can? 2014-10-01T15:50:00Z stassats: and the address is actually useless with multiple threads, even if it's correct 2014-10-01T15:50:35Z nyef: Part of the whole point of the altstack games that we were playing on ARM, before I realized that it was more trouble than sticking our CSP in a static symbols, was to keep the sigcontext off of our (boxeD) control stack. 2014-10-01T15:50:35Z stassats: in slime, it'd be fine to interrupt the receiving thread, but what about the repl? 2014-10-01T15:51:29Z nyef: In the REPL, the foreground thread has the foreground, and won't release it without an explicit release. If that's the thread that's locked up and the signal gets delivered elsewhere then it doesn't help. 2014-10-01T15:51:47Z stassats: so, maybe just copy the PC, and report it? 2014-10-01T15:51:52Z stassats: without capturing the context 2014-10-01T15:52:44Z stassats: does anything actually inspect the context? 2014-10-01T15:53:04Z nyef: Doesn't the debugger use it as part of the backtrace mechanism, and isn't it a potential source of GC roots? 2014-10-01T15:54:38Z stassats: when it's stashed into the interactive-interrupt condition? 2014-10-01T15:55:49Z stassats: nothing even calls system-condition-context 2014-10-01T15:55:50Z nyef: It's pushed to the interrupt-context stack for the thread. 2014-10-01T15:55:58Z stassats: and i think contextes are saved in the runtime somewhere 2014-10-01T15:56:12Z nyef: Which is then used in the escaped-frame stuff in the backtracer. 2014-10-01T15:56:33Z stassats: so, we can just stop saving the context in the condition 2014-10-01T15:56:49Z nyef: Not if we want to be able to restart it. 2014-10-01T15:57:03Z nyef: That's the other bit, SIGINT is supposed to be resumable. 2014-10-01T15:57:07Z stassats: it isn't used for that? it isn't used at all? 2014-10-01T15:58:34Z stassats: all it's used for is to print "Interactive interrupt at #x7FFFF71DBBB7." 2014-10-01T15:58:44Z nyef: Hrm. 2014-10-01T15:58:52Z nyef: What a waste of potential. /-: 2014-10-01T15:58:54Z stassats: so, copying the SAP makes it immune to C-c C-c 2014-10-01T15:59:08Z stassats: nyef: sure, but let's just fix it first, make it better later 2014-10-01T15:59:56Z nyef: And that's very likely to confuse anyone who actually needs to poke through the interrupt contexts for whatever reason. Lovely. 2014-10-01T16:00:19Z stassats: hm, so, another idea, don't use interrupt-thread, just sand another sigint to the foreground thread? 2014-10-01T16:00:25Z nyef: But okay, if we force the SAP to be duplicated there, that's workable... 2014-10-01T16:00:28Z stassats: that way it can get its own context? 2014-10-01T16:00:55Z nyef: That'd be a better idea, if it's portable. 2014-10-01T16:03:24Z stassats: portable probably means windows, i can test that 2014-10-01T16:03:34Z stassats: and how well it works with sb-safepoint 2014-10-01T16:03:39Z nyef: I was more thinking of oddball unix variants, but yeah. 2014-10-01T16:04:11Z nyef: ... Actually, is trying to port to MIPS IRIX worth a look? 2014-10-01T16:04:44Z nyef: The reason I ask is that I have a half-decent MIPS box, but Linux doesn't run on it and I simply don't have the project bandwidth right now to make it happen. 2014-10-01T16:04:58Z stassats: except that using dead OSes is even worse than using dead CPUs? 2014-10-01T16:06:48Z nyef: Yeah, that's the downside. We already have a MIPS backend that needs a bit of TLC, but porting to another MIPS OS to do so seems a bit extreme. 2014-10-01T16:07:26Z stassats: (and by dead CPUs i meant alpha) 2014-10-01T16:07:44Z stassats: so, where does C-c send the signal? 2014-10-01T16:07:48Z nyef: That's one of the other two backends that I want to get cleaned up. 2014-10-01T16:07:55Z stassats: where does kill send the signal? 2014-10-01T16:08:13Z nyef: An interactive C-c sends it to the "process" which, IIRC, means that any thread could end up picking it up. 2014-10-01T16:10:44Z stassats: bah, no solution is good 2014-10-01T16:11:21Z stassats: i guess it's easier just to leave the status quo 2014-10-01T16:14:12Z flip214 is now known as flip216 2014-10-01T16:15:46Z tmh_ joined #sbcl 2014-10-01T16:17:43Z christoph_debian quit (Ping timeout: 244 seconds) 2014-10-01T16:17:44Z sav quit (Ping timeout: 244 seconds) 2014-10-01T16:18:30Z stassats: if kill interrupted the main thread, things would have been easier 2014-10-01T16:18:37Z psilord quit (Ping timeout: 244 seconds) 2014-10-01T16:19:11Z christoph_debian joined #sbcl 2014-10-01T16:19:52Z stassats: oh yeah, there's also fun when the thread you were sending a signal dies in the meantime 2014-10-01T16:20:11Z stassats: where is my unix barf bag 2014-10-01T16:20:28Z psilord joined #sbcl 2014-10-01T16:22:14Z nyef: stassats: In the back of the unix-haters handbook, of course. (-: 2014-10-01T16:30:44Z attila_lendvai quit (Quit: Leaving.) 2014-10-01T17:38:46Z slyrus quit (Ping timeout: 272 seconds) 2014-10-01T17:48:00Z Hache_ joined #sbcl 2014-10-01T18:45:04Z stassats quit (Quit: ERC Version 5.3 (IRC client for Emacs)) 2014-10-01T18:46:34Z sdemarre joined #sbcl 2014-10-01T18:53:01Z slyrus joined #sbcl 2014-10-01T18:57:31Z gingerale quit (Ping timeout: 272 seconds) 2014-10-01T19:02:22Z eudoxia joined #sbcl 2014-10-01T19:14:16Z slyrus_ joined #sbcl 2014-10-01T19:17:52Z slyrus quit (Ping timeout: 240 seconds) 2014-10-01T19:18:05Z slyrus_ is now known as slyrus 2014-10-01T20:15:12Z sdemarre quit (Ping timeout: 245 seconds) 2014-10-01T20:59:47Z reb joined #sbcl 2014-10-01T21:46:33Z scymtym_ joined #sbcl 2014-10-01T21:47:45Z davazp joined #sbcl 2014-10-01T21:50:54Z oleo is now known as Guest4240 2014-10-01T21:51:46Z oleo__ joined #sbcl 2014-10-01T21:54:37Z Guest4240 quit (Ping timeout: 272 seconds) 2014-10-01T22:22:44Z fridim__ quit (Ping timeout: 272 seconds) 2014-10-01T22:51:00Z attila_lendvai joined #sbcl 2014-10-01T23:00:37Z Hache_ quit (Ping timeout: 245 seconds) 2014-10-01T23:08:41Z attila_lendvai quit (Quit: Leaving.) 2014-10-01T23:16:04Z Bicyclidine joined #sbcl 2014-10-01T23:16:09Z Bicyclidine quit (Client Quit) 2014-10-01T23:16:26Z Bicyclidine joined #sbcl 2014-10-01T23:43:23Z eudoxia quit (Quit: leaving)