2017-12-01T00:02:12Z dougk quit (Ping timeout: 240 seconds) 2017-12-01T00:10:07Z nyef: Hrm. No, that's not it. The lock message is always "locked in phase 1", no matter what the actual phase is. 2017-12-01T00:12:42Z nyef: Passing a pthread_mutex_t to printf() as though it were a pointer seems somewhat farfetched to me. 2017-12-01T00:19:51Z cromachina joined #sbcl 2017-12-01T00:31:25Z dougk joined #sbcl 2017-12-01T00:39:24Z nyef: Current branch name: "unsafepoints". 2017-12-01T00:45:59Z dougk quit (Ping timeout: 250 seconds) 2017-12-01T00:45:59Z stassats: unclearpoints 2017-12-01T00:46:27Z nyef: Mmm. 2017-12-01T01:02:36Z prxq quit (Remote host closed the connection) 2017-12-01T01:22:11Z Jesin joined #sbcl 2017-12-01T01:47:37Z stassats quit (Read error: Connection reset by peer) 2017-12-01T01:57:42Z karswell joined #sbcl 2017-12-01T02:01:32Z Aaryn quit (Read error: Connection reset by peer) 2017-12-01T02:13:07Z angavrilov joined #sbcl 2017-12-01T02:13:24Z liead joined #sbcl 2017-12-01T02:13:32Z libre-ma1 joined #sbcl 2017-12-01T02:18:14Z nyef` joined #sbcl 2017-12-01T02:18:44Z pfdietz_ joined #sbcl 2017-12-01T02:20:11Z dougk joined #sbcl 2017-12-01T02:21:12Z libre-man quit (Ping timeout: 248 seconds) 2017-12-01T02:21:12Z angavrilov_ quit (Read error: Connection reset by peer) 2017-12-01T02:21:13Z adlai quit (Ping timeout: 248 seconds) 2017-12-01T02:22:40Z dougk quit (*.net *.split) 2017-12-01T02:22:41Z pfdietz quit (*.net *.split) 2017-12-01T02:22:41Z nyef quit (*.net *.split) 2017-12-01T02:22:42Z christoph_debian quit (*.net *.split) 2017-12-01T02:25:23Z christoph_debian joined #sbcl 2017-12-01T02:26:52Z dwts quit (Ping timeout: 260 seconds) 2017-12-01T02:38:08Z dougk joined #sbcl 2017-12-01T03:25:39Z dwts joined #sbcl 2017-12-01T03:38:16Z bkst quit (Ping timeout: 268 seconds) 2017-12-01T03:49:07Z jack_rabbit quit (Ping timeout: 260 seconds) 2017-12-01T03:52:45Z dougk__ joined #sbcl 2017-12-01T03:55:24Z dougk quit (Ping timeout: 246 seconds) 2017-12-01T03:57:17Z dougk__ quit (Ping timeout: 260 seconds) 2017-12-01T04:07:36Z milanj_ quit (Quit: This computer has gone to sleep) 2017-12-01T04:10:28Z jack_rabbit joined #sbcl 2017-12-01T04:17:51Z bkst joined #sbcl 2017-12-01T04:20:37Z jack_rabbit quit (Ping timeout: 260 seconds) 2017-12-01T04:20:43Z jack_rabbit_ joined #sbcl 2017-12-01T04:24:21Z nyef`: Well! I think I've managed to find at least one, possibly two deadlock conditions with safepoints. Don't yet have a fix, for both of them yet, but progress! (-: 2017-12-01T04:50:06Z Bike quit (Quit: Lost terminal) 2017-12-01T04:56:25Z shka joined #sbcl 2017-12-01T05:07:57Z fortitude_ joined #sbcl 2017-12-01T05:08:16Z fortitude quit (Quit: Leaving) 2017-12-01T05:08:22Z fortitude_ is now known as fortitude 2017-12-01T05:09:05Z fortitude: nyef`: don't know if it's related to what you found, but I've got two safepoint-related deadlocks myself 2017-12-01T05:09:20Z fortitude: one in which a thread fails to decrement the phase_wait counter (usually in GC_INVOKE) 2017-12-01T05:09:53Z fortitude: I altered that code to increment/decrement phase_wait counts by the thread ID rather than 1, and that causes it to fail much earlier with a negative count in GC_FLIGHT 2017-12-01T05:09:59Z fortitude: not sure why, though 2017-12-01T05:13:39Z nyef`: Hrm. I don't know that I've run into that one yet. 2017-12-01T05:16:15Z nyef`: On the other hand, maybe I just have. 2017-12-01T05:17:37Z nyef`: Yeah, one in GC_INVOKED, two in GC_QUIET, two threads stopped in gc_state_wait(GC_QUIET), four stopped in gc_state_wait(GC_NONE). 2017-12-01T05:18:22Z jack_rabbit_: Is there a way to expand the fixnum type to the (integer 0 ) type? 2017-12-01T05:18:35Z jack_rabbit_ is now known as jack_rabbit 2017-12-01T05:18:59Z nyef`: jack_rabbit: I think that you end up with the (MOD ) type in SBCL. 2017-12-01T05:19:43Z jack_rabbit: How do I do that? 2017-12-01T05:20:05Z nyef`: Hrm. Or possibly not. I just tried the thing that I thought would work, and ended up with FIXNUM instead. 2017-12-01T05:21:06Z nyef`: Looks like it wants to go the other way: (sb-kernel:type-specifier (sb-kernel:specifier-type '(signed-byte 63))) => FIXNUM on my system. 2017-12-01T05:25:07Z fortitude: nyef`: perhaps it's a foolhardy question, but is there any documentation about how safepoints are supposed to work, beyond a. kovalenko's notes and the source comments? 2017-12-01T05:25:23Z nyef`: ... There are *notes* somewhere? 2017-12-01T05:25:56Z nyef`: I think I see the hole with GC_INVOKED... 2017-12-01T05:26:54Z nyef`: I already know that the source comments are wrong. Occasionally hilariously so. 2017-12-01T05:27:40Z fortitude: nyef`: that might explain a few things 2017-12-01T05:28:35Z fortitude: nyef`: there are some safepoint notes at http://dmitryvk.github.io/sbcl-win32-threads/implementation-notes.html#thread-suspension-and-interruption-safepoint-code and https://www.siftsoft.com/inprogress/sbcl-notes.html, but I think both are old 2017-12-01T05:29:15Z nyef`: Thank you. I'll take a look at them in the morning. 2017-12-01T05:29:57Z fortitude: nyef`: certainly. I'm trying to learn about some of this stuff, so any commentary on the issues you find would be awesome 2017-12-01T05:31:43Z nyef`: One of the issues that I found is that the calls to odxprint() in gc_state_lock() that include a reference to gc_state.lock are broken: They're passing an opaque object where the format string expects a pointer, and it throws off anything after it. 2017-12-01T05:32:07Z nyef`: Another is two race conditions around thread creation. 2017-12-01T05:50:53Z jack_rabbit: Is there a type like '(list fixnum) or somesuch? 2017-12-01T05:52:37Z jack_rabbit: or '(sequence *) or something? 2017-12-01T05:55:10Z nyef`: That'd be nice, wouldn't it? 2017-12-01T05:55:11Z fortitude: nyef`: I suspect foreign calls may also be involved; I had my deadlock situation improve dramatically when I removed a tcp sockopt call from my test application 2017-12-01T05:55:40Z nyef`: fortitude: No bet. 2017-12-01T05:57:34Z nyef`: I know what the proximate cause of the damage is, but not yet the overall sequence of events, and I do not yet have a candidate fix. 2017-12-01T05:57:46Z Jesin quit (Quit: Leaving) 2017-12-01T06:00:02Z fortitude: nyef`: what are you using to come up with test cases? 2017-12-01T06:00:30Z nyef`: lp#1424031 2017-12-01T06:02:19Z fortitude: I should see if my deadlocks also occur on linux 2017-12-01T06:02:43Z nyef`: And I think I know what I'm going to end up doing about this GC_INVOKED hole. 2017-12-01T06:02:54Z nyef`: But it's not going to be tonight. 2017-12-01T06:15:15Z nyef`: There's a possible hole similar to GC_INVOKED, but leaving phase_wait[GC_SETTLED] elevated. 2017-12-01T06:23:09Z jack_rabbit: Another question: with compiler warnings like "forced to do generic ..... (cost 10)" what exactly does the cost number indicate? 2017-12-01T06:24:59Z nyef`: It's been a while since I looked at that. I think it's the "cost" of the VOP that was selected? 2017-12-01T06:25:12Z nyef`: And the cost model is fairly arbitrary overall, IIRC. 2017-12-01T06:25:38Z jack_rabbit: I kind of figured it was. 2017-12-01T06:25:50Z jack_rabbit: But I wasn't sure. 2017-12-01T06:34:45Z milanj_ joined #sbcl 2017-12-01T06:40:01Z oleo quit (Quit: Leaving) 2017-12-01T06:50:16Z Aaryn joined #sbcl 2017-12-01T06:57:44Z fortitude_ joined #sbcl 2017-12-01T06:58:18Z fortitude_ quit (Client Quit) 2017-12-01T06:58:40Z fortitude_ joined #sbcl 2017-12-01T07:08:54Z fortitude_ quit (Quit: Leaving) 2017-12-01T07:09:00Z fortitude is now known as fortitude_ 2017-12-01T07:09:53Z fortitude joined #sbcl 2017-12-01T07:10:47Z scymtym quit (Ping timeout: 255 seconds) 2017-12-01T07:23:29Z fortitude_ quit (Quit: Leaving) 2017-12-01T07:32:21Z mjl left #sbcl 2017-12-01T07:39:55Z greaser|q quit (Changing host) 2017-12-01T07:39:55Z greaser|q joined #sbcl 2017-12-01T07:39:58Z greaser|q is now known as GreaseMonkey 2017-12-01T07:51:07Z BitPuffin|osx joined #sbcl 2017-12-01T07:52:01Z shka quit (Ping timeout: 248 seconds) 2017-12-01T07:53:32Z bkst quit (Ping timeout: 240 seconds) 2017-12-01T08:02:09Z bkst joined #sbcl 2017-12-01T08:34:24Z scymtym joined #sbcl 2017-12-01T08:35:35Z pfdietz_ quit (Ping timeout: 240 seconds) 2017-12-01T08:40:04Z pfdietz joined #sbcl 2017-12-01T08:49:08Z pfdietz quit (Ping timeout: 276 seconds) 2017-12-01T08:50:01Z pfdietz joined #sbcl 2017-12-01T09:00:15Z pfdietz quit (Ping timeout: 248 seconds) 2017-12-01T09:01:45Z pfdietz joined #sbcl 2017-12-01T09:04:01Z BitPuffin|osx quit (Ping timeout: 248 seconds) 2017-12-01T09:12:45Z milanj_ quit (Quit: Leaving) 2017-12-01T09:19:51Z DeadTrickster joined #sbcl 2017-12-01T09:31:36Z stassats joined #sbcl 2017-12-01T09:31:46Z stassats: i think that (cost 10) should be removed 2017-12-01T09:31:54Z stassats: i mean, what the hell is a 10? dollars? bitcoins? 2017-12-01T09:33:11Z stassats: for boxing it at least could say how much bytes it conses 2017-12-01T09:33:29Z Shinmera: Ten steel banks 2017-12-01T09:35:13Z Shinmera: I always assumed the cost was some arbitrary metric assigned by the compiler writers that determined "badness" of a (lack) of optimisation. It would be more useful to know what the range of badness is to be able to really understand how bad it is, though. 2017-12-01T09:36:30Z Shinmera: At least it isn't like TeX with its wonderful "underfull hbox badness 10000" 2017-12-01T09:37:42Z scymtym: tex is next level weird in general 2017-12-01T09:50:23Z White_Flame quit (Ping timeout: 248 seconds) 2017-12-01T09:50:41Z White_Flame joined #sbcl 2017-12-01T10:00:52Z stassats: but we can't even do a good job of representation selection based on those costs 2017-12-01T10:04:50Z stassats` joined #sbcl 2017-12-01T10:09:18Z stassats quit (Ping timeout: 258 seconds) 2017-12-01T10:11:44Z White_Flame quit (Quit: No Ping reply in 180 seconds.) 2017-12-01T10:14:06Z White_Flame joined #sbcl 2017-12-01T10:17:19Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-01T10:17:50Z DeadTrickster joined #sbcl 2017-12-01T10:33:16Z stassats joined #sbcl 2017-12-01T10:34:05Z stassats left #sbcl 2017-12-01T10:40:48Z scymtym: stassats: speaking of indicating badness: would you accept a SLIME patch to highlight profiling annotations in disassembly like this https://techfak.de/~jmoringe/disassembly-annotations.png ? 2017-12-01T10:41:11Z stassats`: sure 2017-12-01T10:41:38Z scymtym: ok, i will clean it up and submit it, then 2017-12-01T10:45:51Z scymtym: i'm also working on making the SBCL side of generating the annotations not ridiculously slow 2017-12-01T10:59:48Z sjl joined #sbcl 2017-12-01T11:02:15Z m00natic joined #sbcl 2017-12-01T11:03:59Z sjl quit (Ping timeout: 248 seconds) 2017-12-01T11:21:36Z scymtym: windows build is broken: https://ci.cor-lab.org/job/sbcl-master-windows/label=Windows_7_64bit/1453/console 2017-12-01T11:25:34Z scymtym: specifically x86_64 win32 2017-12-01T11:28:27Z bkst quit (Ping timeout: 240 seconds) 2017-12-01T12:07:27Z jibanes quit (Ping timeout: 240 seconds) 2017-12-01T12:17:39Z dougk joined #sbcl 2017-12-01T12:20:18Z bkst joined #sbcl 2017-12-01T12:21:52Z jack_rabbit quit (Ping timeout: 240 seconds) 2017-12-01T12:21:53Z dougk quit (Ping timeout: 248 seconds) 2017-12-01T12:26:26Z libre-ma1 is now known as libreman 2017-12-01T12:35:13Z jack_rabbit joined #sbcl 2017-12-01T13:32:19Z dougk joined #sbcl 2017-12-01T13:36:38Z karswell_ joined #sbcl 2017-12-01T13:38:37Z karswell quit (Ping timeout: 250 seconds) 2017-12-01T13:41:36Z bsmr joined #sbcl 2017-12-01T13:41:56Z oleo2 joined #sbcl 2017-12-01T13:45:20Z bsmr: I compile SBCL for quite some time myself. Today I "updated" to 1.4.2 and a "sbcl --version" showed "SBCL 1.4.1.18.build-1.4.2.204-efc9d6f66". I compared it to "1.4.1" where the output is "SBCL 1.4.1". Is this behaviour known? 2017-12-01T13:46:42Z bsmr: It looks like that my "git branch" name is mangled somehow in the version string. 2017-12-01T14:02:53Z jackdaniel: imo it is good, because if you have something from git, then it is not official release tarball (i.e it may additional commits), so "1.4.2" version may be different 2017-12-01T14:03:04Z jackdaniel: and pasting version in bug report would be misleading 2017-12-01T14:03:14Z scymtym: bsmr: if you are on a local branch that has additional commits, this is expected. look at generate-version.sh 2017-12-01T14:03:16Z jackdaniel: that way you have commit there 2017-12-01T14:03:35Z karswell_ quit (Ping timeout: 240 seconds) 2017-12-01T14:03:42Z bsmr: oh, thanks for the pointer to "generate-version.sh" 2017-12-01T14:31:27Z Bike joined #sbcl 2017-12-01T14:33:37Z dougk quit (Ping timeout: 248 seconds) 2017-12-01T14:34:05Z bkst quit (Ping timeout: 250 seconds) 2017-12-01T14:49:47Z nyef`: Hrm. Okay, this time I get two threads waiting towards GC_QUIET, but one of them got promoted. Lovely. 2017-12-01T14:51:46Z nyef`: One of them has to be in thread_in_lisp_raised(), and the other in gc_stop_the_world()... 2017-12-01T14:51:50Z nyef`: ... and, yes, that is the case. 2017-12-01T14:52:00Z sjl joined #sbcl 2017-12-01T14:53:05Z nyef`: Hrm. Did it get promoted? 2017-12-01T14:56:10Z nyef`: ... if it got promoted, then it screwed up phase_wait[GC_QUIET], and that's not the failure mode. 2017-12-01T14:58:05Z _rumbler31 joined #sbcl 2017-12-01T15:01:36Z Jesin joined #sbcl 2017-12-01T15:01:38Z nyef`: fortitude: Documentation review complete: In the one, the description of safepoints is superficial and bears little relation to current reality. In the other, there is only one mention of safepoints with no detail at all. 2017-12-01T15:02:43Z cromachina quit (Read error: Connection reset by peer) 2017-12-01T15:24:43Z luis quit (Read error: Connection reset by peer) 2017-12-01T15:40:06Z eudoxia joined #sbcl 2017-12-01T15:40:11Z oleo2 quit (Ping timeout: 255 seconds) 2017-12-01T15:42:13Z oleo joined #sbcl 2017-12-01T16:06:25Z dougk joined #sbcl 2017-12-01T16:08:17Z bsmr: exit 2017-12-01T16:08:22Z bsmr quit (Quit: Leaving) 2017-12-01T16:09:50Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-01T16:10:34Z DeadTrickster joined #sbcl 2017-12-01T16:10:43Z dougk quit (Ping timeout: 250 seconds) 2017-12-01T16:11:09Z dougk joined #sbcl 2017-12-01T16:30:50Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-01T16:31:14Z fortitude: nyef`: ah sorry, should have checked that other one more carefully 2017-12-01T16:31:34Z DeadTrickster joined #sbcl 2017-12-01T16:32:07Z fortitude: nyef`: in what way(s) does is that superficial description no longer accurate (I noticed there are a lot more gc phases than in that doc)? 2017-12-01T16:34:35Z nyef`: fortitude: For starters, there is no *DISABLE-SAFEPOINTS*, and safepoints don't set pseudo_atomic_interrupted. 2017-12-01T16:35:43Z nyef`: I also fail to see how binding *IN-WITHOUT-GCING* or even *GC-INHIBIT* counts as "calling safepoint code". 2017-12-01T16:36:47Z stassats`: even outside of safepoints, why two variables? 2017-12-01T16:38:08Z nyef`: Race condition? 2017-12-01T16:38:51Z fortitude: allegedly *GC-INHIBIT* describes whether the code's in the protected part of WITHOUT-GCING 2017-12-01T16:40:10Z nyef`: interrupt.c has an in_leaving_without_gcing_race_p() function. 2017-12-01T16:42:33Z nyef`: Another thing with this document is that it talks about waiting for thread states, and "gc-safe". There's a *GC-SAFE* variable, but it isn't actually used. 2017-12-01T16:42:47Z nyef`: (And, now that I know that it's there, I'm going to kill it.) 2017-12-01T16:46:29Z stassats`: and why three conditions after leaving without-gcing, (or *interrupt-pending* *gc-pending* #!+sb-thread *stop-for-gc-pending*) 2017-12-01T16:48:32Z stassats`: the whole gc needs cleaning up, not just safepoints 2017-12-01T16:49:18Z nyef`: Let me get safepoints sorted out, and then you can have your turn. d-: 2017-12-01T16:52:58Z stassats`: i'll make rehash cons outside of without-gcing 2017-12-01T16:56:03Z nyef`: Ideally, I'd like to do away with WITHOUT-GCING entirely, but I don't know that that's feasible. 2017-12-01T16:56:34Z stassats`: for hash-tables? pinning all entries? 2017-12-01T16:57:29Z nyef`: Systemwide. 2017-12-01T16:58:09Z stassats`: relying only on disabling interrupts? 2017-12-01T16:58:44Z nyef`: An initial analysis shows that a number of uses of WITHOUT-GCING could be replaced by somewhat-more-clever GC-safe constructs. 2017-12-01T17:18:03Z stassats`: now i want with-gcing 2017-12-01T17:21:37Z stassats`: to truly improve gethash and without-gcing more needs to be rearranged, but i'll do a simple one first 2017-12-01T17:38:04Z jibanes joined #sbcl 2017-12-01T17:38:52Z stassats`: the original test with *print-circle* doesn't hang anymore, so that's something 2017-12-01T17:39:09Z stassats`: (on sb-safepoint) 2017-12-01T17:41:12Z stassats`: but you still have the make-array one 2017-12-01T17:44:58Z stassats`: i think gethash+without-gcing is the only place with heavy consing 2017-12-01T17:45:14Z stassats`: it still leaves weak hash-tables, which are locked from the beginning, but those are rare 2017-12-01T17:52:09Z m00natic quit (Remote host closed the connection) 2017-12-01T18:06:37Z scymtym: the backtrace of lp#1735795 made me realize that GRAB-MUTEX (if contested) calls GET-INTERNAL-REAL-TIME even if their is neither a timeout nor a deadline 2017-12-01T18:06:53Z scymtym: seems easy to fix in DECODE-TIMEOUT 2017-12-01T18:14:54Z dougk_: we can no longer compile https://github.com/tpapp/array-operations/. trying to bisect 2017-12-01T18:15:15Z stassats`: dougk_: what's the error? 2017-12-01T18:15:28Z dougk_: Derived type of (SB-KERNEL:DATA-VECTOR-REF-WITH-OFFSET ARRAY (SB-KERNEL:CHECK-BOUND ARRAY (ARRAY-DIMENSION ARRAY 0) SB-INT:INDEX) 0) is (VALUES FIXNUM &OPTIONAL), conflicting with its asserted type (ARRAY * NIL) 2017-12-01T18:16:01Z stassats`: that's in my territory, you can old off bisecting 2017-12-01T18:16:05Z dougk_: it's a warning. it may be a correct warning, but our rule is that warnings are errors 2017-12-01T18:16:12Z dougk_: thanks 2017-12-01T18:33:25Z DeadTrickster_ joined #sbcl 2017-12-01T18:36:46Z White_Flame quit (Read error: Connection reset by peer) 2017-12-01T18:36:57Z DeadTrickster quit (Ping timeout: 260 seconds) 2017-12-01T18:37:43Z nyef`: Found (another?) GC_INVOKED hole. I'm definitely getting longer runtimes on the test case now. 2017-12-01T18:39:18Z stassats`: looks like just doing (the (function (t t ) * ) #'aref) confuses the compiler 2017-12-01T18:43:39Z stassats`: oh i see 2017-12-01T18:44:15Z stassats`: constraint propagation propagates that to a different aref, silly 2017-12-01T18:44:55Z stassats`: or something like that 2017-12-01T18:54:37Z shka joined #sbcl 2017-12-01T18:55:30Z stassats`: no, something more sinister is going on 2017-12-01T18:57:15Z nyef`: Why is it never anything more dexter? 2017-12-01T18:57:43Z stassats`: well, it's not right 2017-12-01T18:58:45Z nyef`: ... Fair enough. 2017-12-01T19:04:30Z stassats`: i think the actual regression happened on 2016-08-05 2017-12-01T19:04:34Z nyef`: Okay, it's locking up when entering stop the world when STOP_FOR_GC_PENDING is set... 2017-12-01T19:05:10Z nyef`: And the obvious next question is... HOW? WHY? 2017-12-01T19:05:51Z dougk quit (Ping timeout: 240 seconds) 2017-12-01T19:11:31Z dougk joined #sbcl 2017-12-01T19:13:14Z stassats`: ok, the change i made on 2016-08-05 was broken and never tested because it only worked on (ARRAY &REST (MOD 4611686018427387901)) 2017-12-01T19:13:27Z stassats`: but after (the (function (t t ) * ) #'aref) it becomes (ARRAY (MOD 4611686018427387901)), yay 2017-12-01T19:27:42Z stassats`: dougk_: so, it's an old regression uncovered by new code, testing the fix and pushing 2017-12-01T19:30:46Z nyef`: Thread 1 (4e48) enters thread_register_gc_trigger(), the phase moves from GC_NONE to GC_FLIGHT. Thread 2 (5fa8) enters SUB_GC after the global safepoint is armed but before the lock is release in GC_FLIGHT. Thread 1 hits the global page and requests a phase advance to GC_QUIET. Global notify occurs, all threads are in lisp... And all are GC_INHIBIT(?) 2017-12-01T19:31:02Z nyef`: This includes thread 2 (5fa8). 2017-12-01T19:33:22Z stassats`: ok, now i see that my original code wasn't totally insane 2017-12-01T19:33:36Z stassats`: i just didn't account for (the (function (t t) * ) #'aref) changing the type 2017-12-01T19:33:38Z nyef`: Ah, no. All are in lisp, so they promote at GC_MESSAGE, and we have to wait for them to move on from there. 2017-12-01T19:35:17Z stassats`: could've been caught by earlier by building all of quicklisp projects, but some of them fail because of missing FFI dependencies 2017-12-01T19:35:45Z stassats`: maybe i can just restrict to testing the systems that do not depend on cffi 2017-12-01T19:36:01Z nyef`: They're all in thread_in_lisp_raised(), are going to be, or will hit thread_in_safety_transition(). 2017-12-01T19:36:36Z nyef`: ... And it's not safety transition until *after* we leave GC_MESSAGE, so it's thread_in_lisp_raised(). 2017-12-01T19:38:04Z nyef`: If they're *GC-INHIBIT*, they set STOP_FOR_GC_PENDING and advance to GC_INVOKED. Otherwise, they clear STOP_FOR_GC_PENDING and advance to GC_NONE. 2017-12-01T19:39:53Z nyef`: We enter GC_INVOKED, mapping the global page. 2017-12-01T19:40:31Z stassats`: i'm so glad i'm not the one suffer from sb-safepoint 2017-12-01T19:40:37Z stassats`: suffering 2017-12-01T19:41:24Z nyef`: And thread 3 (6400) and 4 (5b50) enter thread_in_lisp_raised by way of pending-interrupt traps. 2017-12-01T19:41:53Z nyef`: They must be leaving WITHOUT-GCING. 2017-12-01T19:44:59Z nyef`: They both request advance to GC_NONE, which is reasonable. 2017-12-01T19:45:52Z nyef`: Meanwhile, thread 5 (52a0) hits the per-thread safepoint trap... And then tries to stop the world. 2017-12-01T19:46:37Z nyef`: It is already STOP_FOR_GC_PENDING because it was poked when we hit GC_MESSAGE. 2017-12-01T19:47:12Z nyef`: So, safety transition... 2017-12-01T19:49:47Z nyef`: ... unlocks the page. And here we have some missing (or at least hard to recover) data. Again. 2017-12-01T19:50:56Z nyef`: In effect, something happens, and it continues on its way. 2017-12-01T19:51:46Z nyef`: Hrm. Okay, it's an advance request, which means that it's an outbound call. 2017-12-01T19:52:07Z nyef`: And we're in a GC_INHIBIT. 2017-12-01T19:52:47Z nyef`: So, set STOP_FOR_GC_PENDING (which was already set), advance to the current phase (a no-op), and done. 2017-12-01T20:00:52Z White_Flame joined #sbcl 2017-12-01T20:03:05Z josemanuel joined #sbcl 2017-12-01T20:06:33Z dougk_: scymtym: any chance you want to look at lp#1727789 ? 2017-12-01T20:07:37Z nyef`: Pending interrupt trap occurs when leaving WITHOUT-INTERRUPTS, after *GC-INHIBIT* is cleared. This puts thread_gc_phase() to GC_NONE, so gc_advance(), which decrements phase_wait[GC_INVOKED]. 2017-12-01T20:08:00Z _8hzp joined #sbcl 2017-12-01T20:08:30Z hzp quit (Remote host closed the connection) 2017-12-01T20:09:08Z easye quit (Ping timeout: 240 seconds) 2017-12-01T20:12:37Z stassats`: dougk_: nobody should really use such a large time-out 2017-12-01T20:13:24Z stassats`: ql-dist:dependency-tree is lying, not showing all the dependencies 2017-12-01T20:13:59Z scymtym: we could proclaim appropriate ftypes for high-level threading functions 2017-12-01T20:15:50Z scymtym: since waiting indefinitely is done by not supplying a timeout, we shouldn't have to accept arbitrarily large timeout values 2017-12-01T20:16:23Z stassats`: yeah, my point 2017-12-01T20:16:56Z stassats`: i did restrict internal time to ub62, but passing that, it'll fall on the C functions that do the waiting anyway 2017-12-01T20:17:13Z stassats`: just on an even larger timeout 2017-12-01T20:19:07Z scymtym: alternatively, we would could treat large timeouts like :timeout nil. who is going to report a bug because GRAB-MUTEX didn't return after waiting for millions of years? 2017-12-01T20:22:52Z dougk quit (Ping timeout: 240 seconds) 2017-12-01T20:29:57Z White_Flame quit (Ping timeout: 240 seconds) 2017-12-01T20:31:40Z White_Flame joined #sbcl 2017-12-01T20:32:02Z eudoxia quit (Quit: Leaving) 2017-12-01T20:50:13Z scymtym quit (Ping timeout: 250 seconds) 2017-12-01T20:52:30Z leah2 quit (Ping timeout: 246 seconds) 2017-12-01T20:52:47Z Jesin quit (Quit: Leaving) 2017-12-01T21:05:50Z leah2 joined #sbcl 2017-12-01T21:11:49Z whoman quit (Remote host closed the connection) 2017-12-01T21:12:37Z whoman joined #sbcl 2017-12-01T21:17:01Z stassats`: and while fixing that regression i have found a performance regression, (map 'list #'svref vectors x) SVREF didn't get inlined 2017-12-01T21:17:21Z stassats`: and the fix is trivial 2017-12-01T21:18:49Z White_Flame quit (Read error: Connection reset by peer) 2017-12-01T21:19:53Z White_Flame joined #sbcl 2017-12-01T21:22:21Z dougk joined #sbcl 2017-12-01T21:37:40Z scymtym joined #sbcl 2017-12-01T21:47:25Z shka quit (Ping timeout: 250 seconds) 2017-12-01T22:12:33Z DeadTrickster_ quit (Read error: Connection reset by peer) 2017-12-01T22:13:04Z DeadTrickster_ joined #sbcl 2017-12-01T22:19:35Z Bike quit (Ping timeout: 260 seconds) 2017-12-01T22:23:52Z jack_rabbit quit (Ping timeout: 240 seconds) 2017-12-01T22:36:34Z jack_rabbit joined #sbcl 2017-12-01T22:49:32Z sjl quit (Ping timeout: 260 seconds) 2017-12-01T22:52:08Z dougk quit (Ping timeout: 258 seconds) 2017-12-01T22:52:40Z Bike joined #sbcl 2017-12-01T22:53:03Z DeadTrickster_ quit (Read error: Connection reset by peer) 2017-12-01T22:53:26Z DeadTrickster_ joined #sbcl 2017-12-01T23:18:41Z dougk joined #sbcl 2017-12-01T23:47:11Z stassats` quit (Ping timeout: 240 seconds) 2017-12-01T23:49:38Z dougk quit (Ping timeout: 258 seconds) 2017-12-01T23:49:53Z White_Flame quit (Read error: Connection reset by peer) 2017-12-01T23:50:28Z _rumbler31 quit (Ping timeout: 252 seconds) 2017-12-01T23:50:41Z White_Flame joined #sbcl 2017-12-01T23:53:39Z pfdietz quit 2017-12-01T23:53:59Z pfdietz joined #sbcl 2017-12-02T00:08:11Z dougk joined #sbcl 2017-12-02T00:11:44Z stylewarning: Growable heaps is feeling more and more important for us. 2017-12-02T00:29:55Z cromachina joined #sbcl 2017-12-02T01:10:08Z dougk quit (Ping timeout: 258 seconds) 2017-12-02T01:24:08Z dougk joined #sbcl 2017-12-02T01:28:42Z nyef`: stylewarning: What constitutes "growable" here? 2017-12-02T01:43:01Z ikki joined #sbcl 2017-12-02T01:45:19Z dougk quit (Ping timeout: 250 seconds) 2017-12-02T01:54:51Z dougk joined #sbcl 2017-12-02T02:11:12Z dougk quit (Ping timeout: 240 seconds) 2017-12-02T02:33:05Z ikki quit (Ping timeout: 248 seconds) 2017-12-02T02:38:37Z dougk joined #sbcl 2017-12-02T02:47:01Z ikki joined #sbcl 2017-12-02T03:40:25Z ikki_ joined #sbcl 2017-12-02T03:44:02Z ikki quit (Ping timeout: 276 seconds) 2017-12-02T03:54:05Z DeadTrickster_ quit (Read error: Connection reset by peer) 2017-12-02T03:54:44Z DeadTrickster_ joined #sbcl 2017-12-02T04:08:11Z Bike quit (Quit: Lost terminal) 2017-12-02T04:28:41Z dougk quit (Ping timeout: 250 seconds) 2017-12-02T04:35:54Z ikki_ quit (Ping timeout: 260 seconds) 2017-12-02T05:14:33Z DeadTrickster_ quit (Read error: Connection reset by peer) 2017-12-02T05:15:09Z DeadTrickster joined #sbcl 2017-12-02T06:15:39Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-02T06:16:16Z DeadTrickster joined #sbcl 2017-12-02T07:38:57Z myrkraverk quit (Ping timeout: 240 seconds) 2017-12-02T07:41:08Z jack_rabbit quit (Quit: Leaving) 2017-12-02T07:44:56Z jack_rabbit joined #sbcl 2017-12-02T07:51:58Z smurfrobot joined #sbcl 2017-12-02T07:56:35Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-02T07:57:00Z DeadTrickster joined #sbcl 2017-12-02T08:03:31Z easye joined #sbcl 2017-12-02T08:25:51Z easye quit (Remote host closed the connection) 2017-12-02T08:26:23Z easye joined #sbcl 2017-12-02T08:34:02Z myrkraverk joined #sbcl 2017-12-02T08:46:00Z sjl joined #sbcl 2017-12-02T08:50:42Z sjl quit (Ping timeout: 260 seconds) 2017-12-02T09:27:30Z smurfrobot quit (Remote host closed the connection) 2017-12-02T09:57:33Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-02T09:57:56Z DeadTrickster joined #sbcl 2017-12-02T10:02:10Z stassats joined #sbcl 2017-12-02T10:06:07Z shka joined #sbcl 2017-12-02T10:23:42Z BitPuffin|osx joined #sbcl 2017-12-02T10:28:01Z smurfrobot joined #sbcl 2017-12-02T10:34:57Z liead is now known as adlai 2017-12-02T10:37:20Z smurfrobot quit (Ping timeout: 255 seconds) 2017-12-02T10:41:24Z stassats quit (Remote host closed the connection) 2017-12-02T10:41:51Z stassats joined #sbcl 2017-12-02T10:50:07Z Shinmera: If I have a CFFI callback that's going to be called from an OS thread, how can I stop SBCL from interpreting any signals or interrupts in the callback's thread? 2017-12-02T10:50:33Z stassats: interpreting? 2017-12-02T10:51:08Z josemanuel quit (Quit: leaving) 2017-12-02T10:51:20Z Shinmera: Well, catching or acting on any signals. 2017-12-02T10:53:30Z Shinmera: Context is I'm writing a library that interacts with OS X' CoreAudio, which needs a callback function to provide samples. This function is called from a thread not spawned by SBCL. 2017-12-02T10:53:51Z BitPuffin|osx quit (Ping timeout: 248 seconds) 2017-12-02T10:54:14Z Shinmera: It seems to spuriously crash really badly, which leads me to believe that something that the OS doesn't like might be happening in that thread. 2017-12-02T10:55:06Z stassats: there's no way, there's a window between calling the callback function and enabling interrupts 2017-12-02T10:55:19Z stassats: even if you disable them in your callback function 2017-12-02T10:56:37Z Shinmera: I see. 2017-12-02T10:56:53Z stassats: but i don't think your problem is because of any signals 2017-12-02T10:58:49Z stassats: Shinmera: can you share the code and steps to reproduce? 2017-12-02T10:59:06Z Shinmera: Let me see if I can reproduce it myself again real quick. 2017-12-02T10:59:40Z Shinmera: It's been a bit since I worked on it and I just remembered that I should've asked. 2017-12-02T10:59:55Z stassats: foreign thread callbacks aren't exercised enough 2017-12-02T11:00:01Z stassats: and i hope you don't use sb-safepoint 2017-12-02T11:00:09Z Shinmera: I don't think I have it enabled. 2017-12-02T11:00:36Z stassats: some time ago only safepoints had support for foreign thread callbacks 2017-12-02T11:01:32Z stassats: (three years ago) 2017-12-02T11:05:21Z Shinmera: Well, I can't get it to happen now. 2017-12-02T11:05:52Z stassats: as is tradition 2017-12-02T11:06:25Z Shinmera: Or maybe I can? Just had a crash. Hold on. 2017-12-02T11:07:13Z Shinmera: Gave me a CORRUPTION WARNING in SBCL pid 754(tid 0x700008bd7000): Memory fault at 0x700008c56ff8 (pc=0x1136f0, sp=0x700008bd5430) 2017-12-02T11:10:27Z stassats: you can send it my way 2017-12-02T11:10:57Z Shinmera: Yeah, just want to get a smaller test case going first. 2017-12-02T11:15:28Z stassats` joined #sbcl 2017-12-02T11:16:08Z Shinmera: Main code is here: https://github.com/Shirakumo/harmony/blob/master/drains/coreaudio.lisp 2017-12-02T11:16:12Z Shinmera: Test snippet is here: https://plaster.tymoon.eu/view/680#680 2017-12-02T11:17:31Z Shinmera: I could write up a more focused test case too if that's preferable. The above snippet still pulls in a lot of extra baggage from other parts of the system. 2017-12-02T11:20:06Z Shinmera: Oh, wait, I forgot I did have a smaller test case that just requires CFFI: https://github.com/Shirakumo/harmony/blob/master/drains/coreaudio-cffi.lisp#L253 2017-12-02T11:20:56Z stassats: i'm running the first test case, how long should it run? 2017-12-02T11:21:37Z Shinmera: Well it potentially runs infinite. 2017-12-02T11:22:13Z Shinmera: As it stands I wasn't able to get the crash to happen, but if I take out the WITH-NO-INTERRUPTS in the BUFFER-RENDER callback it sometimes happens. 2017-12-02T11:23:00Z stassats: your (sb-sys:*interrupts-enabled* NIL) (sb-kernel:*gc-inhibit* T) isn't very good, should have used sb-sys:without-gcing 2017-12-02T11:23:17Z Shinmera: Does that disable interrupts as well without processing them at exit? 2017-12-02T11:24:13Z stassats: it does process, but your thingy doesn't protect against that anyway 2017-12-02T11:24:27Z Shinmera: Alright. 2017-12-02T11:27:01Z Shinmera: There was another (unrelated) issue where it would get a division-by-zero on start, but only when USB speakers were plugged in. Apparently OS X has a bug in CoreAudio that causes a division by zero in some cases, which SBCL then intercepts. 2017-12-02T11:27:24Z stassats: just mask the float traps 2017-12-02T11:27:31Z Shinmera: Yeah, that's what's happening. 2017-12-02T11:31:45Z stassats: what does (loop while (processed drain) do (sleep 0.005)) do? 2017-12-02T11:32:14Z Shinmera: Wait for the other thread to fill the buffers with samples. 2017-12-02T11:32:27Z stassats: that's what condition variables are for? 2017-12-02T11:32:44Z stassats: bt has them 2017-12-02T11:32:59Z Shinmera: Yeah I know, it was a quick hack to get things to a place where I could actually just test them. 2017-12-02T11:34:12Z Shinmera: Ideally the render callback should never have to wait or sleep on anything. 2017-12-02T11:34:52Z Shinmera: But implementing clean logic to get the latency down to a minimum would require some bigger changes. 2017-12-02T11:35:44Z stassats: callbacks are pretty slow in sbcl, if you are after latency 2017-12-02T11:35:52Z stassats: especially from foreign threads 2017-12-02T11:37:53Z Shinmera: I figured as much. For now it seems fast enough to work out for what I need it for, and I wanted to have a hand at native implementations for the backends without having to create another C lib dependency. 2017-12-02T11:39:03Z stassats: what does it process? mic input? maybe i need to make some noise? 2017-12-02T11:39:26Z Shinmera: It outputs sound. The snippet I pasted just uses empty input buffers though, so you won't hear anything. 2017-12-02T11:39:51Z Shinmera: The test in the CFFI file should produce a sine wave. 2017-12-02T11:40:21Z Shinmera: If you want to test it with actual music, you'll have to (ql:quickload :harmony-simple) (harmony-simple:initialize) (harmony:play #p"some.mp3" :music) 2017-12-02T11:42:25Z ikki_ joined #sbcl 2017-12-02T11:45:17Z stassats: did you get a backtrace from that error? 2017-12-02T11:45:32Z Shinmera: No, just the warning in inferior lisp and the sound stopping. 2017-12-02T11:45:44Z Shinmera: So I assume the OS thread died. 2017-12-02T11:46:00Z stassats: interesting 2017-12-02T11:46:39Z Shinmera: There's apparently another issue where, if the output is changed (headphones to hdmi) SBCL can crash fatally. 2017-12-02T11:46:53Z stassats: let me try that 2017-12-02T11:46:56Z Shinmera: I don't have any info on what happens there though and can't replicate it myself, because I only run VMs. 2017-12-02T11:47:56Z stassats: plugging in headphones does crash indee 2017-12-02T11:47:57Z stassats: d 2017-12-02T11:48:12Z stassats: but not with a memory fault 2017-12-02T11:48:44Z Shinmera: Well I guess at least that one's consistent, then 2017-12-02T11:50:49Z stassats: the foreign thread probably has some signals blocked 2017-12-02T11:51:20Z stassats quit (Remote host closed the connection) 2017-12-02T11:51:49Z stassats`: stupid emacs decided to crash 2017-12-02T12:10:31Z stassats`: non-threaded callbacks with SIG_STOP_FOR_GC masked work, until the first gc 2017-12-02T12:10:43Z stassats`: but from a foreign thread, nothing bad seems to happen 2017-12-02T12:23:49Z ikki_ is now known as ikki 2017-12-02T12:26:01Z stassats`: and i hate when slime loses history 2017-12-02T12:33:35Z smurfrobot joined #sbcl 2017-12-02T12:34:10Z Bike joined #sbcl 2017-12-02T12:40:22Z stassats`: i can't seem to block the GC signal in my own test, yet it it's blocked by coreaudio 2017-12-02T12:43:36Z stassats`: i wasn't doing it correctly 2017-12-02T12:58:39Z BitPuffin|osx joined #sbcl 2017-12-02T12:59:13Z stassats`: Shinmera: i fixed the headphone issue 2017-12-02T13:01:04Z Shinmera: Oh? 2017-12-02T13:01:32Z stassats`: yes, i'm not lying 2017-12-02T13:01:50Z Shinmera: Anything that I can do in my code, or was it an SBCL internal fix? 2017-12-02T13:01:57Z stassats`: the latter 2017-12-02T13:02:05Z Shinmera: I see, thank you very much. 2017-12-02T13:02:49Z smurfrobot quit (Remote host closed the connection) 2017-12-02T13:04:32Z stassats`: to make foreign callbacks faster and cons less, it's possible to permanently attach a lisp thread structure to it 2017-12-02T13:04:45Z stassats`: but i'm not sure how to communicate that easily 2017-12-02T13:07:04Z stassats`: but blocking/unblocking signals is still kinda expensive 2017-12-02T13:07:27Z stassats`: so i guess it's not really a good job for lisp threads to do realtime audio 2017-12-02T13:09:22Z stassats`: the fastest callbacks would actually be possible on threadless sbcl, can call into a specialized function directly, without stashing arguments on the stack and finding the lisp current thread 2017-12-02T13:09:56Z stassats`: (but there's no such specialized functions as of now, and it'll be limited to callbacks from the same thread) 2017-12-02T13:11:44Z stassats`: Shinmera: reading the ticket, i didn't touch float traps, just the "gc signals unblocked" error 2017-12-02T13:12:01Z Shinmera: Yeah the float thing was already fixed with the masking during start 2017-12-02T13:12:06Z stassats`: ok 2017-12-02T13:28:20Z scymtym quit (Ping timeout: 268 seconds) 2017-12-02T13:43:30Z scymtym joined #sbcl 2017-12-02T13:45:12Z smurfrobot joined #sbcl 2017-12-02T14:00:18Z stassats`: Shinmera: coreaudio-cffi eventually died with "Heap exhausted during allocation" 2017-12-02T14:01:19Z Shinmera: ... huh. 2017-12-02T14:01:57Z stassats`: in some arithmetic operation 2017-12-02T14:02:41Z Shinmera: Oh 2017-12-02T14:02:55Z Shinmera: Though wait, I mod the phase every time, so that shouldn't turn to bignums 2017-12-02T14:03:05Z stassats`: double floats? 2017-12-02T14:03:16Z stassats`: it's actually * 2017-12-02T14:04:27Z Shinmera: Ah, yeah, that might be it then, since GC is inhibited. 2017-12-02T14:04:36Z stassats`: and it consumed a 4GB heap, does it hold on to all the garbage? 2017-12-02T14:04:45Z stassats`: i commented out (sb-kernel:*gc-inhibit* T) 2017-12-02T14:04:54Z Shinmera: Then I don't know. 2017-12-02T14:07:05Z stassats`: restricting to 200MB brings it down faster 2017-12-02T14:08:15Z dougk joined #sbcl 2017-12-02T14:08:50Z smurfrobot quit (Remote host closed the connection) 2017-12-02T14:10:50Z stassats`: maybe the foreign threads aren't destroyed properly, let me test that 2017-12-02T14:12:42Z dougk quit (Ping timeout: 260 seconds) 2017-12-02T14:13:00Z stassats`: seems like it 2017-12-02T14:16:46Z stassats`: calling a foreign callback in a loop, and no garbage collection is happening 2017-12-02T14:17:58Z stassats`: an i got Memory fault at 0x7000089c8ff8 (pc=0xdaaa7a0, sp=0x700008947940) 2017-12-02T14:18:05Z stassats`: after adding (make-list 10000) to my callback 2017-12-02T14:18:31Z stassats`: probably that's what you were seeing 2017-12-02T14:18:37Z Shinmera: Looks similar at least. 2017-12-02T14:20:14Z stassats`: pretty quickly 2017-12-02T14:20:15Z stassats`: strange 2017-12-02T14:21:10Z dougk joined #sbcl 2017-12-02T14:21:11Z karswell joined #sbcl 2017-12-02T14:24:51Z stassats`: on linux it just exhausts heap, so this is something darwin specific 2017-12-02T14:25:31Z stassats`: it crashes during garbage collection 2017-12-02T14:28:47Z ikki quit (Ping timeout: 268 seconds) 2017-12-02T14:31:10Z smurfrobot joined #sbcl 2017-12-02T14:31:39Z stassats`: it seems that the fault is somewhere around the stack 2017-12-02T14:41:09Z stassats`: looks like a stack guard? 2017-12-02T14:46:08Z stassats`: is pthread_get_stackaddr_np lying? 2017-12-02T14:46:42Z stassats`: or am i using it incorrectly? 2017-12-02T14:53:44Z stassats`: what vmmap is showing and what pthread_get_stackaddr_np returns do not exactly line up... 2017-12-02T15:03:18Z stassats`: ugh, even RSP is below pthread_get_stackaddr_np 2017-12-02T15:07:15Z stassats`: should it be stack_addr = pthread_get_stackaddr_np(os) - stack_size; then? 2017-12-02T15:10:03Z loke left #sbcl 2017-12-02T15:10:28Z stassats`: Shinmera: fixed the memory fault error 2017-12-02T15:10:33Z Shinmera: Nice! 2017-12-02T15:10:35Z stassats`: heap exhaustion still remains 2017-12-02T15:15:47Z stassats`: dinner break and tackling that thing, which is even weirder than the stack problem 2017-12-02T15:27:12Z smurfrobot quit (Remote host closed the connection) 2017-12-02T15:31:34Z dougk quit (Ping timeout: 260 seconds) 2017-12-02T15:38:07Z dougk joined #sbcl 2017-12-02T15:43:21Z myrkraverk_ joined #sbcl 2017-12-02T15:43:34Z smurfrobot joined #sbcl 2017-12-02T15:44:15Z myrkraverk quit (Ping timeout: 250 seconds) 2017-12-02T15:44:26Z myrkraverk_ is now known as myrkraverk 2017-12-02T15:45:41Z angavrilov quit (Ping timeout: 240 seconds) 2017-12-02T15:45:57Z angavrilov joined #sbcl 2017-12-02T15:51:56Z scymtym: did this always require the LOCALLY to get rid of the TRUNCATE: (disassemble (compile nil '(lambda (seconds) (declare (optimize (speed 3) (safety 0) (debug 0))) (when (typep seconds '(integer 0 4611686018427387)) (locally (declare (type (integer 0 4611686018427387) seconds)) (values (truncate (* 1000 seconds)))))))) ? 2017-12-02T15:55:00Z stassats`: yes 2017-12-02T15:55:41Z stassats`: truncate is transformed before constraint is performed 2017-12-02T15:56:08Z stassats`: constraint propagation 2017-12-02T15:56:16Z scymtym: that's a shame, but i can put in the LOCALLY workaround with a FIXME for now 2017-12-02T15:58:26Z stassats`: ok, garbage collection is generally not a problem inside foreign thread callbacks, unless it's pretty small 2017-12-02T15:59:27Z dougk quit (Ping timeout: 248 seconds) 2017-12-02T16:02:25Z stassats`: probably something to do with PA 2017-12-02T16:13:42Z stassats`: whenever GC_PENDING is NIL GC_INHIBIT is T 2017-12-02T16:13:43Z eudoxia joined #sbcl 2017-12-02T16:14:34Z stassats`: i think something's wrong with thread local/non-thread local bindings for gc-pending/gc-inhibit 2017-12-02T16:15:42Z scymtym should be done with deadline/timeout stuff. cleaning up for review 2017-12-02T16:19:46Z stassats`: seems like that's always make-mutex 2017-12-02T16:20:06Z stassats`: which is indeed with gc-inhibit 2017-12-02T16:20:36Z stassats`: is this yet another damage fro safepoint related code? cause it was originally for safepoints only 2017-12-02T16:22:28Z stassats`: oh i see what's going on, make-mutex requests allocation, it's under *gc-inhibit*, so *gc-pending* is set to T 2017-12-02T16:23:02Z stassats`: then when make-list is tries to interrupt the PA it doesn't, because *gc-pending* is T 2017-12-02T16:26:29Z stassats`: and because gc-inhibit is set without using *gc-inhibit* 2017-12-02T16:27:10Z stassats`: so, yeah, yet another code from safepoints that violates invariants 2017-12-02T16:27:43Z nyef`: Is this part of the safepoint mechanism that I'm working with, or is it a different bit? 2017-12-02T16:28:04Z stassats`: nyef`: it's not restricted to safepoints anymore 2017-12-02T16:28:18Z stassats`: it's the mechanism by which foreign threads can call back into lisp 2017-12-02T16:28:34Z stassats`: which came from the safepoint enabling code and was working only safepoint enabled builds originally 2017-12-02T16:29:06Z nyef`: Hrm... Okay, so something that I might have to get to at some point, but nothing critical for my current test case. 2017-12-02T16:29:31Z stassats`: i'll fix it now, and it's unrelated to any safepoint problems 2017-12-02T16:29:40Z stassats`: since it doesn't involve safepoints 2017-12-02T16:30:09Z stassats`: just shares the quality of other safepoint-related code 2017-12-02T16:35:52Z stassats`: ok, i think i can both fix it and reduce the damage that had been inflicted on other code 2017-12-02T16:39:02Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-02T16:39:45Z DeadTrickster joined #sbcl 2017-12-02T16:49:40Z nyef` sighs. 2017-12-02T16:49:41Z ikki joined #sbcl 2017-12-02T16:50:13Z nyef`: I have a fix for at least one safepoint deadlock, but I don't know if I need to gc_state_wait() or gc_advance() in it. 2017-12-02T16:51:23Z gargaml joined #sbcl 2017-12-02T16:52:04Z stassats`: and *gc-inhibit* should be set before linking the thread 2017-12-02T16:53:12Z stassats`: to the all thread list 2017-12-02T16:53:14Z nyef`: Oh, hell. I need to check that too, don't I? 2017-12-02T16:54:02Z nyef`: Oh, good. That's the way around it is in init_new_thread(). No change neccessary beyond actually setting the inhibit. 2017-12-02T16:54:52Z stassats`: i'm just transposing two lines in attach_os_thread 2017-12-02T16:55:38Z nyef`: I figured, but I'm actually trying to clean up my fix for the safepoint neonatal thread deadlock, which involves GC_INHIBIT during thread startup. 2017-12-02T16:56:37Z stassats`: ok, so we're touching the same things, did you see (setf *gc-inhibit* nil) in initial-thread-function-trampoline? 2017-12-02T16:57:23Z nyef`: Yes. And I added a seven-line block comment and the exit test from WITHOUT-GCING. 2017-12-02T16:57:27Z stassats`: you can't live *gc-inhibit* like that without checking pending interrupts 2017-12-02T16:57:41Z stassats`: leave 2017-12-02T16:57:57Z stassats`: ok, then i'm waiting on your changes 2017-12-02T16:58:31Z nyef`: It may be a couple of hours for this round. 2017-12-02T16:58:52Z stassats`: it's been broken forever, so it can wait 2017-12-02T16:58:58Z nyef`: Heh. Fair enough. (-: 2017-12-02T16:59:25Z stassats`: but changing (setf *gc-inhibit* nil) will fix my problem 2017-12-02T16:59:39Z stassats`: except for GC_INHIBIT/init_new_thread order 2017-12-02T17:02:17Z stassats`: but consing new lisp threads each time a foreign thread callback is called is silly 2017-12-02T17:03:07Z nyef`: Mmm. Pool the damned things? 2017-12-02T17:05:42Z stassats`: i think i'll try leaving the lisp thread and destroying it with pthread_cleanup_push 2017-12-02T17:10:59Z stassats`: or adding a destructor for pthread_key_create(&lisp_thread, 0); 2017-12-02T17:12:15Z stassats`: though it still should be unlinked when exiting from the callback 2017-12-02T17:14:33Z stassats`: but how can i then link it again? of a thread has `lisp_thread' it won't go through the whole attach_os_thread setup 2017-12-02T17:15:36Z stassats`: ok, i can stash it in lisp_dormant_thread temporarily 2017-12-02T17:15:50Z stassats`: a bit more expensive than i have imagined, but still better 2017-12-02T17:16:52Z stassats`: but making them work correctly is the priority 2017-12-02T17:17:36Z nyef`: Okay, preliminary commit prepared. Now, before I try to get everything in shape to push, do I need to switch gc_state_wait() for gc_advance()? 2017-12-02T17:17:52Z stassats`: toss a coin 2017-12-02T17:18:19Z nyef`: No, the thing to do is consider the three-thread scenario. 2017-12-02T17:18:39Z gargaml quit (Quit: WeeChat 1.9.1) 2017-12-02T17:18:48Z nyef`: One is the parent: It's WITHOUT-GCING, in alien code, and blocked on a semaphore. 2017-12-02T17:19:33Z nyef`: One is the child: It's a neonate, is in alien code, is *GC-INHIBIT*, and hasn't yet run any lisp code at all. 2017-12-02T17:19:45Z nyef`: And the third is in gc_stop_the_world(). 2017-12-02T17:20:12Z stassats`: make-thread doesn't have without-gcing now, did you change without-interrupts to without-gcing? 2017-12-02T17:20:27Z nyef`: Specifically, gc_advance(GC_QUIET,GC_NONE), because it's an explicit invocation of GC. 2017-12-02T17:20:29Z nyef`: Err? 2017-12-02T17:22:21Z nyef`: Okay, what the hell? 2017-12-02T17:23:58Z stassats`: and the windows build is hosed 2017-12-02T17:25:09Z smurfrobot quit (Remote host closed the connection) 2017-12-02T17:25:24Z smurfrobot joined #sbcl 2017-12-02T17:25:57Z nyef`: Well, you're right in one sense, that's definitely a WITHOUT-INTERRUPTS and not a WITHOUT-GCING. 2017-12-02T17:28:15Z stassats`: x86-64-assem.S got broken, maybe i can use this as an opportunity to completely remove it? 2017-12-02T17:28:27Z stassats`: though i'll have to rewrite all at once 2017-12-02T17:29:22Z stassats`: or i can apply my patch from sbcl.so 2017-12-02T17:29:38Z ikki quit (Ping timeout: 260 seconds) 2017-12-02T17:29:39Z stassats`: dougk_: i'll revert your change x86-64-assem.S for now 2017-12-02T17:30:04Z stassats`: either x86-64-assem.S will go away, or it won't refer to C symbols in the future 2017-12-02T17:32:30Z stassats`: https://github.com/stassats/sbcl/commit/7d1a05db8242148cd91663bab0e4d81c6af976f2#diff-17c2ac7f27242e428debf897235ffb1f 2017-12-02T17:32:53Z stassats`: what's stopping me from applying it? having to change all other call_into_lisp 2017-12-02T17:33:48Z nyef`: Not being able to test on HPPA and Alpha? 2017-12-02T17:34:10Z stassats`: no, i just don't like changing a lot of code 2017-12-02T17:34:54Z stassats`: and having to look up all the different ABIs 2017-12-02T17:36:21Z stassats`: but alpha or hppa do not have all_threads or specials 2017-12-02T17:36:35Z scymtym: stassats`: do you remember why you introduced INTERNAL-SECONDS? it seems unused. i would like to change it to (real 0 )) 'internal-time) holds 2017-12-02T17:36:36Z nyef`: Condition the changes so that they only have an effect on platforms that you're interested in? 2017-12-02T17:37:03Z stassats`: nyef`: git revert is easier for now 2017-12-02T17:37:10Z stassats`: since it was just a cosmetic clean up 2017-12-02T17:38:21Z eudoxia quit (Quit: Leaving) 2017-12-02T17:38:45Z stassats`: scymtym: i don't remember 2017-12-02T17:39:47Z smurfrobot quit (Remote host closed the connection) 2017-12-02T17:40:03Z nyef`: #define CALL_INTO_LISP(fn,args,nargs,thread) call_into_lisp(fn,args,nargs) / call_into_lisp(fn,args,nargs,thread) ? 2017-12-02T17:40:50Z nyef`: At which point you can leave the changes for other platforms until later. Or for someone else. 2017-12-02T17:41:10Z scymtym: stassats`: i'm changing it then. (and reducing INTERNAL-TIME-BITS to 61 so timeout/deadline stuff doesn't cons bignums when adding internal times) 2017-12-02T17:41:23Z stassats`: nyef`: i don't like any extra macros or #ifdefs 2017-12-02T17:41:58Z stassats`: scymtym: are 61 bits enough? 2017-12-02T17:42:32Z nyef`: I can understand that. It's ugly. But this gets you the win on the platforms that you can support, makes it clear that there's more work to be done, and gives an incentive to the people who can support the other platforms to fix it... Provided that such people exist. 2017-12-02T17:42:57Z stassats`: sbcl.so isn't really useful anyway 2017-12-02T17:42:59Z stassats`: right now 2017-12-02T17:47:24Z scymtym: stassats`: it still allows for millions of years of real internal time. at the same time, i'm removing all restrictions for user-facing timeout values by ignoring timeouts that wouldn't fit into INTERNAL-TIME 2017-12-02T17:56:15Z nyef` sighs. 2017-12-02T17:56:33Z nyef`: Suddenly, the neonatal thread deadlock isn't occurring anymore, even without the fix in. 2017-12-02T17:56:57Z karswell quit (Ping timeout: 240 seconds) 2017-12-02T18:06:37Z smurfrobot joined #sbcl 2017-12-02T18:21:24Z nyef`: Okay, finally reproduced it. And you're right, *gc-inhibit*, *gc-pending*, *interrupts-enabled*, and *stop-for-gc-pending* are all NIL. 2017-12-02T18:24:07Z nyef`: Hrm. One wait on GC_INVOKED, two on GC_QUIET. 2017-12-02T18:24:41Z nyef`: Why aren't neonatal threads allowed to GC, anyway? 2017-12-02T18:25:03Z stassats`: that's a good question 2017-12-02T18:25:23Z nyef`: Seven threads in cond_wait, sounds about right. 2017-12-02T18:25:55Z stassats`: ;; If the starting thread is stopped for gc before it signals ;; the semaphore then we'd be stuck. 2017-12-02T18:26:36Z nyef`: Stuck why? 2017-12-02T18:26:37Z stassats`: stuck how? 2017-12-02T18:26:43Z nyef`: Exactly. 2017-12-02T18:29:35Z stassats`: i'd be stuck if it were (without-gcing (wait-on-semaphore)) 2017-12-02T18:29:42Z nyef`: Mmm. 2017-12-02T18:29:42Z stassats`: but this is not the case 2017-12-02T18:29:53Z nyef`: Okay, *WAS* it WITHOUT-GCING at one point? 2017-12-02T18:31:36Z nyef`: Lovely. The gdb info page doesn't appear to contain any information about working with multiple threads. 2017-12-02T18:32:02Z stassats`: i only use "info threads" and "thread 1/2/3" 2017-12-02T18:32:46Z nyef`: I just did "thread apply all back 5". 2017-12-02T18:33:03Z stassats`: or that 2017-12-02T18:33:27Z nyef`: So, threads 5, 6, 7, and 8 are all gc_state_wait(GC_NONE) from thread_in_lisp_raised(). 2017-12-02T18:33:58Z nyef`: Thread 4 is gc_state_wait(GC_QUIET) in gc_stop_the_world(). 2017-12-02T18:34:33Z nyef`: Thread 3 is gc_advance(old=GC_FLIGHT, new=GC_QUIET) in thread_in_lisp_raised(). 2017-12-02T18:34:37Z stassats`: there was never without-gcing there 2017-12-02T18:34:42Z nyef`: Thread 2 is the newbie. 2017-12-02T18:35:19Z nyef`: And thread 1 is in futex_wait(). 2017-12-02T18:37:23Z nyef`: Thread 2 is inhibit nil, pending nil, interrupts t, stop for pending nil. 2017-12-02T18:38:49Z nyef`: Given that there's no obvious problem with the parent blocking GC, and the CSP is marked as being in alien code, this shouldn't be an issue. 2017-12-02T18:39:22Z nyef`: This isn't an infant mortality case, is it? 2017-12-02T18:39:35Z stassats`: i think we wouldn't want to run gc before the thread is registered, but there's no lisp state yet, so it doesn't really hurt 2017-12-02T18:40:23Z stassats`: especially since another thread can ask for gc anyway, so, no idea why the no consing rule 2017-12-02T18:40:33Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-02T18:40:59Z DeadTrickster joined #sbcl 2017-12-02T18:41:27Z nyef`: Mmm. Was the no consing rule always there? 2017-12-02T18:44:05Z nyef`: I can understand a no-interrupts rule here, but no-consing and no-gc don't make sense. 2017-12-02T18:45:59Z stassats`: the no-gc isn't even enforced 2017-12-02T18:46:21Z nyef`: Actually, *ONE* line of argument makes sense: verify. 2017-12-02T18:46:22Z stassats`: it's no-locally-invoked-gc 2017-12-02T18:47:04Z scymtym: https://github.com/scymtym/sbcl/compare/deadline-timeout-cleanup~2...deadline-timeout-cleanup in case anyone wants to have a look 2017-12-02T18:47:06Z scymtym: dougk_: that should fix lp#1727789 2017-12-02T18:49:09Z stassats`: without-interrupts doesn't prevent garbage collection, does it? 2017-12-02T18:49:18Z nyef`: No, it doesn't. It very specifically doesn't. 2017-12-02T18:50:19Z nyef`: I'm no longer convinced that there's a new-thread-specific safepoint deadlock here. 2017-12-02T19:01:05Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-02T19:02:04Z DeadTrickster joined #sbcl 2017-12-02T19:03:08Z smurfrobot quit (Remote host closed the connection) 2017-12-02T19:05:43Z stassats`: it would be pretty embarrassing to still have problems with make-thread 2017-12-02T19:06:39Z nyef`: Thread 1 creates a new thread. Threads 8, 7, 6, 5, and 4 take pending-interrupt traps. Threads 8, 6, and 4 call SUB_GC, threads 8 and 6 returning. Thread 3 takes the GC state lock, waits for GC_NONE -> GC_NONE, and releases the lock. Thread 3 is probably our neonate. 2017-12-02T19:09:45Z nyef`: Thread 5 calls SUB_GC. Thread 6 takes another pending trap and calls SUB_GC. Thread 3 calls thread_register_gc_trigger(). GC phase is advanced from GC_NONE to GC_FLIGHT. Threads 5 and 6 return from SUB_GC. Thread 1 creates a new thread (which must be thread 2). 2017-12-02T19:09:53Z stassats`: "To avoid deadlocks when gc stops the world all clients of each mutex must enable or disable SIG_STOP_FOR_GC for the duration of holding the lock, but they must agree on which." 2017-12-02T19:10:01Z stassats`: i don't quite understand it 2017-12-02T19:10:55Z smurfrobot joined #sbcl 2017-12-02T19:15:16Z Jesin joined #sbcl 2017-12-02T19:15:19Z nyef`: Thread 3 is still advancing to GC_FLIGHT, and the GSP isn't armed yet. Thread 1 is still creating thread 2. Thread 4 is still in SUB_GC. Threads 5 and 6 are in lisp, having just returned from pending-interrupt traps. Thread 7 is in SUB_GC. Thread 8 has just taken a pending-interrupt trap. 2017-12-02T19:15:54Z ikki joined #sbcl 2017-12-02T19:17:41Z nyef`: Thread 8 calls SUB_GC. Thread 5 takes a PIT stop. Threads 7 and 8 return from SUB_GC. Thread 1 returns from creating thread-2, goes down on the semaphore, and we never hear from it again. Thread 2 announces that it exists. 2017-12-02T19:19:27Z scymtym: test failure on x86: UNEXPECTED-FAILURE :DISASSEMBLE-ARITH-INSTS https://ci.cor-lab.org/job/sbcl-master/featureset=1,label=ubuntu_trusty_32bit/2691/consoleFull 2017-12-02T19:19:27Z nyef`: Thread 5 calls SUB_GC. Thread 7 returns from its PIT stop. Thread 3 arms the GSP. 2017-12-02T19:22:24Z nyef`: ... And it finally occurs to me that what I need is a diagram that has a column for each thread's timeline, all in sync. 2017-12-02T19:26:57Z smurfrobot quit (Remote host closed the connection) 2017-12-02T19:28:24Z smurfrobot joined #sbcl 2017-12-02T19:31:05Z BitPuffin|osx quit (Ping timeout: 276 seconds) 2017-12-02T19:33:50Z stassats`: not setting *gc-inhibit* does end up badly, but i'm not sure how exactly 2017-12-02T19:33:57Z stassats`: Help! 11 nested errors. SB-KERNEL:*MAXIMUM-ERROR-DEPTH* exceeded. 2017-12-02T19:34:17Z nyef`: Okay, eliding stuff. We're in GC_FLIGHT. Thread 3 has just armed the GSP, and thread 4 is in SUB_GC. Thread 3 releases the state lock, pasing it to thread 4 which has just entered STW. 2017-12-02T19:35:55Z stassats`: SUB-GC encounters an internal error, and then handling that error ends up gcing again 2017-12-02T19:36:48Z nyef`: We're in GC_FLIGHT, so thread 4 marks itself as collector (?), bumps the wait count for GC_QUIET, and waits for GC_QUIET. 2017-12-02T19:37:36Z stassats`: Internal error #10 "Object is of the wrong type." at 0x21c8fa24 2017-12-02T19:37:38Z stassats`: that's in sub-gc 2017-12-02T19:38:52Z stassats`: NIL not of type THREAD 2017-12-02T19:39:34Z stassats`: so we can't GC without SB-THREAD:*CURRENT-THREAD*? 2017-12-02T19:39:57Z nyef`: stassats`: Sounds like there's a bit of per-thread initialization that needs to be done before *a given thread* is permitted to run SUB-GC, but isn't necessarily affected by any other thread running GC? 2017-12-02T19:40:19Z stassats`: that appears to be the case 2017-12-02T19:40:31Z stassats`: but only because of sb!thread::without-thread-waiting-for? 2017-12-02T19:41:18Z nyef`: Current wait counts: GC_QUIET(1). GSP is armed. Thread 3 is GC_PENDING. Thread 2 is neonatal, and we don't hear from it again. Threads 5, 6, 7, and 8 have unknown status WRT GC_PENDING and GC_INHIBIT. 2017-12-02T19:43:06Z nyef`: Threads start hitting the GSP. 2017-12-02T19:43:26Z stassats`: and sb!thread:with-mutex 2017-12-02T19:45:01Z nyef`: Threads 7 and 8 take GSP traps, and decide to wait for GC_MESSAGE. They do not affect the wait counts. 2017-12-02T19:45:03Z stassats`: so, let's bind *current-thread* early? 2017-12-02T19:45:27Z nyef`: Why is *current-thread* not bound (or simply always-bound and set) by the runtime? 2017-12-02T19:45:50Z stassats`: is that a rhetorical question? 2017-12-02T19:46:02Z nyef`: I don't know? 2017-12-02T19:46:26Z nyef`: Or are you saying "let's do precisely that"? 2017-12-02T19:47:12Z stassats`: that's what i was implying by "bind early", yes 2017-12-02T19:47:34Z nyef`: Sounds like we're on the same page, then. I'll get back to what I was doing. 2017-12-02T19:47:49Z stassats`: what is SB-VM:*ALLOC-SIGNAL*? 2017-12-02T19:48:03Z stassats`: sprof thingy? 2017-12-02T19:48:24Z stassats`: yeah 2017-12-02T19:50:15Z smurfrobot quit (Remote host closed the connection) 2017-12-02T19:55:45Z nyef`: Thread 3 marks itself as being in alien code, and requests an advance to GC_QUIET. Phase advances to GC_MESSAGE. 2017-12-02T19:56:15Z nyef`: "global notification", which actually means arming per-thread CSP traps. 2017-12-02T20:00:30Z nyef`: ... And I just managed to kill my trace buffer. Damnit. 2017-12-02T20:04:13Z stassats`: and to init *current-thread* i just need to add (sb!thread:*current-thread* "th") to !per-thread-c-interface-symbols 2017-12-02T20:04:17Z stassats`: which is nice 2017-12-02T20:05:47Z stassats`: if another thread can trigger GC, then there's no real reason to avoid consing after the thread is linked 2017-12-02T20:06:18Z stassats`: except that now make-thread looks ugly 2017-12-02T20:06:31Z stassats`: (ugly without reason, with all the roundabout allocations) 2017-12-02T20:06:48Z stassats`: Failed contribs:" sb-concurrency sb-introspect 2017-12-02T20:07:09Z stassats`: Recursive lock attempt #. 2017-12-02T20:07:33Z stassats`: ok, i think that's from NIL still being the *current-thread*? 2017-12-02T20:07:40Z smurfrobot joined #sbcl 2017-12-02T20:09:11Z nyef`: Trace buffer rebuilt. 2017-12-02T20:11:06Z easye quit (Ping timeout: 260 seconds) 2017-12-02T20:12:40Z stassats`: weird, in the main thread i get *current-thread*, but new threads it's still NIL 2017-12-02T20:13:05Z nyef`: Threads 7 and 8 are "in lisp", waiting on GC_MESSAGE. Threads 5 and 6 have hit the GSP (still "in lisp") and are waiting for their chance to do something. Thread 1 is "in alien" (blocked on the new thread semaphore), and we don't hear from it again. Thread 2 is "in alien" (our neonate, waiting for GC_NONE), and we don't hear from it again. 2017-12-02T20:13:45Z stassats`: it's in sb-thread::*thread-initial-bindings*, duh 2017-12-02T20:14:15Z nyef`: Thread 4 is in STW, is "collector", and is waiting for GC_QUIET. 2017-12-02T20:17:58Z stassats`: ugh, sb-concurrency sb-introspect still broken 2017-12-02T20:20:02Z stassats`: 48857088 is not (or null thread), what? 2017-12-02T20:20:46Z stassats`: oh 2017-12-02T20:20:49Z nyef`: stassats`: At a guess? We have at least THREE "thread" structures, and you grabbed the wrong one? 2017-12-02T20:20:55Z stassats`: yes 2017-12-02T20:21:25Z nyef`: So, threads 1, 2, and 4 are "in alien". They have STOP_FOR_GC_PENDING set, and cause increments on phase_wait[GC_MESSAGE]. Threads 5, 6, 7, and 8 are "in lisp". For each, they are either marked as STOP_FOR_GC_PENDING and phase_wait[GC_INVOKED] is bumped, or they aren't, and it isn't. 2017-12-02T20:22:15Z stassats`: ok, so while i kinda can make it work with make-thread, but not with alien callbacls 2017-12-02T20:22:36Z stassats`: so, i just need to update the comments: don't cause gc before *current-thread* is set up, that's it 2017-12-02T20:22:57Z nyef`: Something doesn't seem right. 2017-12-02T20:23:41Z nyef`: ... Right, other way around. 2017-12-02T20:23:56Z smurfrobot quit (Remote host closed the connection) 2017-12-02T20:24:29Z stassats`: still can make clean the roundabout allocations 2017-12-02T20:24:36Z nyef`: Threads 1, 2, and 4 are "in alien". Threads 1 and 2 have their CSP armed, but otherwise nothing happens. 2017-12-02T20:24:52Z nyef`: Thread 4 is... Hrm. 2017-12-02T20:25:31Z stassats`: and in enter-foreign-callback it can just be (without-gcing (setf *current-thread* (make-foreign-thread :name "foreign callback"))) 2017-12-02T20:25:43Z nyef`: ... is in STW, hence WITHOUT-GCING. CSP is armed, phase_wait[GC_INVOKED] is bumped. 2017-12-02T20:26:39Z nyef`: Threads 5, 6, 7, and 8 have their CSP armed, STOP_FOR_GC_PENDING set, and increment phase_wait[GC_MESSAGE]. 2017-12-02T20:28:48Z nyef`: Wait counts: GC_QUIET(2), GC_INVOKED(1), GC_MESSAGE(4). 2017-12-02T20:31:54Z nyef`: Threads 5 and 6 hit the GSP. They clear STOP_FOR_GC_PENDING, clear their CSP trap, mark themselves as "in alien", and request an advance to GC_NONE. 2017-12-02T20:32:09Z nyef`: Wait counts: GC_QUIET(2), GC_INVOKED(1), GC_MESSAGE(2). 2017-12-02T20:32:39Z nyef`: Thread 8 wakes up, does the same. GC_MESSAGE(1). 2017-12-02T20:33:04Z nyef`: Thread 7 wakes up. Requests advance to GC_INVOKED. 2017-12-02T20:33:19Z nyef`: (Thread 7 must be in WITHOUT-GCING.) 2017-12-02T20:35:14Z nyef`: Thread 4 is one of the waits on GC_QUIET. But it's *also* the wait on GC_INVOKED. 2017-12-02T20:36:10Z dougk joined #sbcl 2017-12-02T20:37:14Z nyef`: Obvious solution is obvious, but what is thread 3 doing? 2017-12-02T20:37:26Z nyef`: Or, well, *planning* on doing? 2017-12-02T20:39:41Z nyef`: In a non-deadlock future, we hit GC_QUIET, and it resumes. It clears its CSP trap, notices that there's a collector (some other thread has hit STW), and forces an advance to GC_NONE. 2017-12-02T20:40:13Z nyef`: If no other thread hit STW, then it marks itself "in lisp" again, and sets GC_PENDING. 2017-12-02T20:40:30Z dougk quit (Ping timeout: 260 seconds) 2017-12-02T20:40:39Z nyef`: What the hell good does *THAT* do? 2017-12-02T20:41:23Z stassats`: things are really simplified when i can cons in the right place 2017-12-02T20:42:54Z stassats`: nyef`: are you still adding *gc-inhibit*? 2017-12-02T20:43:06Z nyef`: stassats`: Not at this point. 2017-12-02T20:43:11Z stassats`: cool 2017-12-02T20:43:19Z stassats`: i'm rewiring these parts 2017-12-02T20:43:48Z nyef`: You do your thing. I think I've got a good lead on this one. And if we still have trouble, we still have trouble. 2017-12-02T20:45:35Z stassats`: and my test case no longer fails 2017-12-02T20:45:42Z stassats`: and things are simpler 2017-12-02T20:45:49Z stassats`: i love when that happens 2017-12-02T20:46:02Z stassats`: ok, more testing and pushing 2017-12-02T20:48:01Z scymtym quit (Ping timeout: 250 seconds) 2017-12-02T20:50:59Z nyef`: Okay, I have no idea why it sets GC_PENDING, but at least it's obviously not losing GCs there. 2017-12-02T20:54:35Z stassats`: Shinmera: your remaining issue is about to be fixed 2017-12-02T20:54:46Z stassats`: your test uncovered three different bugs 2017-12-02T20:54:53Z angavrilov quit (Remote host closed the connection) 2017-12-02T20:55:19Z stassats`: and better remove *gc-inhibit* usage, it's not safe 2017-12-02T20:57:33Z nyef`: And... still locks up. Hrm. 2017-12-02T20:57:49Z stassats`: and pushed 2017-12-02T20:58:09Z stassats`: i doubt it'll change anything for you, it only really addresses foreign thread callbacks 2017-12-02T21:10:48Z Shinmera: stassats`: Heh, very nice. 2017-12-02T21:18:59Z shka quit (Ping timeout: 276 seconds) 2017-12-02T21:19:33Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-02T21:20:01Z DeadTrickster joined #sbcl 2017-12-02T21:24:44Z scymtym joined #sbcl 2017-12-02T21:29:11Z dougk joined #sbcl 2017-12-02T22:01:34Z smurfrobot joined #sbcl 2017-12-02T22:02:38Z nyef`: Okay, thread-4 registers GC trigger. Advances to GC_FLIGHT, arms the GSP trap. 2017-12-02T22:04:43Z nyef`: Thread-8 hits the GSP, requests advance to GC_QUIET. 2017-12-02T22:04:45Z nyef`: What? 2017-12-02T22:06:09Z nyef`: Ah, it's in SUB_GC, outside WITHOUT-GCING. 2017-12-02T22:06:41Z ikki quit (Ping timeout: 240 seconds) 2017-12-02T22:07:25Z nyef`: So GC_PENDING is true, but the thread doesn't particularly need to run during GC_INVOKED. 2017-12-02T22:07:51Z nyef`: This is clearly the bait-and-switch case. (-: 2017-12-02T22:10:34Z nyef`: Meanwhile, threads 2, 3, 4, 5, 6, 7, and 9 hit the GSP. 2017-12-02T22:10:54Z nyef`: Thread 1 is in JOIN-THREAD, and doesn't really enter into this. 2017-12-02T22:13:20Z nyef`: Thread-8 has the lock, and has marked itself "in alien", is preparing to phase_wait[GC_QUIET], but needs to transition to GC_MESSAGE. 2017-12-02T22:14:15Z nyef`: Seven threads are "in lisp" to be notified. Wait counts: GC_MESSAGE(7), GC_QUIET(1). 2017-12-02T22:16:50Z nyef`: Thread 6 requests an advance to GC_INVOKED. Threads 2, 3, 4, 5, 7, and 9 advance for GC_NONE. Wait counts: GC_INVOKED(1), GC_QUIET(1). 2017-12-02T22:18:22Z nyef`: Thread 7 was the last to leave GC_MESSAGE, and is the one to clear the GSP trap. 2017-12-02T22:18:41Z nyef`: Thread 6 wakes up and takes CSP trap. 2017-12-02T22:19:19Z nyef`: Why did thread 6 requiest for GC_INVOKED? 2017-12-02T22:20:38Z nyef`: ... It must be/have been in WITHOUT_GCING. 2017-12-02T22:22:02Z nyef`: Okay, that's fine. 2017-12-02T22:22:10Z nyef`: Then thread 6 hits STW. 2017-12-02T22:22:27Z nyef`: And there's still a registered waiter on GC_INVOKED? What? 2017-12-02T22:32:01Z stassats` quit (Ping timeout: 248 seconds) 2017-12-02T22:37:00Z nyef`: There's one holder when thread-7 waits for GC_INVOKED -> GC_NONE. Thread-6 wakes up, and *is that holder*. 2017-12-02T22:37:10Z nyef`: Hrm. 2017-12-02T22:39:24Z nyef`: Ah. 2017-12-02T22:39:59Z nyef`: STW is doing a state_wait(), but it's the *only unblocked thread*, so it needs to be doing a gc_advance(). 2017-12-02T22:41:04Z nyef`: Presumably, however, there's some other scenario in which a gc_state_wait() is appropriate. 2017-12-02T22:45:49Z smurfrobot quit (Remote host closed the connection) 2017-12-02T22:49:49Z smurfrobot joined #sbcl 2017-12-02T23:01:55Z nyef`: If GC_PHASE is GC_FLIGHT or GC_ALIEN, we are "in alien", and some *other* thread is driving the state machine. 2017-12-02T23:02:49Z nyef`: We are also in WITHOUT_GCING, so we're going to get marked by gc_notify_early() as phase_wait[GC_INVOKED]. 2017-12-02T23:04:13Z nyef`: ... Except not: We're also setting ourself up as collector, which doesn't get notified. 2017-12-02T23:06:16Z nyef`: If we're in GC_MESSAGE, we're already on the hook for phase_wait[GC_INVOKED]. Unless we're advancing to GC_INVOKED ourselves. 2017-12-02T23:06:36Z nyef`: No, that puts us on phase_wait[GC_INVOKED] anyway. 2017-12-02T23:06:52Z smurfrobot quit (Remote host closed the connection) 2017-12-02T23:11:45Z smurfrobot joined #sbcl 2017-12-02T23:23:02Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-02T23:23:55Z DeadTrickster joined #sbcl 2017-12-02T23:40:37Z dougk quit (Read error: Connection reset by peer) 2017-12-02T23:40:56Z dougk joined #sbcl 2017-12-02T23:50:31Z zulu_inuoe joined #sbcl 2017-12-02T23:51:01Z smurfrobot quit (Remote host closed the connection) 2017-12-02T23:52:47Z zulu_inuoe_ quit (Ping timeout: 260 seconds) 2017-12-03T00:03:45Z stassats joined #sbcl 2017-12-03T00:04:07Z nyef`: Thread 2 registers the trigger, we hit GC_FLIGHT, the GSP is armed. 2017-12-03T00:05:29Z nyef`: Thread 5 traps first, but waits for GC_MESSAGE. 2017-12-03T00:06:43Z nyef`: Thread 4 traps next, and requests an advance from GC_FLIGHT to GC_QUIET. 2017-12-03T00:07:11Z nyef`: It is now "in alien" and clearly has GC_PENDING set. 2017-12-03T00:08:30Z nyef`: We enter GC_MESSAGE. Nobody should be in gc_stop_the_world() yet... 2017-12-03T00:08:46Z nyef`: Wait, what? There's a collector still set? 2017-12-03T00:09:19Z nyef`: How the heck? 2017-12-03T00:14:52Z nyef`: Let's assert that there is no collector when we're done. 2017-12-03T00:20:34Z nyef`: So of course now it doesn't trigger. 2017-12-03T00:20:46Z nyef`: How long is this test case supposed to run, anyway? 2017-12-03T00:22:35Z nyef`: Ah, there it goes. 2017-12-03T00:32:55Z cromachina_ joined #sbcl 2017-12-03T00:34:57Z cromachina quit (Ping timeout: 240 seconds) 2017-12-03T00:43:23Z nyef`: ... I have a phase_wait[GC_SETTLED] of 1. This makes no sense. 2017-12-03T00:43:51Z nyef`: Literally nothing should be incrementing that. 2017-12-03T00:48:31Z nyef`: Ah. 2017-12-03T00:48:35Z nyef`: Okay, now I see. 2017-12-03T00:50:39Z stassats quit (Ping timeout: 248 seconds) 2017-12-03T00:50:48Z nyef`: gc_notify_final() itself sets it up, but does so by reference to gc_state.phase, not by reference to GC_SETTLED itself. 2017-12-03T00:54:28Z nyef`: For all threads that are in lisp (except the collector, if that's somehow "in lisp" 2017-12-03T00:54:31Z nyef`: Err... 2017-12-03T00:55:16Z nyef`: For all threads that are "in lisp" (except the collector, if that's somehow "in lisp"), set STOP_FOR_GC_PENDING, and bump the wait count on GC_SETTLED. 2017-12-03T00:56:33Z nyef`: ... what? 2017-12-03T00:58:15Z nyef`: Ah. These would be the threads that were WITHOUT-GCING. 2017-12-03T01:01:06Z nyef`: ... And the blocker is, in fact, *still waiting for GC_INVOKED*. 2017-12-03T01:04:31Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-03T01:05:03Z nyef`: Thread 7 is on the wait count for GC_INVOKED, but thread 4 decremented it. 2017-12-03T01:05:11Z DeadTrickster joined #sbcl 2017-12-03T01:09:54Z nyef`: Oh, *that's* nasty. 2017-12-03T01:10:12Z nyef`: Hrm. 2017-12-03T01:11:08Z nyef`: No, that's not it. 2017-12-03T01:12:40Z ikki joined #sbcl 2017-12-03T01:23:10Z nyef`: Ohhh... Yeah, *that's* nasty. Wow. Thread 2 hit the global safepoint, but has a CSP, meaning that it's "in alien". 2017-12-03T01:51:35Z smurfrobot joined #sbcl 2017-12-03T01:56:26Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-03T02:02:41Z nyef`: And one *more* bug found. 2017-12-03T02:03:11Z nyef`: Running the test case again. 2017-12-03T02:15:28Z nyef`: Eight threads, one hundred million outer loops per thread, one thousand inner loops per outer loop, and the inner loop has to copy a thousand-element vector? 2017-12-03T02:15:49Z nyef`: That's... going to take a while, I think. 2017-12-03T03:53:10Z smurfrobot joined #sbcl 2017-12-03T03:57:29Z smurfrobot quit (Ping timeout: 255 seconds) 2017-12-03T04:17:03Z dougk quit (Ping timeout: 248 seconds) 2017-12-03T04:44:29Z ikki_ joined #sbcl 2017-12-03T04:44:57Z ikki quit (Read error: Connection reset by peer) 2017-12-03T04:49:02Z ikki_ quit (Ping timeout: 255 seconds) 2017-12-03T05:09:56Z Bike quit (Quit: Lost terminal) 2017-12-03T06:01:50Z dougk joined #sbcl 2017-12-03T06:48:29Z Jesin quit (Ping timeout: 255 seconds) 2017-12-03T07:04:26Z dougk quit (Ping timeout: 260 seconds) 2017-12-03T07:19:49Z Jesin joined #sbcl 2017-12-03T07:46:57Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-03T07:47:45Z DeadTrickster joined #sbcl 2017-12-03T07:55:00Z smurfrobot joined #sbcl 2017-12-03T07:59:35Z smurfrobot quit (Ping timeout: 255 seconds) 2017-12-03T08:14:36Z BitPuffin|osx joined #sbcl 2017-12-03T08:40:25Z shka joined #sbcl 2017-12-03T10:28:12Z stassats joined #sbcl 2017-12-03T10:56:25Z smurfrobot joined #sbcl 2017-12-03T11:01:30Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-03T11:13:23Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-03T11:14:05Z DeadTrickster joined #sbcl 2017-12-03T11:35:29Z scymtym quit (Ping timeout: 248 seconds) 2017-12-03T11:55:35Z scymtym joined #sbcl 2017-12-03T12:24:52Z scymtym: could lp#1735974 just be missing a re-login to pick up modified environment variables? i'm not sure how this works in windows 2017-12-03T12:25:06Z stassats: probably 2017-12-03T12:25:10Z stassats: but it sucks to relogin 2017-12-03T12:25:24Z scymtym: sure 2017-12-03T12:26:04Z scymtym: i think the best solution would be hard-wiring the default core location into the executable at installation time 2017-12-03T12:26:06Z stassats: non-win32 sbcl doesn't put version numbers, let's maybe do that on win32 too? 2017-12-03T12:27:47Z scymtym: wouldn't that leave people with parallel installations when upgrading unless we take special care to uninstall versions following the old scheme? 2017-12-03T12:28:48Z stassats: that'll only happen once 2017-12-03T12:30:45Z scymtym: assuming people are able to clean up manually 2017-12-03T12:32:33Z scymtym: your suggestion probably minimizes future trouble 2017-12-03T12:33:27Z scymtym: that said, with windows i'm always worried about doing things in-place since it is so sensitive to filesystem stuff being still in use 2017-12-03T12:34:22Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-03T12:34:48Z DeadTrickster joined #sbcl 2017-12-03T12:35:35Z stassats: hmm, i don't quite get how SUPPORT_FOMIT_FRAME_POINTER works on win32 2017-12-03T12:35:47Z scymtym: something (i suspect "Speed up the disassembler") broke assembler.pure :DISASSEMBLE-ARITH-INSTS on x86 btw: https://ci.cor-lab.org/job/sbcl-master/featureset=1,label=ubuntu_trusty_32bit/2696/consoleFull 2017-12-03T12:36:07Z stassats: but it appears to be doing something, without it there's no backtraces from callbacks even without omitted frame pointers 2017-12-03T12:36:50Z stassats: may be another case of piling up stuff instead of fixing the actual problem 2017-12-03T12:39:01Z stassats: the frame pointer would have to be saved before calling into c, but this just gets the stack address from callback_wrapper_trampoline 2017-12-03T12:39:08Z stassats: how can it work? no idea 2017-12-03T12:39:10Z bkst joined #sbcl 2017-12-03T12:42:56Z stassats: ok, i think i can at least fix the (cosh 90) test errors on windows 2017-12-03T12:45:15Z bkst quit (Ping timeout: 250 seconds) 2017-12-03T12:49:25Z Bike joined #sbcl 2017-12-03T12:51:45Z stassats: nyef`: not tired of sb-safepoint yet? 2017-12-03T12:51:59Z nyef`: stassats: Bad news: It's been most of twelve hours, and that test case still hasn't locked up. I'm going to need a new test case at this rate. 2017-12-03T12:52:13Z stassats: which test case? 2017-12-03T12:52:36Z nyef`: bug-1424031. 2017-12-03T12:52:43Z stassats: there are multiple test cases there 2017-12-03T12:53:48Z stassats: the first one got fixed with the maybe-rehash changes 2017-12-03T12:54:24Z nyef`: The one in comment #3. 2017-12-03T12:55:15Z stassats: locks up immediately 2017-12-03T12:56:08Z nyef`: Sure. My local tree has three fixes for various deadlocks in the safepoint logic. 2017-12-03T12:58:39Z stassats: so maybe it's good news? 2017-12-03T12:59:31Z nyef`: Can't be. Just means that the damned thing has gotten More Subtle, not that it's actually fixed. 2017-12-03T13:04:14Z BitPuffin|osx quit (Ping timeout: 260 seconds) 2017-12-03T13:05:06Z stassats: you could roll back your other fixes and test it there 2017-12-03T13:06:20Z nyef`: The neonatal thread changes? Already rolled back. 2017-12-03T13:06:53Z nyef`: I'm no longer at all convinced that there's a problem there. 2017-12-03T13:07:25Z nyef`: I think that what was happening was that one of the other deadlock scenarios was tending to hit before all of the threads were created. 2017-12-03T13:10:04Z stassats: scymtym: The assertion (NOT (SB-SYS:DECODE-TIMEOUT SECONDS)) failed with (SB-SYS:DECODE-TIMEOUT SECONDS) = 536870912." 2017-12-03T13:10:53Z stassats: yeah, most-positive-fixnum isn't large enough on x86 2017-12-03T13:11:48Z stassats: i'll change it to (expt 2 64) 2017-12-03T13:14:19Z bkst joined #sbcl 2017-12-03T13:14:28Z scymtym: stassats: oops. thanks 2017-12-03T13:25:04Z ym quit (Quit: Leaving) 2017-12-03T13:32:19Z nyef`: Okay, it's been eleven and a half hours. Test run killed. 2017-12-03T13:35:31Z scymtym: clisp host crash: https://ci.cor-lab.org/job/sbcl-master/2696/featureset=6,label=ubuntu_trusty_64bit/console 2017-12-03T13:36:46Z scymtym: started to happen here: https://ci.cor-lab.org/job/sbcl-master/2694/ 2017-12-03T13:38:13Z stassats: ran out of memory? 2017-12-03T13:47:52Z scymtym: no idea. ok, it did happen before 2017-12-03T13:49:34Z smurfrobot joined #sbcl 2017-12-03T13:49:35Z scymtym: right, it says "Free space: 14 bytes.". but "Currently in use: 35354352 bytes." seems very little for exhausting the heap 2017-12-03T13:57:00Z nyef`: stassats: So, I'm thinking that callbacks (on a lisp thread) are going to tend to break things, two different ways, and I still need to track down what's going on with sb-sprof, but safepoints should be a bit more stable now. 2017-12-03T13:57:07Z scymtym: clisp seems to dynamically grow the heap. so it's probably something else 2017-12-03T14:00:53Z stassats: nyef`: callbacks will break things on sb-safepoint? 2017-12-03T14:01:15Z dougk joined #sbcl 2017-12-03T14:02:33Z nyef`: I don't know for sure, but I expect them to. 2017-12-03T14:03:44Z nyef`: If they do, I can fix it, at least. 2017-12-03T14:12:53Z smurfrobot quit (Remote host closed the connection) 2017-12-03T14:14:50Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-03T14:15:04Z stassats: break how? 2017-12-03T14:15:14Z DeadTrickster joined #sbcl 2017-12-03T14:15:28Z nyef`: Usual deadlock thing in safepoint. 2017-12-03T14:15:33Z stassats: not maintaining in-lisp/in-c states? 2017-12-03T14:15:37Z nyef`: Spot on. 2017-12-03T14:16:34Z nyef`: I have a couple of angles for fixing it, at least. 2017-12-03T14:17:46Z stassats: then there's the sb-safepoint-strictly fun wrt interrupts 2017-12-03T14:17:54Z stassats: if it interrupts something that's in C it waits forever 2017-12-03T14:18:24Z stassats: don't rush into building sb-safepoint-strictly on linux, i broke it a bit 2017-12-03T14:18:36Z stassats: unbroke 2017-12-03T14:18:44Z nyef`: I already noticed that sb-safepoint-strictly was a bit... quirky? 2017-12-03T14:19:06Z nyef`: Tended to ignore SIGINT, at least. 2017-12-03T14:19:16Z stassats: it's default on windows, that's why it's so bad there 2017-12-03T14:20:14Z stassats: ok, taking a break to make a hunhcentoot release 2017-12-03T14:21:35Z nyef`: Do we expect sb-safepoint-strictly to require sb-thruption, vice versa, or are they supposed to be fully independent? 2017-12-03T14:22:16Z stassats: i don't expect anything modular or independent from sb-safepoint 2017-12-03T14:25:14Z nyef`: So, one probably depends on the other, and it might be a recursive dependency. 2017-12-03T14:25:44Z smurfrobot joined #sbcl 2017-12-03T14:26:56Z smurfrobot quit (Remote host closed the connection) 2017-12-03T14:34:39Z stassats: curiously, nothing hangs on sb-safepoint-strictly on linux 2017-12-03T14:34:48Z stassats: in threads.impure 2017-12-03T14:34:57Z stassats: maybe it's still sending signals 2017-12-03T14:35:56Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-03T14:36:04Z nyef`: Oh. Heh. Here's another fun one for you: We now effectively maintain foreign_function_call_active for x86oids on safepoint, it's just called something else. 2017-12-03T14:36:17Z stassats: wake_thread_posix is better than wake_thread_win32 then 2017-12-03T14:36:47Z nyef`: I haven't even looked at the wake_thread stuff yet. 2017-12-03T14:37:03Z stassats: wake_thread_posix still uses pthread_kill 2017-12-03T14:37:06Z DeadTrickster joined #sbcl 2017-12-03T14:37:22Z stassats: but wake_thread_win32 doesn't 2017-12-03T14:37:26Z stassats: so it hangs on foreign calls 2017-12-03T14:38:31Z smurfrobot joined #sbcl 2017-12-03T14:56:54Z smurfrobot quit (Remote host closed the connection) 2017-12-03T15:00:27Z shka quit (Quit: Konversation terminated!) 2017-12-03T15:00:35Z easye joined #sbcl 2017-12-03T15:00:39Z smurfrobot joined #sbcl 2017-12-03T15:00:45Z smurfrobot quit (Remote host closed the connection) 2017-12-03T15:00:59Z smurfrobot joined #sbcl 2017-12-03T15:04:19Z stassats: nyef`: i think you're in a better position to look at wake_thread_win32 now 2017-12-03T15:04:23Z stassats: or wake_thread_posix 2017-12-03T15:14:14Z smurfrobot quit (Remote host closed the connection) 2017-12-03T15:22:20Z nyef`: Quite possibly. 2017-12-03T15:33:00Z nyef`: Hrm. We're in check_interrupt_context_or_lose() (in maybe_defer_handler()). GC_INHIBIT is NIL, GC_PENDING is T, and IN_WITHOUT_GCING is NIL. What is gc_state.phase? 2017-12-03T15:34:27Z nyef`: It is at least GC_FLIGHT, as that's how we get GC_PENDING without GC_INHIBIT. 2017-12-03T15:39:16Z nyef`: And if we're in GC_MESSAGE then STOP_FOR_GC_PENDING is T... 2017-12-03T15:39:42Z nyef`: And now I'm worried about a possible race in WITHOUT_GCING. 2017-12-03T15:42:41Z nyef`: ... and we can't be any later than GC_MESSAGE because we can't leave GC_MESSAGE until this thread hits the GSP trap or its CSP trap. 2017-12-03T15:43:01Z dougk quit (Ping timeout: 260 seconds) 2017-12-03T15:43:58Z dougk joined #sbcl 2017-12-03T15:46:16Z nyef`: Now, can I get at gc_state.phase from here? 2017-12-03T15:46:52Z nyef`: ... maybe? 2017-12-03T15:47:43Z nyef`: Not remotely convinced that it's safe to try and take the lock, though. 2017-12-03T15:58:04Z nyef`: ... I think that I may have an angle on the DX_ALLOC_SAP() thing that could work for Alpha. 2017-12-03T15:58:42Z nyef`: Probably not worth doing this year, though. 2017-12-03T16:10:14Z dougk quit (Read error: Connection reset by peer) 2017-12-03T16:10:40Z dougk joined #sbcl 2017-12-03T16:36:36Z nyef`: Can we end up in maybe_defer_handler() while holding gc_state.lock? 2017-12-03T16:37:32Z dougk quit (Ping timeout: 255 seconds) 2017-12-03T16:38:47Z nyef`: ... not from thread.c. 2017-12-03T16:41:52Z nyef`: Potential weakpoints in safepoint are registering the GC trigger, stopping and starting the world, and the safepoint traps. 2017-12-03T16:44:36Z dougk joined #sbcl 2017-12-03T16:45:24Z nyef`: ... Not from traps, they're installed with the blockable sigset mask. 2017-12-03T16:46:23Z ikki joined #sbcl 2017-12-03T16:47:29Z nyef`: ... We can while registering the GC trigger, the only protection there is that we're in PA. 2017-12-03T16:50:57Z nyef`: And world motion control is in GC_INHIBIT. 2017-12-03T16:53:35Z dougk quit (Ping timeout: 240 seconds) 2017-12-03T16:54:15Z dougk joined #sbcl 2017-12-03T17:08:40Z stassats: what does GC_INVOKED mean? 2017-12-03T17:09:44Z stassats: or all other GC_ states 2017-12-03T17:09:54Z stassats: i can guess what GC_NONE is 2017-12-03T17:14:37Z nyef`: Okay, GC_FLIGHT means "some thread wants to GC, and isn't in WITHOUT-GCING". 2017-12-03T17:14:50Z smurfrobot joined #sbcl 2017-12-03T17:15:22Z stassats: i'm trying hard to figure out how "flight" fits that behaviour 2017-12-03T17:15:25Z nyef`: When we enter GC_FLIGHT, the GSP trap is armed. 2017-12-03T17:17:16Z nyef`: Any thread that hits the GSP trap at this point that doesn't have GC_PENDING set will wait until we're in GC_MESSAGE. 2017-12-03T17:19:02Z nyef`: Err... Doesn't have GC_PENDING *OR* is in WITHOUT-GCING. 2017-12-03T17:19:23Z smurfrobot quit (Ping timeout: 255 seconds) 2017-12-03T17:19:35Z nyef`: (That is, a thread in without-gcing will also wait for GC_MESSAGE.) 2017-12-03T17:20:37Z nyef`: Any thread that hits the GSP trap at this point that has GC_PENDING set and is NOT in WITHOUT-GCING kicks off an advance to GC_QUIET, since it expects to try to run SUB-GC. 2017-12-03T17:20:50Z nyef`: Next stop is GC_MESSAGE. 2017-12-03T17:21:17Z nyef`: This arms most of the per-thread CSP traps. 2017-12-03T17:22:57Z nyef`: Any thread that is "in lisp" is marked as preventing advancement past GC_MESSAGE. Any thread that is "in alien" and is in WITHOUT-GCING is marked as preventing advancement past GC_INVOKED. Any thread that is "in alien" and is NOT in WITHOUT-GCING is left alone. 2017-12-03T17:23:14Z nyef`: And there are exceptions for the current thread and any thread that is in gc_stop_the_world(). 2017-12-03T17:23:48Z stassats: those names do not speak to me at all, flight, message or invoked, i can't map them to any action 2017-12-03T17:23:55Z stassats: might have as well been 0, 1 and 2 2017-12-03T17:26:05Z nyef`: "Flight" seems to me to be "we have liftoff!" "Message" is "everybody has been told that we're on our way". "Invoked" is... I'm not quite sure. Basically, it's the free-running phase where those threads in WITHOUT-GCING get to continue until they're done with WITHOUT-GCING. 2017-12-03T17:27:01Z nyef`: "Quiet" is when there is only one (or two?) threads still running. 2017-12-03T17:27:16Z stassats: not three? 2017-12-03T17:27:22Z nyef`: Maybe? 2017-12-03T17:27:29Z stassats: four, anyone? 2017-12-03T17:27:40Z nyef`: But basically everything is quieting down, and only one thread gets to STAY running. 2017-12-03T17:28:55Z stassats: ok, what else do you think needs changing in sb-safepoint? 2017-12-03T17:29:20Z stassats: is it just the unreliable lisp/c transition? 2017-12-03T17:29:57Z nyef`: Ideally, I'd have a formal model that shows that it's correct. 2017-12-03T17:30:20Z stassats: i'd settle for just working 2017-12-03T17:30:32Z nyef`: But for sb-safepoint itself I think it's just comments, documentation, and callbacks. Not sure about sb-safepoint-strictly, sb-thruption, or sb-wtimer yet. 2017-12-03T17:31:22Z nyef`: Oh! And *f-p-a-f-f*. That's also on my list. 2017-12-03T17:31:42Z nyef`: ... And the int3 trap thing. 2017-12-03T17:32:45Z stassats: what does WITH_GC_AT_SAFEPOINTS_ONLY mean? 2017-12-03T17:33:13Z nyef`: "Unscrew things with the transition from C to Lisp." 2017-12-03T17:33:41Z nyef`: Not pleased about that one. 2017-12-03T17:34:04Z stassats: does WITH_GC_AT_SAFEPOINTS_ONLY mean alloc() can't GC? 2017-12-03T17:34:31Z nyef`: How would alloc() GC in the first place? 2017-12-03T17:35:14Z nyef`: ... Where *is* alloc()? 2017-12-03T17:35:16Z stassats: sets gc-pending, interrupting PA? 2017-12-03T17:36:10Z nyef`: So, that's not actually GCing, is it? It's setting a trigger so that the GC will happen "soon". 2017-12-03T17:39:47Z stassats: outside of WITH_GC_AT_SAFEPOINTS_ONLY, GC can happen anywhere? 2017-12-03T17:40:15Z stassats: isn't the whole point of safepoints to perform garbage collection at safepoints? 2017-12-03T17:40:19Z nyef`: What WITH_GC_AT_SAFEPOINTS_ONLY does is clear the saved CSP, runs the next form (block?) and then restore the saved CSP. Transitioning the thread from "in alien" to "in lisp". 2017-12-03T17:40:54Z nyef`: The name is a horrid misrepresentation of what's actually going on. 2017-12-03T17:40:56Z stassats: that's what push_gcing_safety means? 2017-12-03T17:41:00Z nyef`: Yes. 2017-12-03T17:41:07Z stassats: another great name 2017-12-03T17:41:25Z nyef`: And I will cheerfully kill it once I'm sure that it's safe to kill. 2017-12-03T17:44:46Z stassats: so, what happens when i have C->lisp->C->lisp->C? 2017-12-03T17:45:00Z stassats: is it able to collect both lisp portions of the stack? 2017-12-03T17:45:23Z stassats: it only saves CSP 2017-12-03T17:45:45Z stassats: or it doesn't care? 2017-12-03T17:46:10Z stassats: it just scans the whole stack upto the latest lisp CSP? 2017-12-03T17:46:19Z nyef`: It just scans to the latest CSP. 2017-12-03T17:46:54Z nyef`: The problem isn't with C->lisp->C->lisp->C, it's when this is done without using WITH_GC_AT_SAFEPOINTS_ONLY and the call chain starts unwinding. 2017-12-03T17:47:04Z stassats: ok, i think i get what WITH_GC_AT_SAFEPOINTS_ONLY does 2017-12-03T17:47:31Z nyef`: Mmm. It does something that should probably be handled by call_into_lisp in the first place. /-: 2017-12-03T17:47:59Z scymtym quit (Ping timeout: 255 seconds) 2017-12-03T17:51:31Z stassats: why is preserve_pointer(th->pc_around_foreign_call) needed? 2017-12-03T17:52:25Z nyef`: I don't know. 2017-12-03T17:53:01Z nyef`: It could be something as simple as the high water mark being set slightly too low to cover the return address. 2017-12-03T17:53:03Z stassats: we save RSP, the lisp PC will be there 2017-12-03T17:54:21Z stassats: RSP-8 2017-12-03T17:54:41Z stassats: XOR [RAX+RAX], EAX, what, did disassemble have a stroke? 2017-12-03T17:55:40Z stassats: yeah, disassemble-code-component is indisposed 2017-12-03T17:55:42Z flip214: what are the bytes? 2017-12-03T17:56:07Z nyef`: Guests arrive, I have to go be social for a bit. 2017-12-03T17:56:50Z flip214: 31 04 00 xor [rax*2], eax 2017-12-03T17:58:15Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-03T17:58:40Z DeadTrickster joined #sbcl 2017-12-03T18:04:33Z scymtym joined #sbcl 2017-12-03T18:17:35Z awolven joined #sbcl 2017-12-03T18:19:26Z awolven: anybody home? 2017-12-03T18:20:00Z stylewarning: nyef` having the option to manually (with a restart) or automatically resize the heap to a larger size 2017-12-03T18:22:05Z nyef`: stylewarning: So the dynamic-space-size becomes more of a polite suggestion than a hard limit? 2017-12-03T18:22:25Z stassats: just set it to 3000TB 2017-12-03T18:22:49Z nyef`: Mmm. It's not like it takes up actual memory on non-windows. 2017-12-03T18:22:56Z awolven: I'm trying to narrow in on a cocoa/sbcl bug which exists in 1.4.1 with no workaround, slightly different in 1.2.11 with a workaround but I'm having trouble using tags and bisecting the git log 2017-12-03T18:23:21Z stassats: cocoa/sbcl? 2017-12-03T18:23:30Z awolven: yes 2017-12-03T18:24:01Z awolven: I created a small test case framework 2017-12-03T18:24:09Z stylewarning: stassats: you’ve made that suggestion before. Do you think it’s better than something like DSS being dynamic 2017-12-03T18:24:18Z stassats: stylewarning: yes 2017-12-03T18:24:26Z nyef`: awolven: Is that some odd branch of SBCL, or do you mean that you're using stock SBCL and calling into (and back out of) ObjC libraries on OSX? 2017-12-03T18:24:34Z nyef`: (Or something else entirely?) 2017-12-03T18:25:02Z awolven: I'm using a stock sbcl with 1.2.11 and a checkout of 1.4.1 2017-12-03T18:25:22Z awolven: other people have seen the bug on 1.2.11 2017-12-03T18:25:31Z stylewarning: stassats: when does a GC occur in that case? 2017-12-03T18:25:57Z stylewarning: I thought the main point of bounding DSS was that it gives you an indicator when to run GC 2017-12-03T18:26:31Z awolven: I am basically searching for a checkout which which works, has threads, and exhibits the 1.2.11 behavior 2017-12-03T18:26:40Z stylewarning: (And that it allows you to partition the space into regions) 2017-12-03T18:26:53Z nyef`: awolven: And is there an actual description of this bug somewhere, or is it just "a bug"? 2017-12-03T18:27:18Z stassats: awolven: if you're asking a question then i'm not sure what it is 2017-12-03T18:27:19Z nyef`: (And is it in the tracker yet?) 2017-12-03T18:27:42Z awolven: when sbcl calls into cocoa to open a window it gets a floating-point-invalid-error at a low level in the Cocoa code 2017-12-03T18:27:50Z awolven: (1.4.1) 2017-12-03T18:28:10Z nyef`: stylewarning: IIUC, GC trigger is proportional to allocated heap size or something like that, not to maxiumum heap size. 2017-12-03T18:28:19Z awolven: 1.2.11 gets a floating point inexact error in the same place 2017-12-03T18:28:57Z stassats: awolven: use sb-int:with-float-traps-masked 2017-12-03T18:29:01Z stassats: there's no bug 2017-12-03T18:29:08Z awolven: I'm happy to bisect the git history but I had trouble building a 1.2.11 2017-12-03T18:29:32Z awolven: that macro works for 1.2.11 but not with 1.4.1 2017-12-03T18:29:41Z stylewarning: (awolven: I myself have been spending about 2 weeks trying to debug impossible-to-debug floating point exceptions that appear to be intermittent and spurious; I can’t get them repeatably) 2017-12-03T18:30:01Z stassats: awolven: you're not using the right masks then 2017-12-03T18:30:30Z awolven: 1.2.11 opens the window, 1.4.1 doesn't 2017-12-03T18:30:39Z nyef`: I'm completely blanking on this: Is there an easy way to determine if a string contains another as a substring? I'll take something either SBCL-specific or test-suite-specific if necessary. 2017-12-03T18:30:56Z stassats: clhs search 2017-12-03T18:30:56Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_search.htm 2017-12-03T18:30:56Z Bike: search? 2017-12-03T18:31:48Z nyef`: Right, thank you. 2017-12-03T18:31:59Z awolven: I would like to find the commit(s) that change this behavior 2017-12-03T18:32:07Z stassats: awolven: there's no change 2017-12-03T18:32:14Z awolven: I get the same results using SDL & SDL2 2017-12-03T18:32:20Z stassats: and there's no behavior 2017-12-03T18:32:26Z stylewarning: I’ve always meant to improve the lambda list arguments for SEARCH & co in SBCL. I never remember which is the needle/haystack, which is the src/dst 2017-12-03T18:32:27Z stassats: just use with-float-traps-masked 2017-12-03T18:32:56Z stassats: stylewarning: same as find or member or position 2017-12-03T18:33:06Z awolven: I have used that with the right masks and I get different behavior between the stock/no-threads 1.2.11 and threaded 1.4.1 2017-12-03T18:33:11Z dougk quit (Ping timeout: 255 seconds) 2017-12-03T18:33:55Z stylewarning: will the float traps get correctly set in each new thread? 2017-12-03T18:34:07Z awolven: I tried to build tags/sbcl-1.2.11 with threads but the result was broken 2017-12-03T18:34:33Z awolven: I have to use the main thread with cocoa, I don't know why yet 2017-12-03T18:34:33Z stassats: stylewarning: they will be inherited 2017-12-03T18:34:44Z stylewarning: awolven: 1.2.11 is so ancient that it may not be worth exploring. 2017-12-03T18:35:47Z nyef`: awolven: Cocoa is known to be persnickity about which thread it runs on. 2017-12-03T18:36:29Z Shinmera: It's not cocoa, it's an OS X thing in general 2017-12-03T18:36:36Z Shinmera: GUI has to run on thread 0 2017-12-03T18:36:40Z nyef`: Right, right. 2017-12-03T18:37:04Z nyef`: The last great OS version that Apple ever produced was System 7.1. 2017-12-03T18:37:09Z Shinmera: I honestly don't know why that limitation exists, but it's a huge pita. 2017-12-03T18:37:20Z nyef`: The previous great OS version was System 6.0.7 with MultiFinder. 2017-12-03T18:37:53Z stassats: great because it's so far in the past you forgot about its problems? 2017-12-03T18:38:03Z nyef`: Exactly! 2017-12-03T18:38:20Z nyef`: Sortof like how Microsoft only produced ONE great version of windows: Windows XP. 2017-12-03T18:38:25Z rgrau joined #sbcl 2017-12-03T18:38:37Z awolven: I had good results with windows 7 2017-12-03T18:38:49Z Shinmera: 7 is solid too. 2017-12-03T18:38:55Z nyef`: Shh! 2017-12-03T18:40:17Z awolven: I remember having to load only 2 dlls then I could open OpenGL windows and render, mac has been difficult 2017-12-03T18:40:43Z nyef`: Okay, there's still the weirdness with STRESS-GC in gc.impure.lisp, something with parallel fasl loads in load.impure.lisp, something with PPC in threads.impure.lisp, but other than that the test suite should be good with respect to safepoints. 2017-12-03T18:41:41Z awolven: can anybody tell me notable points in the git history for me to try some builds, such as when threads started working on darwin? 2017-12-03T18:42:16Z stassats: 10 years ago 2017-12-03T18:42:36Z awolven: is it clang? 2017-12-03T18:43:05Z awolven: (causing my threaded 1.2.11 to not work) 2017-12-03T18:43:08Z stassats: i don't understand your problem, if your float traps go off, use with-float-traps-masked, if you have problems with threads, run the GUI from the main thread 2017-12-03T18:43:12Z stassats: there's nothing to bisect 2017-12-03T18:44:35Z awolven: float traps cause different behavior between 1.2.11 (stock not-threaded) and 1.4.1 it's make or break for my continued development 2017-12-03T18:45:53Z stassats: so use with-float-traps-masked correctly 2017-12-03T18:46:19Z awolven: can I post a line of code? 2017-12-03T18:47:16Z awolven: (sb-int:with-float-traps-masked (:invalid :inexact :overflow) (init_cocoalib2)) 2017-12-03T18:47:50Z awolven: this works and opens the window in the stock 1.2.11 but causes another memory corrupting bug in 1.4.1 2017-12-03T18:48:15Z stassats: memory corruption? you didn't say anything about memory corruptions 2017-12-03T18:48:40Z dougk joined #sbcl 2017-12-03T18:50:01Z awolven: I'm not asking for you to find out what is different, I just need some tips on bisecting 2017-12-03T18:51:23Z stassats: and (sb-int:with-float-traps-masked (:invalid :inexact :overflow) (init_cocoalib2)) is done from the initial thread? 2017-12-03T18:51:24Z awolven: my attempt at building 1.2.11 --with-sb-threads fails at runtime with no sb-posix 2017-12-03T18:51:31Z awolven: yes 2017-12-03T18:52:07Z stassats: 1.2.11 is 2.5 years old, don't ask help building it 2017-12-03T18:52:43Z awolven: ok, what are some internally known stable versions of sbcl on darwin? 2017-12-03T18:52:51Z stassats: 1.4.2 2017-12-03T18:53:08Z awolven: that came out today? 2017-12-03T18:53:13Z stassats: no 2017-12-03T18:53:50Z awolven: maybe I'm cloning from an old repo 2017-12-03T18:54:42Z nyef`: My last build was 1.4.2.52... and local changes. 2017-12-03T18:55:03Z awolven: I should be able to: git checkout tags/sbcl-x.y.z sbcl-x.y.z (and the build) right? 2017-12-03T18:55:26Z nyef`: ... Why would you need "tags/"? 2017-12-03T18:55:44Z stassats: if you can't wrestle git just grab the tarball 2017-12-03T18:55:57Z awolven: it's kind of like saying branches, but sbcl doesn't really do branches like that 2017-12-03T18:56:29Z nyef`: "git checkout sbcl-1.4.1" WFM. 2017-12-03T18:56:34Z bkst quit (Ping timeout: 260 seconds) 2017-12-03T18:56:53Z awolven: ok 2017-12-03T18:57:06Z shka joined #sbcl 2017-12-03T18:57:12Z stassats: wget "http://prdownloads.sourceforge.net/sbcl/sbcl-1.4.2-source.tar.bz2" 2017-12-03T18:58:32Z stassats: and why are you building 1.2.11 with threads instead of building 1.4.2 without threads? 2017-12-03T18:58:38Z awolven: thanks, I'll let you know what I find 2017-12-03T18:59:21Z awolven: because the 1.2.11 without threads works, but I want to move from my trivial example to sdl2 which requires threads 2017-12-03T19:00:01Z stassats: and 1.4.2 without threads doesn't work? 2017-12-03T19:00:08Z awolven: i'll try it 2017-12-03T19:00:34Z awolven: for some reason my git clone only got me 1.4.1, didn't know about 1.4.2 2017-12-03T19:07:39Z nyef`: Where did you clone from? 2017-12-03T19:12:27Z awolven: git clone https://git.code.sf.net/p/sbcl/sbcl sbcl-sbcl 2017-12-03T19:16:57Z awolven: Once I found the difference, I could have tried 1.2.11 with threads, 1.4.1 without threads, or tried to build with gcc 2017-12-03T19:17:11Z awolven: those are the difference 2017-12-03T19:17:15Z awolven: s 2017-12-03T19:17:24Z stassats: gcc would make no difference 2017-12-03T19:17:34Z awolven: good to know 2017-12-03T19:18:09Z awolven: does the bootstrap lisp mach a big difference 2017-12-03T19:18:09Z stassats: and it's 1.4.2, not 1.4.1 2017-12-03T19:18:24Z stassats: awolven: no difference either 2017-12-03T19:18:35Z awolven: like I said I thought 1.4.1 was newest at the time of download 2017-12-03T19:19:36Z awolven: also heap size was different 2017-12-03T19:32:09Z ikki quit (Ping timeout: 250 seconds) 2017-12-03T19:33:32Z stylewarning: awolven are you using SLIME 2017-12-03T19:33:40Z awolven: yes 2017-12-03T19:33:52Z stassats: slime uses threads... 2017-12-03T19:34:14Z awolven: I used a *shell* window for this test 2017-12-03T19:51:44Z ikki joined #sbcl 2017-12-03T20:00:44Z nyef`: "EQUALP got incomplete instance layout"? 2017-12-03T20:02:58Z nyef`: Well, doesn't seem to have caused a test failure, mustn't've been important. 2017-12-03T20:05:46Z nyef`: (Non-threaded PPC, from one of the test.sh scripts, if anyone is wondering.) 2017-12-03T20:09:24Z stassats: narrowed down to sb-disassem::code-offs-to-segment-offs 2017-12-03T20:13:51Z stassats: out of place parenthesis, nice 2017-12-03T20:15:05Z smurfrobot joined #sbcl 2017-12-03T20:17:33Z stassats: two hours i'll never get back 2017-12-03T20:19:38Z smurfrobot quit (Ping timeout: 255 seconds) 2017-12-03T20:32:12Z nyef`: So, trying to track down a :FAILS-ON :PPC that didn't just now, and I run into a commit with the following in the commit message: "Besides, it's one less thing to change when we implement threads for MIPS, HPPA, or Alpha. Stop laughing." 2017-12-03T20:46:01Z nyef`: Hrm. And there's nothing that I can point to as an obvious fix. Lovely. I'll probably be bisecting all week to find it. /-: 2017-12-03T21:00:20Z shka quit (Ping timeout: 255 seconds) 2017-12-03T21:17:32Z dougk quit (Ping timeout: 268 seconds) 2017-12-03T21:45:50Z nyef`: PPC threads+safepoint doesn't build, simple oversight in the runtime. 2017-12-03T22:15:00Z smurfrobot joined #sbcl 2017-12-03T22:22:09Z dougk joined #sbcl 2017-12-03T22:32:37Z smurfrobot quit (Remote host closed the connection) 2017-12-03T22:40:00Z smurfrobot joined #sbcl 2017-12-03T22:44:05Z smurfrobot quit (Remote host closed the connection) 2017-12-03T22:45:45Z smurfrobot joined #sbcl 2017-12-03T22:55:41Z smurfrobot quit (Remote host closed the connection) 2017-12-03T22:55:59Z smurfrobot joined #sbcl 2017-12-03T23:04:22Z smurfrobot quit (Remote host closed the connection) 2017-12-03T23:07:30Z nyef`: Hrm. NIL is at 0x411000b, the GSP trap is lwz r0,-4107(r18), we catch a memory fault at 0x410f000, but the safepoint page address is 0x4100000 ? 2017-12-03T23:19:45Z nyef` sighs. 2017-12-03T23:19:54Z nyef`: Of *course* this would be set up to work on non-linux. 2017-12-03T23:36:34Z awolven quit (Remote host closed the connection) 2017-12-03T23:37:07Z awolven joined #sbcl 2017-12-03T23:38:34Z awolven quit (Remote host closed the connection) 2017-12-03T23:38:50Z awolven joined #sbcl 2017-12-03T23:59:54Z awolven quit (Remote host closed the connection) 2017-12-04T00:00:30Z awolven joined #sbcl 2017-12-04T00:04:50Z awolven quit (Ping timeout: 255 seconds) 2017-12-04T00:13:08Z awolven joined #sbcl 2017-12-04T00:13:52Z nyef`: Wait... why's it hitting the GSP in the first place? 2017-12-04T00:15:05Z nyef`: ... Because it's only mapping one page, not the full bloody memory region? WTF? 2017-12-04T00:30:37Z stassats: isn't GSP just one page? 2017-12-04T00:30:52Z nyef`: Allocation graularity is backend-page-bytes. 2017-12-04T00:31:17Z stassats: that's 64K on ppc, innit? 2017-12-04T00:31:19Z nyef`: And that's 64k on PPC/Linux for some reason, but LWZ has a sixteen-bit SIGNED offset. 2017-12-04T00:31:43Z nyef`: And the *actual* allocation size requested is FOUR BYTES. Even on a 64-bit system. 2017-12-04T00:32:34Z nyef`: ... Also, why is the page *writable*? 2017-12-04T00:32:50Z nyef` kills the write permission. 2017-12-04T00:33:26Z awolven quit (Remote host closed the connection) 2017-12-04T00:33:46Z stassats: there were some comments about RISCy offsets around setup-gencgc 2017-12-04T00:34:00Z awolven joined #sbcl 2017-12-04T00:34:28Z stassats: but they didn't make much sense, considering it has to be backend-page-bytes at least, and for the adjacent pages to be aligned as well 2017-12-04T00:34:44Z nyef`: Mmm. 2017-12-04T00:35:33Z nyef`: I just threw an extra offset parameter in, defined it to be backend-page-bytes on x86oids, 4096 on PPC, referenced it in ppc/macros, generated a "trap address" to go with the page address on the C side, and figured that'd work. 2017-12-04T00:35:55Z stassats: 4096 on PPC? 2017-12-04T00:36:13Z nyef`: Yeah. Probably because it's the minimum page size allowed or something like that. 2017-12-04T00:36:24Z nyef`: Whatever it is, it has to be less than 32k. 2017-12-04T00:36:49Z nyef`: By about... 27 bytes. 2017-12-04T00:36:57Z stassats: getconf PAGE_SIZE => 65536 2017-12-04T00:38:35Z awolven quit (Ping timeout: 255 seconds) 2017-12-04T00:38:47Z nyef`: Next there'll probably be something wrong with the CSP trap allocation. 2017-12-04T00:38:57Z stassats: ok, it's an offset from NIL 2017-12-04T00:39:27Z stassats: NIL should follow the GSP page 2017-12-04T00:39:37Z karswell joined #sbcl 2017-12-04T00:39:39Z stassats: so why 4096 or any offset? 2017-12-04T00:40:02Z awolven joined #sbcl 2017-12-04T00:42:09Z nyef`: It has to be an address in the GSP page. "Because reasons", it has to be easily found either as an absolute memory reference or with an offset from something in the register set. 2017-12-04T00:42:54Z stassats: just use NIL-lowtag-1? 2017-12-04T00:43:09Z stassats: provided that GSP is not four bytes but backend-page-bytes 2017-12-04T00:43:34Z nyef`: Yeah, the offset is fairly arbitrary. 2017-12-04T00:43:57Z nyef`: At a certain level, I don't care what it ends up being, I just want it to work. d-: 2017-12-04T00:44:39Z stassats: oh man 2017-12-04T00:44:53Z stassats: you know what (- (+ 4096 4 other-pointer-lowtag)) is? 2017-12-04T00:45:04Z stassats: (- other-pointer-lowtag 4) is list-pointer-lowtag 2017-12-04T00:45:10Z stassats: was it written by random chance? 2017-12-04T00:46:48Z nyef`: I hesitate to guess. 2017-12-04T00:47:34Z nyef`: Actually, I think it might have been a matter of "NIL is a symbol, symbols are other-pointer-lowtag, and we need *THIS* as the result, so what's our displacement?" 2017-12-04T00:47:51Z stassats: ok, 4 is actually n-word-bytes 2017-12-04T00:47:57Z nyef`: Yes. 2017-12-04T00:48:37Z nyef`: I'd honestly rather have an expression for "start of static space to NIL", but I don't think that it's available that early. 2017-12-04T00:50:39Z stassats: (- nil-value static-space-start)? should be available 2017-12-04T00:55:52Z nyef`: Need to make it work before I try to clean it up. 2017-12-04T00:56:20Z stassats: and why is it 4 in os_validate(NOT_MOVABLE, GC_SAFEPOINT_PAGE_ADDR, 4), and not 8? 2017-12-04T00:56:37Z nyef`: Hell, why isn't it N_WORD_BYTES or whatever? 2017-12-04T00:56:57Z nyef`: And in my PPC working tree, I have it as BACKEND_PAGE_BYTES, because it has to be. 2017-12-04T00:57:04Z stassats: right 2017-12-04T00:57:09Z nyef`: (Also killed the | OS_VM_PROT_WRITE bit.) 2017-12-04T00:58:13Z stassats: did you adjust handle_safepoint_violation? 2017-12-04T00:58:27Z stassats: (fault_address == (os_vm_address_t) GC_SAFEPOINT_PAGE_ADDR) 2017-12-04T00:58:35Z nyef`: Yeah, pointed it at the trap address, not the page address. 2017-12-04T00:59:43Z nyef`: The general theme that I find is that someone comes up with an idea, they get it mostly working, it gets merged, and then others have to maintain it. And quite a while later someone stumbles across the damage and, instead of picking themselves up and continuing on their way, they take the time to figure out WTF is going on, and make it right. 2017-12-04T01:00:01Z stassats: and thread.h 2017-12-04T01:00:10Z stassats: # define THREAD_CSP_PAGE_SIZE 4096 for PPC 2017-12-04T01:00:39Z nyef`: That's fine as far as I'm concerned. 2017-12-04T01:00:44Z nyef`: At least until it breaks. 2017-12-04T01:00:54Z stassats: you can't unmap 2017-12-04T01:00:59Z nyef`: ? 2017-12-04T01:01:38Z stassats: or is it not using mmu for csp? 2017-12-04T01:02:04Z nyef`: The actual page granularity provided on my machine is 4096? 2017-12-04T01:02:17Z stassats: uhm, it's 65536 on mine 2017-12-04T01:02:38Z nyef`: I'll let you know when I'm done, so that you can fix that bit then. d-: 2017-12-04T01:03:55Z nyef`: Hrm. 2017-12-04T01:04:05Z stassats: well, when you combine two things i don't really care about -- ppc and safepoints -- my degree of not caring grows quadratically 2017-12-04T01:04:19Z nyef`: sb-sprof is broken on ppc safepoints. 2017-12-04T01:04:55Z smurfrobot joined #sbcl 2017-12-04T01:05:14Z nyef`: Whatever. Time to run the test suite, see if it finds anything. 2017-12-04T01:05:53Z stassats: but i can test on a 65536-paged ppc 2017-12-04T01:07:04Z nyef`: Ugh. *MORE* buried treasure. 2017-12-04T01:08:29Z stassats: decided to grep for 4096 2017-12-04T01:08:37Z stassats: "/* the check against 4096 is still a mystery to everyone interviewed about" 2017-12-04T01:08:46Z nyef`: Heh. 2017-12-04T01:09:26Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-04T01:11:36Z stassats: i guess it's just a sanity check 2017-12-04T01:11:45Z stassats: no real mystery there 2017-12-04T01:12:03Z stassats: "yep, that's definitely not a return address" 2017-12-04T01:13:19Z nyef`: BTW, what's (ODDP BIGNUM NO-CONSING) about? 2017-12-04T01:17:21Z stassats quit (Ping timeout: 248 seconds) 2017-12-04T01:24:32Z rgrau quit (Remote host closed the connection) 2017-12-04T01:26:54Z awolven quit (Remote host closed the connection) 2017-12-04T01:27:30Z awolven joined #sbcl 2017-12-04T01:31:41Z awolven quit (Ping timeout: 255 seconds) 2017-12-04T01:41:35Z awolven joined #sbcl 2017-12-04T01:51:54Z awolven quit (Remote host closed the connection) 2017-12-04T01:52:30Z awolven joined #sbcl 2017-12-04T01:56:53Z awolven quit (Ping timeout: 255 seconds) 2017-12-04T02:28:22Z awolven joined #sbcl 2017-12-04T02:57:31Z awolven quit (Remote host closed the connection) 2017-12-04T02:58:05Z awolven joined #sbcl 2017-12-04T03:02:35Z awolven quit (Ping timeout: 255 seconds) 2017-12-04T03:08:20Z bkst joined #sbcl 2017-12-04T03:25:59Z bkst quit (Ping timeout: 255 seconds) 2017-12-04T03:40:49Z ikki quit (Ping timeout: 248 seconds) 2017-12-04T03:59:45Z ikki joined #sbcl 2017-12-04T04:24:46Z shka joined #sbcl 2017-12-04T04:38:55Z ikki quit (Ping timeout: 248 seconds) 2017-12-04T04:51:57Z smurfrobot joined #sbcl 2017-12-04T04:56:51Z smurfrobot quit (Remote host closed the connection) 2017-12-04T04:57:25Z smurfrobot joined #sbcl 2017-12-04T05:00:18Z smurfrobot quit (Remote host closed the connection) 2017-12-04T05:14:43Z ym joined #sbcl 2017-12-04T05:18:40Z Bike quit (Quit: Lost terminal) 2017-12-04T05:47:58Z nicdev` joined #sbcl 2017-12-04T05:48:59Z nicdev quit (Ping timeout: 276 seconds) 2017-12-04T05:58:53Z awolven joined #sbcl 2017-12-04T05:58:54Z galdor quit (Read error: Connection reset by peer) 2017-12-04T05:59:13Z galdor joined #sbcl 2017-12-04T06:03:56Z awolven quit (Ping timeout: 276 seconds) 2017-12-04T06:18:55Z smurfrobot joined #sbcl 2017-12-04T06:23:44Z smurfrobot quit (Ping timeout: 255 seconds) 2017-12-04T06:50:45Z oleo quit (Quit: Leaving) 2017-12-04T07:18:27Z pfdietz quit (Ping timeout: 240 seconds) 2017-12-04T07:19:59Z pfdietz joined #sbcl 2017-12-04T07:26:57Z Kevslinger quit (Quit: Connection closed for inactivity) 2017-12-04T07:30:07Z scymtym quit (Ping timeout: 248 seconds) 2017-12-04T07:32:47Z bkst joined #sbcl 2017-12-04T07:43:33Z BitPuffin|osx joined #sbcl 2017-12-04T07:43:35Z karswell_ joined #sbcl 2017-12-04T07:46:09Z karswell quit (Ping timeout: 248 seconds) 2017-12-04T07:46:41Z jibanes quit (Ping timeout: 248 seconds) 2017-12-04T07:57:05Z awolven joined #sbcl 2017-12-04T08:01:23Z awolven quit (Ping timeout: 255 seconds) 2017-12-04T08:18:46Z shka quit (Ping timeout: 260 seconds) 2017-12-04T08:20:31Z dougk quit (Ping timeout: 260 seconds) 2017-12-04T08:24:44Z mrSpec joined #sbcl 2017-12-04T08:34:58Z scymtym joined #sbcl 2017-12-04T09:21:19Z smurfrobot joined #sbcl 2017-12-04T09:25:27Z stassats joined #sbcl 2017-12-04T09:34:09Z smurfrobot quit (Remote host closed the connection) 2017-12-04T09:35:09Z DeadTrickster_ joined #sbcl 2017-12-04T09:38:05Z DeadTrickster quit (Ping timeout: 240 seconds) 2017-12-04T09:41:01Z stassats: "0 bytes available, 16 requested", while Total bytes allocated = 26552720 Dynamic-space-size bytes = 1073741824 2017-12-04T09:41:02Z stassats: huh 2017-12-04T09:44:46Z stassats: that's from (loop (gc)) 2017-12-04T10:24:45Z smurfrobot joined #sbcl 2017-12-04T10:29:26Z smurfrobot quit (Ping timeout: 255 seconds) 2017-12-04T10:44:52Z scymtym: safepoint builds are back to normal: https://ci.cor-lab.org/job/sbcl-master/2700/ 2017-12-04T11:01:12Z awolven joined #sbcl 2017-12-04T11:06:11Z awolven quit (Ping timeout: 276 seconds) 2017-12-04T11:08:34Z stassats: were they ever normal? 2017-12-04T11:16:59Z m00natic joined #sbcl 2017-12-04T11:23:24Z stassats: doing multiple run-programs fails on safepoint, ironically 2017-12-04T11:23:42Z stassats: it interrupts fork() and tries to create a new thread, happily deadlocking 2017-12-04T11:23:51Z stassats: i guess that's with sb-safepoint-strictly 2017-12-04T11:32:56Z stassats: yep, sb-safepoint-strictly are broken that way 2017-12-04T11:36:56Z bkst quit (Ping timeout: 255 seconds) 2017-12-04T12:01:51Z karswell_ quit (Quit: ERC (IRC client for Emacs 25.3.1)) 2017-12-04T12:02:16Z karswell joined #sbcl 2017-12-04T12:08:52Z scymtym: hm, (:DEADLINE SB-SYS:DEFER-DEADLINE 2) started hanging a lot 2017-12-04T12:08:59Z scymtym: maybe something i did 2017-12-04T12:11:27Z bkst joined #sbcl 2017-12-04T12:18:10Z karswell quit (Ping timeout: 260 seconds) 2017-12-04T12:28:14Z karswell joined #sbcl 2017-12-04T12:37:54Z dougk joined #sbcl 2017-12-04T12:42:11Z dougk quit (Ping timeout: 255 seconds) 2017-12-04T13:01:30Z Xach joined #sbcl 2017-12-04T13:02:06Z Xach: Hi sbcl pals! I'm getting a new error with some old code. http://report.quicklisp.org/2017-12-04/failure-report/array-operations.html#array-operations 2017-12-04T13:02:20Z Xach: Does that look like bad code newly detected, or something else? 2017-12-04T13:02:54Z stassats: Xach: already fixed 2017-12-04T13:03:17Z stassats: it was bad code in sbcl newly detected 2017-12-04T13:03:55Z awolven joined #sbcl 2017-12-04T13:04:04Z stassats: Xach: while you're here, ql-dist:dependency-tree is not always correct 2017-12-04T13:04:13Z Xach: stassats: thanks. will the fixed sbcl be released at the end of december? 2017-12-04T13:04:24Z Xach: stassats: ok 2017-12-04T13:04:25Z stassats: how can i reliably detect dependencies? i don't want to load systems with cffi 2017-12-04T13:04:55Z stassats: (to avoid things like array-operations failing again) 2017-12-04T13:05:28Z Xach: stassats: I am not sure. cffi is often a defsystem dependency and I think those are not always reliably detected by my code. 2017-12-04T13:05:37Z stassats: Xach: if the past years are an indicator, it usually gets release in early january 2017-12-04T13:05:53Z stassats: Xach: even without depends-on 2017-12-04T13:06:22Z Xach: it is sometimes loaded in an eval-when in the system definition file too. 2017-12-04T13:06:24Z stassats: i think it was zmq, or cl-zmq 2017-12-04T13:06:39Z stassats: Xach: ok, is there a better way to punt on cffi? 2017-12-04T13:06:57Z Xach: stassats: punt in what sense? 2017-12-04T13:07:09Z Xach: like, signal an error when it shows up in the requirements? 2017-12-04T13:07:13Z stassats: stop loading the system invoked with ql:quickload 2017-12-04T13:07:32Z Xach: stassats: one option is to make a dummy cffi.asd and put it somewhere visible to asdf, maybe. 2017-12-04T13:07:55Z stassats: otherwise cffi will a lot of false errors due to missing C dependencies 2017-12-04T13:08:15Z stassats: Xach: ok, sounds doable 2017-12-04T13:08:17Z awolven quit (Ping timeout: 255 seconds) 2017-12-04T13:08:30Z stassats: and (throw 'cffi-incoming) 2017-12-04T13:08:52Z Xach: I have a script that can run on debian to install all C dependencies, but I understand that is of limited use. 2017-12-04T13:09:21Z stassats: even loading all systems without cffi be a good test 2017-12-04T13:10:18Z stassats: maybe if i can run it in one of these newfangled containers, i can install dependencies 2017-12-04T13:10:24Z stassats: Xach: where can i find that script? 2017-12-04T13:11:10Z stassats: and does it get update for new systems? 2017-12-04T13:12:45Z pfdietz: If "Docker" makes you think of pants, you are old. 2017-12-04T13:14:11Z stassats: (and i can't type today) 2017-12-04T13:17:43Z fortitude quit (Ping timeout: 250 seconds) 2017-12-04T13:18:28Z stassats: trying to eliminate thread-pc-around-foreign-call-slot, and thinking, no, the order will be unsafe, but looking at call-out and it uses the same order 2017-12-04T13:19:10Z stassats: there's a window between RSP and RIP saving where it's not safe 2017-12-04T13:20:06Z stassats: but first i need to exploit it 2017-12-04T13:27:30Z awolven joined #sbcl 2017-12-04T13:29:49Z nyef`: G'morning all. 2017-12-04T13:32:30Z jdz: stassats: if you're on a system with systemd there's systemd-nspawn. 2017-12-04T13:33:17Z stassats: jdz: i'm not, and no idea what that would achieve and regarding what 2017-12-04T13:33:45Z jdz: It's an alternative to docker. 2017-12-04T13:35:42Z jdz: You already said it's not relevant to you, but there are examples at the end of https://www.freedesktop.org/software/systemd/man/systemd-nspawn.html, 2017-12-04T13:36:12Z jdz: My point was that if one already is on a system with systemd there's no need to install anything to start using containers. 2017-12-04T13:36:32Z stassats: another reason not to use systemd 2017-12-04T13:40:31Z stassats: nyef`: did you know that (loop (gc)) will exhaust heap? 2017-12-04T13:40:46Z nyef`: No. Fun and games, huh? 2017-12-04T13:41:06Z stassats: sub-gc has without-gcing 2017-12-04T13:42:12Z nyef`: ... so? 2017-12-04T13:42:30Z otwieracz joined #sbcl 2017-12-04T13:42:33Z otwieracz: Hi! 2017-12-04T13:44:13Z Jesin quit (Quit: Leaving) 2017-12-04T13:44:46Z otwieracz: I've had some problems with it seemed like `with-timeout` not being effective in some cases. By friend's advice I wanted to try if `sb-sys:with-deadline` will be maybe able to caputre those cases where `bt:with-timeout` is missing. Now I ended up with huge problem. Following test case, only in SLIME, causes everything to explode with too deep error nesting: (handler-case (bt:with-timeout (0.5) 2017-12-04T13:44:52Z otwieracz: (sb-sys:with-deadline (:seconds 0.5) (sleep 1)))) 2017-12-04T13:47:12Z stassats: nyef`: so it never collects 2017-12-04T13:47:22Z stassats: sub-gc also conses 2017-12-04T13:47:52Z otwieracz: Even this `(handler-case (bt:with-timeout (0.5) (sb-sys:with-deadline (:seconds 0.5) (error "foo"))))` fails with fireworks. 2017-12-04T13:48:31Z stassats: i have no idea why we have with-timeout and with-deadline 2017-12-04T13:48:36Z otwieracz: https://gist.github.com/7afef86f2bfb4fff779e863a94e38c69 ← output 2017-12-04T13:49:24Z Bike joined #sbcl 2017-12-04T13:50:07Z stassats: otwieracz: what's the purpose of that handler-case? 2017-12-04T13:50:37Z nyef`: With-timeout was the old way, from before it was realized that asynchronous interrupts are basically never safe. With-deadline only affects I/O operations, and is believed to be safe? 2017-12-04T13:51:15Z stassats: the key word being "believed"? 2017-12-04T13:51:18Z otwieracz: stassats: you're right: CL-USER> (bt:with-timeout (0.5) (sb-sys:with-deadline (:seconds 0.5) (error "foo"))) fail exactly the same. 2017-12-04T13:51:28Z cromachina_ quit (Read error: Connection reset by peer) 2017-12-04T13:51:28Z stassats: well, (handler-case ...) is basically a no op 2017-12-04T13:52:09Z stassats: you are causing a deadline to expires while you're in the debugger 2017-12-04T13:52:12Z stassats: nothing good can come out of that 2017-12-04T13:52:35Z otwieracz: I mean, it feels bad to use both `with-timeout` and `with-deadlock` 2017-12-04T13:52:46Z stassats: "A deadline was reached after 10559867000 seconds." 2017-12-04T13:52:48Z stassats: what a nice number 2017-12-04T13:52:53Z Kevslinger joined #sbcl 2017-12-04T13:53:39Z myrkraverk: That is 2304-08-18 16:23:20 in unix time. 2017-12-04T13:53:59Z stassats: i'm in a flying car right now, thank you 2017-12-04T13:55:58Z stassats: nyef`: look at sb-gc, (setf *gc-epoch* (cons 0 0)) setf *gc-pending* nil 2017-12-04T13:57:11Z stassats: but Total bytes allocated = 29300752 Dynamic-space-size bytes = 104857600 2017-12-04T13:57:16Z stassats: at the time of its demise 2017-12-04T13:58:30Z stassats: and the old cons doesn't get picked up by collect-garbage, since it's still touched by *gc-epoch* 2017-12-04T13:59:02Z stassats: still, that makes only two conses alive at the same time 2017-12-04T13:59:59Z stassats: it gets promoted? 2017-12-04T14:02:08Z stassats: only (loop (gc :gen 6)) doesn't fail 2017-12-04T14:02:35Z ikki joined #sbcl 2017-12-04T14:06:35Z stassats: after failing in (loop (gc)), the first gen has !move 2280 Alloc 159984 Waste 74714896 2017-12-04T14:07:30Z fortitude joined #sbcl 2017-12-04T14:07:40Z stassats: dynamic-space - bytes allocated = 75556848 2017-12-04T14:07:48Z stassats: so the whole space is wasted 2017-12-04T14:08:33Z stassats: each *gc-epoch* is on its own page 2017-12-04T14:13:04Z stassats: but it fails even without consing *gc-epoch* 2017-12-04T14:15:24Z stassats: or not, i can't, apparently, redefine sub-gc 2017-12-04T14:15:32Z scymtym: stassats: is your "A deadline was reached …" error with something close to master? 2017-12-04T14:16:19Z scymtym: stassats: nevermind, reproduced 2017-12-04T14:17:45Z dougk joined #sbcl 2017-12-04T14:20:13Z stassats: removing (setf *gc-epoch* (cons 0 0)), it doesn't exhaust 2017-12-04T14:22:49Z nyef`: stassats: Sure you can redefine SUB-GC. But you also have to adjust the static-symbol version, otherwise the runtime will keep calling the old one. 2017-12-04T14:24:14Z stassats: i'm just calling my own sub-gc instead of redefining 2017-12-04T14:24:43Z stassats: so, to sum up, the old *gc-epoch* gets pinned, since gc is for only one gen, it gets promoted 2017-12-04T14:25:20Z stassats: new *gc-epoch* each get a new page, until it runs out of them, and it can't gc the higher page, because of without-gcing 2017-12-04T14:27:23Z nyef`: Okay, WTF? I'm in thread_register_gc_trigger(), and advance to GC_FLIGHT, meaning that GC_INHIBIT is NIL (otherwise we wouldn't've advanced). But by the time the GSP trap gets hit, GC_INHIBIT is T. 2017-12-04T14:34:13Z stassats: is that why (loop (eval '(list 1 2))) exhausts the heap as well? 2017-12-04T14:34:19Z stassats: each new list gets its own page? 2017-12-04T14:34:40Z stassats: but gets promoted and never collected 2017-12-04T14:35:09Z stassats: ok (eval '(list 1 2)) doesn't, but (defun foo () (list 1 2)) (loop (foo)) 2017-12-04T14:37:58Z nyef`: Hrm... 2017-12-04T14:38:31Z stassats: incredible 2017-12-04T14:38:47Z stassats: collect_garbage never goes past 0 2017-12-04T14:38:48Z nyef`: ... no, arch_os_get_current_thread() returns all_threads, so that's fine. 2017-12-04T14:39:50Z stassats: how is our gc works at all? 2017-12-04T14:40:55Z nyef`: Point of order? Our GC being horrible is a known issue. It being more horrible than expected shouldn't be all that much of a surprise. 2017-12-04T14:42:40Z stassats: but the simplest thing, consing a short list in a loop 2017-12-04T14:43:15Z stassats: strangely enough, consing small arrays does fail as well, but not page sized arrays 2017-12-04T14:43:25Z otwieracz: https://gist.github.com/otwieracz/ccadb8f67c340c26615785b668d127c1 ← that's our exact case. 2017-12-04T14:43:45Z otwieracz: No idea how, but we end up with mutex being taken with `:TAKEN 2017-12-04T14:43:51Z otwieracz: set to time like two days ago. 2017-12-04T14:45:32Z stassats: otwieracz: a timeout around run-program wouldn't kill anything 2017-12-04T14:45:33Z _rumbler31 joined #sbcl 2017-12-04T14:45:44Z stassats: it can just stop wait-pid 2017-12-04T14:47:47Z otwieracz: OK, but lisp should continue. 2017-12-04T14:47:50Z stassats: and timeouts around cffi calls isn't great 2017-12-04T14:48:00Z stassats: libcurl has timeouts, use those 2017-12-04T14:49:36Z nyef`: Right, time to give up on debugging this mess for the moment, shelve it, and work on something else for a while. We don't need non-threaded safepoints immediately, after all. 2017-12-04T14:55:28Z stassats: 32K arrays fill more generations 2017-12-04T14:55:40Z stassats: even though collect_garbage is only called with 0 2017-12-04T15:01:01Z sjl joined #sbcl 2017-12-04T15:01:40Z stassats: gc-logfile doesn't help much 2017-12-04T15:02:26Z stassats: for some reason the report "Heap exhausted, game over." is different, with gen 1 having the bulk of unmovable pages 2017-12-04T15:03:09Z stassats: but in gc-logfile they're distributed between 0-4 and not that much is pinned 2017-12-04T15:04:37Z stassats: really weird 2017-12-04T15:05:04Z smurfrobot joined #sbcl 2017-12-04T15:21:22Z stassats: it goes haywire during a single gc 2017-12-04T15:22:32Z stassats: ok, i don't get gc-logfile anymore, why does it start with === GC End === 2017-12-04T15:26:20Z oleo joined #sbcl 2017-12-04T15:26:49Z smurfrobot quit (Remote host closed the connection) 2017-12-04T15:32:51Z stassats: duh, i was running two sbcls writing to gc-logfile 2017-12-04T15:34:13Z stassats: and this is a regression 1.3.14 isn't affected 2017-12-04T15:35:09Z stassats: can't make heads or tails of it, going to bisect 2017-12-04T15:35:18Z nyef`: I think that my next step might be trying to fix comments and write documentation. 2017-12-04T15:35:41Z nyef`: ... Why am I thinking "Nord and Burt"? 2017-12-04T15:35:54Z stassats: nyef`: take a look at call-out, shouldn't (storew r14 thread-base-tn thread-pc-around-foreign-call-slot) be before (storew rsp-tn thread-base-tn thread-saved-csp-offset)? 2017-12-04T15:36:22Z Jesin joined #sbcl 2017-12-04T15:37:00Z nyef`: Hrm. 2017-12-04T15:37:10Z nyef`: Not sure, but possibly? 2017-12-04T15:37:20Z nyef`: There might be an incipient race condition there either way. 2017-12-04T15:37:42Z stassats: if collect_garbage hits after rsp is stored, it won't see the saved PC and not pin the function 2017-12-04T15:38:25Z nyef`: Yeah, but that requires an asynchronous interrupt. 2017-12-04T15:39:12Z nyef`: Honestly, biasing the stack pointer (on read!) seems the saner solution. 2017-12-04T15:40:14Z nyef`: Hrm. Except that then there's a window where it looks like the saved stack pointer is out-of-bounds, and we also have to deal with the MS_ABI shadow zone/space on the read side. 2017-12-04T15:46:23Z stassats: nyef`: how is another-thread-is-in-c, don't wait for it determined? 2017-12-04T15:46:32Z stassats: by looking at the saved csp? 2017-12-04T15:47:14Z stassats: so you don't need an asynchronous interrupt, just the collector asking for the pc before it is save 2017-12-04T15:47:14Z stassats: d 2017-12-04T15:47:57Z nyef`: The collector write-protects the CSP page before checking. 2017-12-04T15:48:12Z nyef`: We presume that mprotect() is a universal synchronization barrier. 2017-12-04T15:48:23Z stassats: 2017-12-04T15:48:41Z stassats: no barrier will help 2017-12-04T15:48:55Z nyef`: Exactly. Race condition. 2017-12-04T15:49:09Z nyef`: The question is, if we do it the other way, is there ALSO a race condition? 2017-12-04T15:49:39Z stassats: it undoes the sequences correctly 2017-12-04T15:49:47Z stassats: the sequnce 2017-12-04T15:50:20Z nyef`: what's the saved pc? 2017-12-04T15:50:45Z nyef`: (In a safepoint-strictly / thruption scenario, this can't happen, of course.) 2017-12-04T15:52:06Z stassats: oh, did you see about safepoint-strictly? it's broken as well 2017-12-04T15:52:19Z nyef`: I'm not in the least bit surprised. 2017-12-04T15:52:42Z stassats: doing multiple run-programs fails on safepoint, ironically. it interrupts fork() and tries to create a new thread, happily deadlocking 2017-12-04T15:53:09Z stassats: sigchld 2017-12-04T15:56:08Z dougk quit (Ping timeout: 255 seconds) 2017-12-04T16:09:15Z stassats: the problem is between 1.4.0 and 1.4.1 2017-12-04T16:13:23Z dougk joined #sbcl 2017-12-04T16:15:11Z nyef`: Oh, good. Not on me then. (-: 2017-12-04T16:16:24Z stassats: bisecting using git further 2017-12-04T16:16:24Z eudoxia joined #sbcl 2017-12-04T16:16:58Z stassats: SBCL_MAKE_PARALLEL=8 comes in handy 2017-12-04T16:18:35Z Lord_Nightmare quit (Ping timeout: 240 seconds) 2017-12-04T16:23:54Z stassats: 95bb5160bc34543f112d8fc66c7215b8f77bb7b6 2017-12-04T16:29:21Z dougk quit (Ping timeout: 248 seconds) 2017-12-04T16:40:31Z smurfrobot joined #sbcl 2017-12-04T16:51:13Z dougk joined #sbcl 2017-12-04T16:54:30Z smurfrobot quit (Remote host closed the connection) 2017-12-04T16:57:03Z Lord_Nightmare joined #sbcl 2017-12-04T17:00:30Z ikki quit (Ping timeout: 260 seconds) 2017-12-04T17:06:07Z awolven quit (Read error: Connection reset by peer) 2017-12-04T17:06:40Z awolven joined #sbcl 2017-12-04T17:09:53Z dougk quit (Ping timeout: 248 seconds) 2017-12-04T17:15:56Z eudoxia quit (Remote host closed the connection) 2017-12-04T17:17:31Z awolven quit (Remote host closed the connection) 2017-12-04T17:18:06Z awolven joined #sbcl 2017-12-04T17:22:33Z awolven quit (Ping timeout: 250 seconds) 2017-12-04T17:26:36Z awolven joined #sbcl 2017-12-04T17:34:14Z bkst quit (Ping timeout: 276 seconds) 2017-12-04T17:37:01Z eudoxia joined #sbcl 2017-12-04T17:39:34Z stassats: #1736198 goes away if i bump *max-optimize-iterations* 2017-12-04T17:47:13Z stassats: i'm sure it can be triggered even then 2017-12-04T17:47:51Z stassats: ir2-convert doesn't like a CAST without a dest, which is not deleted 2017-12-04T17:48:04Z stassats: i can just convince ir2-convert to trust such casts 2017-12-04T17:51:57Z stassats: i can delete such casts at ir1-finalize time 2017-12-04T17:53:26Z stassats: or from cast-type-check 2017-12-04T18:02:17Z stassats: ok, checkgen finally decides if the cast should do nothing, it can pass do-not-optimize nil to ir1-optimize to maintain consistency 2017-12-04T18:02:52Z bkst joined #sbcl 2017-12-04T18:05:56Z m00natic quit (Remote host closed the connection) 2017-12-04T18:12:32Z scymtym quit (Ping timeout: 240 seconds) 2017-12-04T18:23:10Z shka joined #sbcl 2017-12-04T18:26:35Z jibanes joined #sbcl 2017-12-04T19:01:56Z scymtym joined #sbcl 2017-12-04T19:02:58Z rgrau joined #sbcl 2017-12-04T19:04:34Z libreman quit (Ping timeout: 264 seconds) 2017-12-04T19:06:14Z stassats: ok, no more compiler bugs 2017-12-04T19:06:18Z stassats: only safepoint bugs 2017-12-04T19:10:17Z stassats: spoke too soon, more potential compiler bugs 2017-12-04T19:10:28Z Shinmera: I had a thing today where 1.4.2 crashed while compiling one of my systems. I'll try to replicate and isolate tomorrow. 2017-12-04T19:10:35Z Shinmera: 1.4.1 worked fine still. 2017-12-04T19:10:42Z stassats: crashed in what fashion? 2017-12-04T19:11:11Z Shinmera: hung on a particular form and after some minutes got to LDB because of a heap exhaustion, if I remember correctly? It was earlier today and I didn't have net at the time. 2017-12-04T19:12:56Z Shinmera: I'm too beat to try and replicate it tonight, but I'll get to it tomorrow morning. 2017-12-04T19:13:10Z dougk joined #sbcl 2017-12-04T19:17:19Z stassats: ok, dougk fixed the (loop (list 1 2)) issue, but (loop (gc)) is older and still crashes 2017-12-04T19:17:22Z stassats: really older 2017-12-04T19:17:29Z libreman joined #sbcl 2017-12-04T19:17:36Z stassats: i wonder if i can make a gc-less test case 2017-12-04T19:32:08Z dougk quit (Ping timeout: 255 seconds) 2017-12-04T19:35:17Z fortitude: nyef`: looking at ab4c3f57796e2da43b4d587e8a341b3487d159b8, would it make sense to check gc_state.master to avoid double-locking? 2017-12-04T19:35:39Z fortitude: seems less fiddly than checking state variables, and that's the only thing gc_state.master gets used for 2017-12-04T19:40:01Z eschatologist quit (Ping timeout: 240 seconds) 2017-12-04T19:40:11Z eschatologist joined #sbcl 2017-12-04T19:45:11Z BitPuffin|osx quit (Ping timeout: 255 seconds) 2017-12-04T19:49:33Z awolven quit (Remote host closed the connection) 2017-12-04T19:50:10Z awolven joined #sbcl 2017-12-04T19:51:39Z nyef`: fortitude: I figured gc_state.master for a debugging aid, primarily. And the state variables we're checking are such that if they indicate that we might have the lock then we don't actually care what the phase is. 2017-12-04T19:54:38Z awolven quit (Ping timeout: 255 seconds) 2017-12-04T19:56:06Z Bike: I'm trying to use sprof, but when I use with-profiling with the form I want it doesn't actually take any samples and says "No sampling progress; run too short, sampling interval too long, inappropriate set of sampled thread, or possibly a profiler bug." What kind of things could I be doing that would inhibit it like this? 2017-12-04T19:56:16Z Bike: It works for other stuff, e.g. the numerical example in the manual. 2017-12-04T19:56:42Z fortitude: nyef`: it probably was; gc_state.master just seemed less clever, and easier to verify as correct (especially since we don't care /why/ we have the lock) 2017-12-04T19:59:18Z nyef`: Bike: If it's a "too short" run, stick a loop in there. Otherwise, I don't know. 2017-12-04T19:59:49Z Bike: i have :loop t 2017-12-04T19:59:56Z Bike: it's mysterious. 2017-12-04T20:00:21Z Bike: okay, if i put in a loop myself it actually does something. 2017-12-04T20:00:26Z fortitude: oh wait, there'd be a race for gc_state.master anyway, since we may not hold the lock 2017-12-04T20:00:26Z fortitude: duh 2017-12-04T20:00:59Z karswell quit (Remote host closed the connection) 2017-12-04T20:02:40Z Bike: but doesn't seem to stop doing something. well, it's an improvement, thank you 2017-12-04T20:02:46Z nyef`: Well, it wouldn't matter what thread, if any, holds the master: Either it's US, in which case we already hold the lock, or it isn't, in which case we don't. 2017-12-04T20:02:54Z smurfrobot joined #sbcl 2017-12-04T20:03:16Z nyef`: But the other nasty possible case is this: What if we *just took* the lock or are *just about to release it*, and caught an asynchronous interrupt? 2017-12-04T20:07:39Z rgrau quit (Ping timeout: 250 seconds) 2017-12-04T20:08:51Z Bike: really doesn't seem to want to stop. I say :max-samples 1000, it says "Profiler sample vector full (234 traces / 10000 samples), doubling the size". but perhaps i'm misinterpreting what that says. 2017-12-04T20:10:01Z Bike: okay, i misunderstood what max-samples means i think. got it working. sorry for noise. 2017-12-04T20:12:05Z milanj joined #sbcl 2017-12-04T20:20:00Z smurfrobot quit (Remote host closed the connection) 2017-12-04T20:29:41Z stassats: ok, no more compiler bugs for real this time, the previous fix introduced a new bug, oops 2017-12-04T20:32:40Z awolven joined #sbcl 2017-12-04T20:33:05Z dougk joined #sbcl 2017-12-04T20:34:41Z whoman quit (Ping timeout: 240 seconds) 2017-12-04T20:35:18Z pfdietz_ joined #sbcl 2017-12-04T20:37:38Z pfdietz quit (Ping timeout: 255 seconds) 2017-12-04T20:43:11Z dougk__ joined #sbcl 2017-12-04T20:45:02Z dougk quit (Ping timeout: 255 seconds) 2017-12-04T20:47:44Z dougk__ quit (Ping timeout: 255 seconds) 2017-12-04T20:54:45Z whoman joined #sbcl 2017-12-04T20:57:55Z eudoxia quit (Quit: Leaving) 2017-12-04T21:23:15Z dougk joined #sbcl 2017-12-04T21:40:41Z aeth quit (Ping timeout: 240 seconds) 2017-12-04T21:42:09Z aeth joined #sbcl 2017-12-04T21:45:18Z smurfrobot joined #sbcl 2017-12-04T21:50:20Z smurfrobot quit (Ping timeout: 276 seconds) 2017-12-04T22:01:59Z dougk quit (Ping timeout: 255 seconds) 2017-12-04T22:04:55Z dougk joined #sbcl 2017-12-04T22:06:10Z awolven quit (Remote host closed the connection) 2017-12-04T22:06:45Z awolven joined #sbcl 2017-12-04T22:11:26Z awolven quit (Ping timeout: 255 seconds) 2017-12-04T22:12:20Z dougk quit (Ping timeout: 255 seconds) 2017-12-04T22:14:50Z dougk joined #sbcl 2017-12-04T22:15:59Z nyef`: Question: Why is SUB-GC written in Lisp? 2017-12-04T22:16:43Z stassats: lisp is nice 2017-12-04T22:17:22Z nyef`: Yes, it is. But fiddly synchronization between Lisp and C is fiddly. 2017-12-04T22:21:00Z stassats: and syncing with lisp is easier from C? 2017-12-04T22:21:08Z stassats: take (incf *gc-run-time* run-time) for example 2017-12-04T22:32:27Z _rumbler31 quit (Ping timeout: 240 seconds) 2017-12-04T22:37:15Z Bike quit (Ping timeout: 260 seconds) 2017-12-04T22:37:19Z dougk_: the ELF support is in, if anyone cares. I missed some #if's. Adding those in now and will push ASAP 2017-12-04T22:37:42Z stassats: one step closer to SBCL on iOS 2017-12-04T22:42:59Z dougk_: is there a reason we have both sb-sys:*linkage-info* _and_ two closures hidden within ENSURE-DYNAMIC-FOREIGN-SYMBOL-ADDRESS? the latter got there first maybe? 2017-12-04T22:43:34Z dougk_: i mean two hashtables hidden in a closure 2017-12-04T22:46:24Z stassats: there are three possible combinations, -linkage-table, linkage-table, linkage-table+sb-dynamic-core 2017-12-04T22:46:29Z stassats: so things may not look nice 2017-12-04T22:50:42Z Jesin quit (Quit: Leaving) 2017-12-04T22:52:41Z nyef`: Do we ever not want linkage-table on a platform that supports it? 2017-12-04T22:57:37Z stassats: no 2017-12-04T22:57:59Z stassats: and sb-dynamic-core is good as well, although maybe the users do not actually notice it 2017-12-04T23:05:26Z sjl quit (Ping timeout: 255 seconds) 2017-12-04T23:12:31Z shka quit (Ping timeout: 248 seconds) 2017-12-04T23:15:22Z Bike joined #sbcl 2017-12-04T23:22:05Z dougk quit (Ping timeout: 255 seconds) 2017-12-04T23:34:50Z stassats quit (Ping timeout: 260 seconds) 2017-12-04T23:47:14Z jack_rabbit_ joined #sbcl 2017-12-04T23:47:46Z awolven joined #sbcl 2017-12-04T23:50:42Z jack_rabbit quit (Ping timeout: 260 seconds) 2017-12-04T23:52:32Z awolven quit (Ping timeout: 276 seconds) 2017-12-04T23:56:56Z cromachina joined #sbcl 2017-12-04T23:58:38Z Jesin joined #sbcl 2017-12-05T00:03:29Z bkst quit (Ping timeout: 255 seconds) 2017-12-05T00:07:25Z dougk joined #sbcl 2017-12-05T00:07:27Z awolven joined #sbcl 2017-12-05T00:10:08Z bkst joined #sbcl 2017-12-05T00:11:56Z awolven quit (Remote host closed the connection) 2017-12-05T00:16:12Z awolven joined #sbcl 2017-12-05T00:19:19Z awolven quit (Remote host closed the connection) 2017-12-05T00:27:46Z dougk quit (Ping timeout: 255 seconds) 2017-12-05T00:29:53Z jack_rabbit_ quit (Ping timeout: 248 seconds) 2017-12-05T00:36:49Z dougk joined #sbcl 2017-12-05T00:42:41Z jack_rabbit_ joined #sbcl 2017-12-05T00:46:43Z awolven joined #sbcl 2017-12-05T00:49:42Z awolven quit (Remote host closed the connection) 2017-12-05T00:50:09Z jack_rabbit_ quit (Ping timeout: 248 seconds) 2017-12-05T00:50:15Z awolven joined #sbcl 2017-12-05T00:54:47Z awolven quit (Ping timeout: 255 seconds) 2017-12-05T01:05:48Z jack_rabbit_ joined #sbcl 2017-12-05T01:16:47Z awolven joined #sbcl 2017-12-05T01:20:50Z smurfrobot joined #sbcl 2017-12-05T01:25:21Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-05T01:34:30Z jibanes quit (Remote host closed the connection) 2017-12-05T01:45:59Z milanj quit (Quit: This computer has gone to sleep) 2017-12-05T01:53:24Z awolven quit (Remote host closed the connection) 2017-12-05T01:53:56Z awolven joined #sbcl 2017-12-05T01:58:11Z awolven quit (Ping timeout: 240 seconds) 2017-12-05T01:59:31Z jibanes joined #sbcl 2017-12-05T02:01:07Z dougk_: nyef`: do you have any idea about which we generally regard as authoritative when they disagree: page_address(last_free_page), get_alloc_pointer, page_address(find_last_free_page()) ? 2017-12-05T02:01:22Z dougk_: I added a printf into 'save' and I see: "in save, find_last_free_page() says 824 but last_free_page is 4757" 2017-12-05T02:03:20Z nyef`: last_free_page is a high-water mark. find_last_free_page() is a *current* water level. get_alloc_pointer... is new? 2017-12-05T02:03:38Z nyef`: Looks like get_alloc_pointer is the lisp-side copy of last_free_page? 2017-12-05T02:04:05Z dougk_: could be a bug from https://sourceforge.net/p/sbcl/sbcl/ci/34dcac9de3753c8234ec1389153801728f0e6e48 2017-12-05T02:04:16Z nyef`: In save(), I'd probably run with page_address(find_last_free_page()). 2017-12-05T02:04:32Z dougk_: i want to check what the behavior was before. that revision changed update_dynamic_space_free_pointer() to not side-effect last_free_page 2017-12-05T02:04:36Z dougk_: i think it was supposed to 2017-12-05T02:05:12Z nyef`: Ah, did it modify the behavior but not fix the call sites? 2017-12-05T02:05:24Z dougk_: i think fe[nl]ix and I added get_alloc_pointer() to hide some cross-platform cruft 2017-12-05T02:05:52Z dougk_: certain of us disliked the number of "#if gencgc" in save 2017-12-05T02:05:56Z nyef`: Thread vs. non-thread cruft, more likely, but yeah. 2017-12-05T02:10:56Z awolven joined #sbcl 2017-12-05T02:12:17Z nyef`: I'm wondering if I can cut down on the amount of #if threads noise. 2017-12-05T02:14:09Z dougk_: definitely a bug introduced at or after that change. same printing inserted into gencgc one rev. prior says: "writing 26968064 bytes (823 pages) from the dynamic space; saving PTEs, last_free_page is 823" 2017-12-05T02:15:28Z dougk_: i wonder how many other places we're suboptimally scanning more pages than should be though, the intuition is that last_free_page is always correct immediately after a GC, but apparently not 2017-12-05T02:16:04Z dougk_: "Correct" meaning as tight a bound on the actual high water mark as can be had 2017-12-05T02:17:55Z nyef`: MAP-ALLOCATED-OBJECTS for :DYNAMIC space is about the only place, IIRC. 2017-12-05T02:18:52Z fiddlerwoaroof quit (Read error: Connection reset by peer) 2017-12-05T02:18:57Z dougk_: ok, bug definitely introduced at exactly that rev. 2017-12-05T02:19:22Z dougk_: i'll have to add a test that reading a core gives a number of PTE entries that are what they should be for the dynamic space size and not more 2017-12-05T02:21:16Z fiddlerwoaroof joined #sbcl 2017-12-05T02:23:35Z nyef`: Accounting for discontiguous dynamic space, just in case? 2017-12-05T02:24:31Z dougk_: ha ha ha. 2017-12-05T02:25:16Z Bike quit (Quit: Lost terminal) 2017-12-05T02:33:02Z nyef`: ISTR actually having a discontiguous dynamic space allocation in a core file at one point. 2017-12-05T02:33:29Z nyef`: On PPC, I think. Had to fix a bug with the core loader... or maybe the saver. 2017-12-05T02:34:26Z nyef`: Ahh. There *was* an arch-specific quirk to dynamic_space_free_pointer: ARM's *ALLOCATION-POINTER*. 2017-12-05T02:38:38Z nyef`: ecca88e85c0f8bafea9be8c03cee793657168baf is where I had to fix a bug due to discontiguous allocation in a core file. 2017-12-05T02:39:58Z dougk_: i thought by discontiguous i meant truly separate bits of dynamic space, some here and some there. You just mean some pages not used in between pages that are used, right? that's allowed, sure 2017-12-05T02:40:32Z dougk quit (Ping timeout: 255 seconds) 2017-12-05T02:40:54Z nyef`: Okay, good. And yeah, I didn't actually mean a truly discontiguous space. I know that that'd be a goodly bit of work, even if we probably will end up wanting it. 2017-12-05T02:43:29Z tonton quit (Ping timeout: 255 seconds) 2017-12-05T02:47:20Z dougk joined #sbcl 2017-12-05T02:50:45Z Bike joined #sbcl 2017-12-05T03:00:44Z tonton joined #sbcl 2017-12-05T03:03:15Z awolven quit (Remote host closed the connection) 2017-12-05T03:03:50Z awolven joined #sbcl 2017-12-05T03:04:28Z Xach left #sbcl 2017-12-05T03:05:54Z nyef`: Does modern OSX still have unreliable SIGTRAP? 2017-12-05T03:07:05Z dougk quit (Ping timeout: 255 seconds) 2017-12-05T03:08:25Z awolven quit (Ping timeout: 255 seconds) 2017-12-05T03:27:42Z dougk joined #sbcl 2017-12-05T03:31:43Z hooman joined #sbcl 2017-12-05T03:34:08Z hooman quit (Remote host closed the connection) 2017-12-05T03:34:08Z whoman quit (Remote host closed the connection) 2017-12-05T03:35:25Z whoman joined #sbcl 2017-12-05T03:35:27Z whoman quit (Remote host closed the connection) 2017-12-05T03:39:50Z dougk quit (Ping timeout: 260 seconds) 2017-12-05T03:40:12Z dougk joined #sbcl 2017-12-05T03:46:58Z myrkraverk_ joined #sbcl 2017-12-05T03:48:33Z myrkraverk_: repeating, because I discennected. 2017-12-05T03:48:37Z myrkraverk_: nyef`: do you know if I can test it? 2017-12-05T03:48:40Z myrkraverk_: SIGTRAP that is. 2017-12-05T03:48:47Z myrkraverk quit (Ping timeout: 248 seconds) 2017-12-05T03:48:53Z myrkraverk_ is now known as myrkraverk 2017-12-05T03:49:23Z pfdietz_ quit 2017-12-05T03:49:52Z nyef`: I have no idea. 2017-12-05T03:50:15Z nyef`: I know that darwin sigtrap unreliability was the entire reason for the :UD2-BREAKPOINTS feature, however. 2017-12-05T03:51:55Z nyef`: Ooh. Safepoint traps as BREAKPOINT locations! Oh, I'm liking this idea. (-: 2017-12-05T03:55:11Z nyef`: Hrm... And, actually, the SIGTRAP thing with gdb alone is probably sufficient justification, provided that I can get it to cause problems. 2017-12-05T04:17:05Z dougk quit (Ping timeout: 248 seconds) 2017-12-05T04:25:07Z dougk joined #sbcl 2017-12-05T04:42:17Z whoman joined #sbcl 2017-12-05T04:42:39Z whoman quit (Remote host closed the connection) 2017-12-05T04:43:16Z awolven joined #sbcl 2017-12-05T04:43:28Z whoman joined #sbcl 2017-12-05T04:47:39Z awolven quit (Ping timeout: 258 seconds) 2017-12-05T04:48:56Z Bike quit (Quit: Lost terminal) 2017-12-05T05:08:55Z dougk quit (Read error: Connection reset by peer) 2017-12-05T05:09:22Z dougk joined #sbcl 2017-12-05T05:56:34Z fiddlerwoaroof quit (Ping timeout: 260 seconds) 2017-12-05T05:59:08Z dougk quit (Ping timeout: 276 seconds) 2017-12-05T06:09:15Z BitPuffin|osx joined #sbcl 2017-12-05T06:32:11Z shka joined #sbcl 2017-12-05T06:37:45Z awolven joined #sbcl 2017-12-05T06:42:11Z awolven quit (Ping timeout: 255 seconds) 2017-12-05T06:56:00Z jack_rabbit_ is now known as jack_rabbit 2017-12-05T06:56:23Z oleo quit (Quit: Leaving) 2017-12-05T07:10:37Z dougk joined #sbcl 2017-12-05T07:19:23Z jack_rabbit_ joined #sbcl 2017-12-05T07:21:58Z jack_rabbit quit (Ping timeout: 260 seconds) 2017-12-05T07:24:15Z jack_rabbit_ quit (Ping timeout: 268 seconds) 2017-12-05T07:25:36Z jack_rabbit_ joined #sbcl 2017-12-05T07:25:50Z jack_rabbit_ is now known as jack_rabbit 2017-12-05T07:28:55Z Shinmera: Alright, the crash I talked about yesterday is still there on master/HEAD today. It just spins on the fasl compilation of a particular file forever until it dies of heap exhaustion: https://plaster.tymoon.eu/view/683#683 2017-12-05T07:29:20Z Shinmera: I'll see what I can do to separate the file from everything else. 2017-12-05T07:29:36Z Shinmera: This is a standard sbcl --fancy build 2017-12-05T07:30:54Z Shinmera: The interrupt in the paste is from me hitting C-c C-c at one point. I tried it multiple times and each time GETHASH3 was at the top 2017-12-05T07:39:42Z dougk quit (Ping timeout: 260 seconds) 2017-12-05T08:01:31Z scymtym quit (Ping timeout: 260 seconds) 2017-12-05T08:04:37Z DeadTrickster__ joined #sbcl 2017-12-05T08:05:07Z Shinmera: Okey, got it down pretty small (fortunately). https://plaster.tymoon.eu/view/683#684 2017-12-05T08:05:48Z Shinmera: If I change anything from this it seems it goes through fine. It also works fine if I just C-c C-c the definitions individually. But compile-filing a file with just that in it makes it hang. 2017-12-05T08:06:44Z Shinmera: And again, this didn't happen with 1.4.1, and started happening with 1.4.2 2017-12-05T08:07:41Z DeadTrickster_ quit (Ping timeout: 255 seconds) 2017-12-05T08:17:40Z awolven joined #sbcl 2017-12-05T08:19:50Z shka quit (Ping timeout: 255 seconds) 2017-12-05T08:20:28Z scymtym joined #sbcl 2017-12-05T08:22:47Z awolven quit (Ping timeout: 276 seconds) 2017-12-05T08:51:06Z bkst quit (Ping timeout: 260 seconds) 2017-12-05T09:31:00Z awolven joined #sbcl 2017-12-05T09:35:25Z awolven quit (Ping timeout: 255 seconds) 2017-12-05T10:12:51Z milanj joined #sbcl 2017-12-05T10:27:08Z dougk joined #sbcl 2017-12-05T10:31:35Z stassats joined #sbcl 2017-12-05T10:32:27Z stassats: the darwin build is not going anywhere 2017-12-05T10:32:31Z dougk quit (Ping timeout: 248 seconds) 2017-12-05T10:32:48Z stassats: something about __lisp_code_end~ 2017-12-05T10:33:11Z stassats: mach-o/elf differences? 2017-12-05T10:33:26Z Shinmera: stassats: I investigated my problem from yesterday earlier. https://irclog.tymoon.eu/freenode/%23sbcl?from=1512458934#1512458934 2017-12-05T10:33:32Z stassats: yeah, i saw 2017-12-05T10:33:46Z stassats: constraint propagation is to blame 2017-12-05T10:33:52Z Shinmera: Alright. 2017-12-05T10:57:23Z stassats: ugh, constraint propagation is as tricky as i remember it 2017-12-05T11:04:48Z m00natic joined #sbcl 2017-12-05T11:07:48Z otwieracz left #sbcl 2017-12-05T11:10:36Z stassats: keeps adding and removing the same constraint 2017-12-05T11:10:53Z stassats: a strange constraint at that, a variable being eql to itself 2017-12-05T11:13:35Z awolven joined #sbcl 2017-12-05T11:18:17Z awolven quit (Ping timeout: 276 seconds) 2017-12-05T11:59:37Z milanj quit (Quit: This computer has gone to sleep) 2017-12-05T12:04:11Z BitPuffin|osx quit (Ping timeout: 260 seconds) 2017-12-05T12:21:01Z Xof quit (Ping timeout: 240 seconds) 2017-12-05T12:23:32Z Bike joined #sbcl 2017-12-05T12:27:43Z milanj joined #sbcl 2017-12-05T12:31:02Z bkst joined #sbcl 2017-12-05T12:47:38Z stassats: BIND introduces such constraints, so there are multiple paths to a particular block? that's why it keeps alternating? 2017-12-05T12:50:55Z awolven joined #sbcl 2017-12-05T12:55:14Z awolven quit (Ping timeout: 255 seconds) 2017-12-05T12:58:31Z stassats: i can stop it by ignoring (EQL X X) constraints 2017-12-05T12:58:39Z stassats: but will it fail for some (EQL X Y) next? 2017-12-05T13:00:18Z stassats: i guess i'll do that and wait for the next failure, since there's really no reason to have an (EQL X X) constraint 2017-12-05T13:13:47Z leah2 quit (Read error: Connection reset by peer) 2017-12-05T13:14:33Z leah2 joined #sbcl 2017-12-05T13:25:44Z stassats: of course, that breaks something else 2017-12-05T13:26:25Z stassats: maybe not, just a bogus test 2017-12-05T13:29:58Z stassats: ok, the fix is a bit wrong, but the whole idea is still sound 2017-12-05T13:38:58Z stassats: now to construct a test for breaking safepoints between | 2017-12-05T13:44:28Z stassats: Shinmera: should be fixed 2017-12-05T13:48:08Z Shinmera: I'm busy right now but I'll verify later tonight, thanks 2017-12-05T13:48:26Z stassats: potentially faster constraint-propagate as well 2017-12-05T13:48:40Z stassats: by not adding (eql x x) 2017-12-05T14:03:01Z dougk joined #sbcl 2017-12-05T14:06:00Z stassats: (loop (gc)) failing is annoying 2017-12-05T14:10:04Z Bike_ joined #sbcl 2017-12-05T14:10:17Z Bike_ is now known as Bicyclidine 2017-12-05T14:22:55Z awolven joined #sbcl 2017-12-05T14:27:47Z cromachina quit (Read error: Connection reset by peer) 2017-12-05T14:36:40Z rumbler31 joined #sbcl 2017-12-05T14:41:41Z stassats: it's hard to exploit a race condition between two instructions 2017-12-05T14:42:50Z stassats: but it's there, i should just move store-RIP before store-RSP, and adjust WITH_GC_AT_SAFEPOINTS_ONLY 2017-12-05T14:48:01Z rumbler31 quit (Ping timeout: 248 seconds) 2017-12-05T14:48:16Z rumbler31 joined #sbcl 2017-12-05T14:51:09Z stassats: oh, using N thread isn't any good, since they all have to line up between the two instructions, just need a single thread 2017-12-05T14:55:40Z Shinmera: stassats: My system loads in fine again now, thanks again. 2017-12-05T14:56:14Z _rumbler31 joined #sbcl 2017-12-05T14:59:41Z rumbler31 quit (Ping timeout: 255 seconds) 2017-12-05T15:01:03Z sjl__ joined #sbcl 2017-12-05T15:05:29Z oleo joined #sbcl 2017-12-05T15:34:49Z awolven quit (Remote host closed the connection) 2017-12-05T15:39:11Z sjl__ is now known as sjl 2017-12-05T15:40:24Z awolven joined #sbcl 2017-12-05T15:43:47Z stassats quit (Ping timeout: 255 seconds) 2017-12-05T15:57:27Z nyef`: G'morning all. 2017-12-05T15:59:39Z smurfrobot joined #sbcl 2017-12-05T16:02:21Z eudoxia joined #sbcl 2017-12-05T16:07:02Z Xof joined #sbcl 2017-12-05T16:18:51Z smurfrobot quit (Remote host closed the connection) 2017-12-05T16:20:47Z dougk quit (Ping timeout: 248 seconds) 2017-12-05T16:47:46Z awolven quit (Remote host closed the connection) 2017-12-05T16:48:21Z awolven joined #sbcl 2017-12-05T16:50:57Z awolven quit (Remote host closed the connection) 2017-12-05T16:51:11Z awolven joined #sbcl 2017-12-05T17:17:33Z awolven quit (Remote host closed the connection) 2017-12-05T17:18:10Z awolven joined #sbcl 2017-12-05T17:22:32Z awolven quit (Ping timeout: 255 seconds) 2017-12-05T17:22:40Z smurfrobot joined #sbcl 2017-12-05T17:25:19Z dougk joined #sbcl 2017-12-05T17:32:53Z dougk quit (Ping timeout: 255 seconds) 2017-12-05T17:39:43Z stassats joined #sbcl 2017-12-05T17:41:53Z stassats: WITH_GC_AT_SAFEPOINTS_ONLY should actually link to the previously saved stuff 2017-12-05T17:42:14Z stassats: or interrupts will get it 2017-12-05T17:45:28Z awolven joined #sbcl 2017-12-05T17:45:48Z smurfrobot quit (Remote host closed the connection) 2017-12-05T17:52:21Z stassats: maybe not, interrupt contexts should get it 2017-12-05T17:53:11Z dougk joined #sbcl 2017-12-05T17:54:44Z stassats: ok, now i'm only unhappy about the name 2017-12-05T17:56:20Z Bicyclidine quit (Ping timeout: 260 seconds) 2017-12-05T18:01:43Z m00natic quit (Remote host closed the connection) 2017-12-05T18:02:00Z Bike_ joined #sbcl 2017-12-05T18:03:35Z Bike_ is now known as Bicyclidine 2017-12-05T18:15:17Z shka joined #sbcl 2017-12-05T18:18:20Z dougk quit (Ping timeout: 255 seconds) 2017-12-05T18:20:31Z milanj_ joined #sbcl 2017-12-05T18:21:05Z dougk joined #sbcl 2017-12-05T18:22:55Z milanj quit (Ping timeout: 248 seconds) 2017-12-05T18:25:40Z scymtym: win32 x86 build is broken: https://ci.cor-lab.org/job/sbcl-master-windows/label=Windows_7_32bit/1499/console (can't say since when but at least since "Add C compile-time flag to avoid disabling ASLR") 2017-12-05T18:26:03Z scymtym: win32 86_64 likewise 2017-12-05T18:26:43Z stassats: did i push something i didn't mean to push? 2017-12-05T18:27:28Z stassats: yeah 2017-12-05T18:28:14Z dougk quit (Ping timeout: 255 seconds) 2017-12-05T18:29:47Z stassats: reverted 2017-12-05T18:32:10Z stassats: without testing, should test 2017-12-05T18:32:16Z stassats: and maybe do the change for real 2017-12-05T18:46:29Z dougk joined #sbcl 2017-12-05T18:51:21Z dougk__ joined #sbcl 2017-12-05T18:52:26Z milanj__ joined #sbcl 2017-12-05T18:53:05Z dougk quit (Ping timeout: 252 seconds) 2017-12-05T18:53:53Z milanj_ quit (Ping timeout: 255 seconds) 2017-12-05T19:05:09Z dxtr quit (Quit: leaving) 2017-12-05T19:46:01Z awolven quit (Remote host closed the connection) 2017-12-05T19:46:39Z awolven joined #sbcl 2017-12-05T19:50:29Z smurfrobot joined #sbcl 2017-12-05T19:51:02Z awolven quit (Ping timeout: 255 seconds) 2017-12-05T19:56:51Z milanj__ quit (Quit: This computer has gone to sleep) 2017-12-05T19:57:58Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-05T20:02:17Z nyef`: Oh. 2017-12-05T20:03:40Z nyef`: stassats: The reason why we can set pc-around-foreign-call after the CSP trap is that it's to pin the current code-object. But it's still live in the register set, which effectively pins it, until after we set pc-around-foreign-call. 2017-12-05T20:04:10Z nyef`: Which also has wonderful implications for gcing-safety. /-: 2017-12-05T20:04:40Z nyef`: I can make this not-suck for x86-64, but I'm not so sure I have a good angle for x86. 2017-12-05T20:12:47Z stassats: nyef`: the register set is not examined 2017-12-05T20:13:23Z stassats: i did change push_gcing_safety as per your suggestion about interrupt safety 2017-12-05T20:13:54Z nyef`: Hrm. Right. 2017-12-05T20:13:56Z nyef`: Eesh. 2017-12-05T20:14:09Z nyef`: Still thinking in terms of interrupts. /-: 2017-12-05T20:14:30Z stassats: i thought there was another problem, an interrupt hits after we return from c but before writing zero to the CSP-page 2017-12-05T20:14:52Z stassats: and then in that interrupt call into C again, effectively losing the saved PC 2017-12-05T20:15:00Z nyef`: I can make the saved PC thing x86-only instead of also x86-64. 2017-12-05T20:15:07Z stassats: but since it's an interrupt, the old PC will be saved in the interrupt context => no problem 2017-12-05T20:15:50Z nyef`: Umm... What about if the GC hits after returning from the interrupt? 2017-12-05T20:16:42Z stassats: all the values will get restored, or it'll wait until a safepoint 2017-12-05T20:17:03Z nyef`: ... Ahh... I can get rid of the saved PC thing entirely. 2017-12-05T20:17:10Z stassats: can you? i've tried 2017-12-05T20:17:46Z stassats: but, i didn't account for interrupt contexts 2017-12-05T20:17:48Z nyef`: Sure. On x86, dump it into a stack slot. On x86-64, bias the saved CSP. 2017-12-05T20:18:26Z stassats: i've tried the latter, but after returning from from C, CSP is decremented and the value is unprotected 2017-12-05T20:18:37Z stassats: and we can't examine RIP of another running thread 2017-12-05T20:19:01Z nyef`: ? 2017-12-05T20:19:12Z nyef`: x86 or x86-64? 2017-12-05T20:19:19Z stassats: x86-64 2017-12-05T20:19:20Z stassats: both? 2017-12-05T20:19:42Z nyef`: Hrm. 2017-12-05T20:20:13Z nyef`: Okay, you've got a point. Stack slots both sides. 2017-12-05T20:20:38Z stassats: if the collector is examining another thread which has just returned from C, the return address on the stack may have been smashed by interrupt 2017-12-05T20:21:11Z stassats: which would have been safe if stop-the-world used interrupts, since we would see the RIP in the interrupt context 2017-12-05T20:25:41Z awolven joined #sbcl 2017-12-05T20:25:51Z nyef`: Doing a test build to make sure that what I have in mind at least compiles. 2017-12-05T20:27:04Z stassats: if we can avoid stopping a thread that's spinning in C, maybe we can do the same for lisp threads which do not touch any memory 2017-12-05T20:27:20Z stassats: does that happen often enough to be worthwhile? 2017-12-05T20:28:50Z nyef`: I don't know. And it's not that they don't touch memory, but that they don't touch memory *while the GC is going on*, isn't it? 2017-12-05T20:29:03Z nyef`: Ohh. Keep the roots up-to-date on the CSP page? 2017-12-05T20:30:59Z stassats: well, sections of code similar to , where it doesn't have to stop for gc 2017-12-05T20:31:43Z stassats: i'm interested in some kind of real time processing, but i guess not touching lisp memory is too much of a restriction 2017-12-05T20:32:34Z stassats: i was pondering some time ago about some other ideas, each thread having its own heap and communicating using messages 2017-12-05T20:32:39Z stassats: i think i've reinvented erlang 2017-12-05T20:36:36Z nyef`: http://repo.or.cz/sbcl/nyef.git/commitdiff/3f12cb4ba25dea05fd15ad478be42c4babf02877 2017-12-05T20:36:54Z nyef`: So, any problems with this approach? (-: 2017-12-05T20:37:51Z stassats: any guarantees where pc-save is located? 2017-12-05T20:37:56Z stassats: relative to CSP 2017-12-05T20:38:13Z nyef`: Yes: It's in the stack frame for the function that we're calling FROM. 2017-12-05T20:38:24Z stassats: oh, we're examining the whole stack, doesn't matter 2017-12-05T20:38:26Z stassats: yes, i like this 2017-12-05T20:39:02Z stassats: what about CALL L1 L1 2017-12-05T20:39:16Z nyef`: Can't: Stack arguments are already in place. 2017-12-05T20:39:24Z stassats: rright 2017-12-05T20:39:37Z stassats: unpaired CALL/RET are probably not nice as well 2017-12-05T20:39:53Z nyef`: Known to be the case, yes. 2017-12-05T20:41:52Z stassats: so we just have to save the stack high water mark, can we do away with the structure? 2017-12-05T20:44:26Z stassats: regarding interrupt-thread, i think it should use proper interrupts on windows too 2017-12-05T20:44:36Z stassats: i.e. suspendthread 2017-12-05T20:45:12Z nyef`: I'd like to get rid of the gcing_safety thing entirely. 2017-12-05T20:45:28Z stassats: nyef`: yeah, that's the structure i meant 2017-12-05T20:45:54Z stassats: and can we get rid of the horribly named WITH_GC_AT_SAFEPOINTS_ONLY, at least using at funcallN only? 2017-12-05T20:45:58Z nyef`: No, but I also mean the push_ and pop_ functions, the WITH_GC_AT_SAFEPOINTS_ONLY macros... 2017-12-05T20:46:32Z nyef`: Why is this not taken care of by fake_foreign(), undo_fake_foreign() and call_into_lisp() in the first place? 2017-12-05T20:46:57Z nyef`: And, oh look: It's FFCA! 2017-12-05T20:47:40Z nyef`: Which means that maintaining it on non-safepoint builds *ALSO* makes sense. 2017-12-05T20:48:24Z stassats: do we care about it outside of -c-stack-is-control-stack? 2017-12-05T20:48:40Z stassats: there kinda is no FFCA on c-stack-is-control-stack 2017-12-05T20:48:46Z stassats: it's all lisp 2017-12-05T20:49:32Z shka quit (Ping timeout: 255 seconds) 2017-12-05T20:50:14Z nyef`: So, on separate-stack systems, we have FFCA. And for safepoints on these systems, the saved CSP is basically a copy of FFCA, and if they desynch then something has Gone Wrong. 2017-12-05T20:50:22Z milanj__ joined #sbcl 2017-12-05T20:51:09Z nyef`: On single-stack systems, we've never had FFCA because we just scan the entire stack conservatively. 2017-12-05T20:51:33Z stassats: we have FFCA on x86oids, but it's always 0 2017-12-05T20:51:37Z nyef`: But now we use this saved-csp to hold the high-water mark for scanning the stack. 2017-12-05T20:51:59Z nyef`: And to indicate which GC regime to use. 2017-12-05T20:52:13Z nyef`: And that's most of the POINT of FFCA. 2017-12-05T20:53:01Z stassats: and we already save CSP on RISCs 2017-12-05T20:53:02Z nyef`: We may never get to the point of keeping track of "lispy" vs. "non-lispy" stack ranges to scan. 2017-12-05T20:53:52Z stassats: #!+sb-thread 2017-12-05T20:53:53Z stassats: (foreign-function-call-active :c-type "boolean") 2017-12-05T20:53:53Z stassats: ;; Same as above for the location of the current control stack frame. 2017-12-05T20:53:55Z stassats: #!+(and sb-thread (not (or x86 x86-64))) 2017-12-05T20:53:57Z stassats: (control-frame-pointer :c-type "lispobj *") 2017-12-05T20:54:03Z stassats: but, CFP 2017-12-05T20:54:13Z stassats: as well 2017-12-05T20:54:36Z stassats: what do we use CFP for RISs? 2017-12-05T20:55:18Z stassats: backtraces? 2017-12-05T20:55:53Z stassats: nyef`: stack ranges on x86oids? 2017-12-05T20:56:25Z nyef`: Yeah. Why bother scanning the parts of the stack that are for alien code? 2017-12-05T20:56:53Z stassats: do we actually plan to stick around with c-stack-is-control-stack on, at least, x86-64? 2017-12-05T20:57:07Z nyef`: Bad enough that conservative scanning is so miserable in lisp code. 2017-12-05T20:57:17Z nyef`: Do we have plans to change it on x86-64? 2017-12-05T20:57:31Z stassats: i thought about doing it for the hell of it 2017-12-05T20:59:11Z nyef`: And apparently CFP is used by backtrace and interrupt logic. See references to access_control_frame_pointer 2017-12-05T20:59:32Z nyef`: Right, a good chunk of that is fake_foreign(). 2017-12-05T20:59:50Z stassats: the backtrace tricks around fake_foreign_function_call are notorious 2017-12-05T21:00:57Z stassats: in build_fake_control_stack_frames 2017-12-05T21:01:20Z scymtym quit (Ping timeout: 276 seconds) 2017-12-05T21:02:14Z stassats: i wish we had a single lisp ABI 2017-12-05T21:06:13Z stassats: what do safepoints actually buy us? 2017-12-05T21:06:32Z awolven quit (Remote host closed the connection) 2017-12-05T21:06:50Z nyef`: Not having to stop threads that are running alien code when we run GC? 2017-12-05T21:07:04Z stassats: what does that buy? 2017-12-05T21:07:05Z awolven joined #sbcl 2017-12-05T21:07:29Z stassats: i can spin up alien threads that are completely unknown to lisp 2017-12-05T21:08:19Z nyef`: Mmm. Do safepoints really help for windows? 2017-12-05T21:08:50Z stassats: currently, only hurt 2017-12-05T21:09:00Z stassats: due to interrupt-thread not working 2017-12-05T21:10:06Z awolven quit (Remote host closed the connection) 2017-12-05T21:10:08Z nyef`: safepoint-strictly is nice in the abstract, in that PA is horrid. 2017-12-05T21:10:19Z awolven joined #sbcl 2017-12-05T21:10:25Z stassats: PA works 2017-12-05T21:10:39Z nyef`: Not arguing that, just that it's horrid. d-: 2017-12-05T21:10:44Z stassats: safepoint-strictly spins up new threads for signals 2017-12-05T21:11:11Z stassats: and that fails horribly when interrupting, say, pthread_create or fork, or malloc 2017-12-05T21:11:50Z stassats: can we receive all signals on one thread? 2017-12-05T21:12:12Z stassats: blocked on all other threads 2017-12-05T21:12:37Z stassats: because creating a new thread for each signal is a tad bonkers 2017-12-05T21:13:50Z nyef`: Hell, use a signalfd? 2017-12-05T21:14:05Z stassats: or that 2017-12-05T21:14:52Z stassats: i still want interrupt-thread to always kill threads, but when they are running in C 2017-12-05T21:15:56Z nyef`: I think that one of the things that safepoints gets us is being able to consider alternative GC strategies. 2017-12-05T21:15:59Z stassats: another thing, we are closer to having a functioning sbcl.so 2017-12-05T21:16:26Z stassats: it wouldn't be always possible to play nicely with the parent process and all the signals and memory barriers 2017-12-05T21:17:50Z nyef`: Yes, that too. The less that we need to own signals and whatnot, the easier it is to work with outside libraries or programs. 2017-12-05T21:19:20Z stassats: i haven't been writing much lisp lately that isn't sbcl or some other lisp tool 2017-12-05T21:19:55Z stassats: and have become disconnected from real programs 2017-12-05T21:20:41Z nyef`: What are these "real programs" of which you speak? 2017-12-05T21:20:55Z stassats: not a compiler, not an editor, not a garbage collector 2017-12-05T21:21:13Z nyef`: Oh! Debuggers! (-: 2017-12-05T21:21:23Z stassats: or not that 2017-12-05T21:21:28Z nyef`: Heh. 2017-12-05T21:22:03Z stassats: something to put some pressure onto one feature or another 2017-12-05T21:22:30Z scymtym joined #sbcl 2017-12-05T21:22:35Z stassats: so that i just don't create features for the sake of features 2017-12-05T21:23:00Z stassats: hmm, i wanted to work today on source locations, another tool thing 2017-12-05T21:23:37Z stassats: to highlight X in (defun foo (x)), no the whole defun 2017-12-05T21:23:51Z stassats: but constraint-propagate and safepoints interfered with that plan 2017-12-05T21:26:36Z eudoxia quit (Quit: Leaving) 2017-12-05T21:27:05Z stassats: but i still need to fix bignum-explosion in type derivation and the COMPLEX type being broken 2017-12-05T21:36:35Z nyef`: Hrm. Just tried building with SBCL_ARCH=x86, and it broke. /-: 2017-12-05T21:36:53Z nyef`: Died with a null dereference in fstat_wrapper(). 2017-12-05T21:37:19Z nyef` tries a default x86 build. 2017-12-05T21:38:32Z stassats: safepoints? 2017-12-05T21:38:48Z nyef`: That's what I'm "hoping"? 2017-12-05T21:39:07Z nyef`: Another possibility is sb-qshow. 2017-12-05T21:40:22Z stassats: just built --arch=x86 2017-12-05T21:40:28Z stassats: with qshow, dynamic-core 2017-12-05T21:40:43Z nyef`: And, of course, it could be my local system somehow. 2017-12-05T21:41:07Z stassats: trying with safepoints 2017-12-05T21:42:30Z stassats: success as well 2017-12-05T21:43:02Z nyef`: Still breaks. 2017-12-05T21:43:39Z nyef`: Most recent commit is 7e862384aa8f02f08e9f89f455a9855006b17c8c ? 2017-12-05T21:44:09Z stassats: yes 2017-12-05T21:44:17Z nyef` tries a non-thread build. 2017-12-05T21:44:21Z stassats: that's what i built 2017-12-05T21:52:44Z nyef`: Still dies in fstat_wrapper(). 2017-12-05T21:53:15Z stassats: something's wrong with your FS? 2017-12-05T21:53:20Z stassats: dies how? 2017-12-05T21:53:32Z stassats: oh, a fault at 0? 2017-12-05T21:53:37Z stassats: but where/ 2017-12-05T21:55:01Z nyef`: GDB says copy_to_stat_wrapper(), called from fstat_wrapper(). 2017-12-05T21:55:55Z nyef`: It fingers FROB(mode) as the line in question. 2017-12-05T21:58:08Z nyef`: Comparing from and to shows different values for mode, ino, and dev. 2017-12-05T22:01:18Z nyef`: ... "movdqa -0x68(%ebp),%xmm0"? 2017-12-05T22:01:49Z stassats: don't tell me, the stack is misaligned? 2017-12-05T22:02:12Z nyef`: EBP is 0xf7a5dd80 2017-12-05T22:02:29Z stassats: lp 1294906 2017-12-05T22:02:29Z specbot: https://bugs.launchpad.net/bugs/1294906 2017-12-05T22:03:27Z nyef`: Lovely. 2017-12-05T22:03:34Z stassats: my fstat_wrapper doesn't use simd 2017-12-05T22:04:27Z stassats: -march=native => dies in fstat_wrapper 2017-12-05T22:05:08Z foom: ah, the joys of the silent ABI break never cease. 2017-12-05T22:05:34Z foom: GCC's "oops we changed the ABI 5 years ago but forgot to tell anyone! Sorry, now all your code is buggy!" 2017-12-05T22:12:33Z stassats: i think i'll finally change align-stack-pointer 2017-12-05T22:13:09Z nyef`: Also tweak x86-assem.S to always use the LISP_FEATURE_DARWIN version of ALLOC ? 2017-12-05T22:14:46Z nyef`: ... that looks like the only obvious alignment issue in x86-assem.S. 2017-12-05T22:19:23Z stassats: fewer conditionals, yay 2017-12-05T22:20:23Z foom: why does darwin need the save ebp stuff? 2017-12-05T22:20:50Z stassats: making a new frame? 2017-12-05T22:20:52Z foom: i'd expect simply adding a second push of junk would be sufficient. 2017-12-05T22:21:27Z stassats: but we don't know how it's aligned at this point 2017-12-05T22:21:30Z foom: I mean, sure, but frame pointers are effectively optional. 2017-12-05T22:21:47Z nyef`: Does it matter how it's aligned? 2017-12-05T22:22:03Z foom: because lisp frames are only 8-byte aligned? 2017-12-05T22:22:12Z nyef`: (Seriously, does it? Do we care when we're doing a DX allocation, which requires double-lisp-word alignment?) 2017-12-05T22:23:09Z nyef`: I suspect that any random alignment padding is ignored, and that we don't have to restore the stack pointer to remove it. 2017-12-05T22:23:21Z nyef`: But I'm not completely certain. 2017-12-05T22:23:54Z stassats: we can't have gratuitous alignment 2017-12-05T22:24:17Z stassats: it'll break size calculations in tail-call-variable 2017-12-05T22:26:40Z smurfrobot joined #sbcl 2017-12-05T22:27:41Z nyef`: Hrm. IR2tran passes an unknown-values LVAR to VOP TAIL-CALL-VARIABLE. That has an address + count. 2017-12-05T22:28:10Z nyef`: ... doesn't it? 2017-12-05T22:29:11Z nyef`: Ah, no. It passes the address without the count. 2017-12-05T22:29:29Z nyef`: Oh my head. 2017-12-05T22:29:57Z nyef`: Right, there can be no DX packets in scope... Can there be a 2017-12-05T22:30:03Z nyef`: UV packet still in scope? 2017-12-05T22:30:29Z nyef`: But yeah, this is broken, and we can probably come up with a test case to demonstrate. 2017-12-05T22:32:55Z stassats: is it? 2017-12-05T22:33:43Z stassats: push-values and stuff wouldn't work otherwise 2017-12-05T22:33:56Z nyef`: Hrm. 2017-12-05T22:34:18Z nyef`: I'm going to have to investigate this more closely, aren't I? /-: 2017-12-05T22:34:39Z Bicyclidine quit (Quit: Page closed) 2017-12-05T22:36:23Z dougk__ quit (Ping timeout: 252 seconds) 2017-12-05T22:40:53Z smurfrobot quit (Remote host closed the connection) 2017-12-05T22:45:12Z stassats: i don't see a problem there 2017-12-05T22:48:11Z smurfrobot joined #sbcl 2017-12-05T22:48:31Z nyef`: Right: I'm going to need to investigate it to either convince myself that there isn't a problem, or come up with a test case that shows that there is. 2017-12-05T22:49:57Z stassats: anything you do with the stack is restored, be it function calls, unknown values or dx values 2017-12-05T22:50:28Z stassats: so the lower stuff that is pushed before a multiple value call is contiguous and there's nothing after it 2017-12-05T22:50:57Z stassats: otherwise we'd be blowing the stack left and right 2017-12-05T22:52:09Z stassats: and the whole reason for stack-analyze, to remove out of scope pushed values 2017-12-05T22:55:20Z dougk joined #sbcl 2017-12-05T23:04:42Z scymtym_ joined #sbcl 2017-12-05T23:06:47Z scymtym quit (Ping timeout: 276 seconds) 2017-12-05T23:07:16Z stassats: if you find a test case, that'd be another failure of stack-analyze 2017-12-05T23:09:28Z smurfrobot quit (Remote host closed the connection) 2017-12-05T23:13:30Z sjl quit (Ping timeout: 260 seconds) 2017-12-05T23:15:55Z smurfrobot joined #sbcl 2017-12-05T23:19:50Z dougk quit (Ping timeout: 255 seconds) 2017-12-05T23:22:11Z zulu_inuoe_ joined #sbcl 2017-12-05T23:24:08Z zulu_inuoe quit (Ping timeout: 255 seconds) 2017-12-05T23:26:49Z smurfrobot quit (Remote host closed the connection) 2017-12-05T23:34:51Z jack_rabbit quit (Ping timeout: 260 seconds) 2017-12-05T23:41:56Z smurfrobot joined #sbcl 2017-12-05T23:45:01Z stassats: nyef`: re http://repo.or.cz/sbcl/nyef.git/commitdiff/3f12cb4ba25dea05fd15ad478be42c4babf02877 can't you make it into (:temporary (:sc unsigned-stack :from :eval :to :result) pc-save)? 2017-12-05T23:45:40Z nyef`: ... so that it doesn't overlap arguments? 2017-12-05T23:45:59Z stassats: yeah, probably little reason 2017-12-05T23:47:47Z nyef`: I have the x86 version working now. Just need to fix up the commentary and I can form up the commit. 2017-12-05T23:49:29Z stassats: actually, no, there's a good reason 2017-12-05T23:49:34Z stassats: (let ((x (extern-alien "x" (function (values))))) (print 10) (alien-funcall x)) uses less stack 2017-12-05T23:49:43Z stassats: with (:sc unsigned-stack :from :eval :to :result) 2017-12-05T23:51:35Z stassats: hmm, what does ;; For safepoint builds: Force values of non-volatiles to the stack. ;; These are the callee-saved registers in the native ABI, but mean? 2017-12-05T23:52:04Z stassats: with (:save-p t), what forcing? 2017-12-05T23:52:33Z jack_rabbit joined #sbcl 2017-12-05T23:53:13Z stassats: nyef`: can you use RBX for the temporary for loading RIP? 2017-12-05T23:53:39Z stassats: ok, you can do whatever, i'll can apply my ideas later 2017-12-05T23:54:21Z nyef`: Can't load RBX from RIP, it's :TARGET from FUNCTION. 2017-12-05T23:54:36Z stassats: ok, rax then 2017-12-05T23:57:14Z smurfrobot quit (Remote host closed the connection) 2017-12-06T00:05:28Z nyef`: Sure, RAX should work. 2017-12-06T00:05:32Z nyef`: ... What's "msan"? 2017-12-06T00:05:56Z nyef`: (And am I going to risk SAN points by asking about it?) 2017-12-06T00:06:04Z stassats: memory sanitizing 2017-12-06T00:06:17Z stassats: no idea beyond that 2017-12-06T00:07:45Z nyef`: Okay, waiting on a check-build, but I think this is basically ready. 2017-12-06T00:08:16Z stassats: i'll do any call-out changes after that 2017-12-06T00:12:36Z nyef`: Your turn. 2017-12-06T00:12:36Z smurfrobot joined #sbcl 2017-12-06T00:17:26Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-06T00:25:50Z cromachina joined #sbcl 2017-12-06T01:00:05Z dougk joined #sbcl 2017-12-06T01:05:02Z hydan_ joined #sbcl 2017-12-06T01:05:23Z hydan_ is now known as hydan 2017-12-06T01:10:57Z Colleen quit (Ping timeout: 240 seconds) 2017-12-06T01:11:23Z Colleen joined #sbcl 2017-12-06T01:27:11Z dougk quit (Ping timeout: 255 seconds) 2017-12-06T01:27:42Z smurfrobot joined #sbcl 2017-12-06T01:32:06Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-06T01:32:16Z stassats: the assumption that you need to wire :temporaries for non-volatile C registers goes back to the x86 port 2017-12-06T01:36:08Z stassats: can't care about doing anything else to the x86 call-out beyond removing that redundancy 2017-12-06T01:39:46Z stassats: nyef`: does x86 really need pc-save? 2017-12-06T01:41:02Z stassats: nyef`: CALL into call_into_c already does the job 2017-12-06T01:43:34Z stassats: call_into_c does some weird job of not using RET 2017-12-06T01:43:48Z stassats: well, this being x86 and almost being 2018, who cares 2017-12-06T01:45:45Z nyef`: CALL into call_into_c doesn't quite do the job, because that deranges the stack, and it needs to be re-ranged. 2017-12-06T01:48:28Z stassats: ok, that's why the weird RET 2017-12-06T01:51:57Z smurfrobot joined #sbcl 2017-12-06T01:53:10Z stassats: got sucked into asm microptimizations 2017-12-06T02:00:01Z jack_rabbit quit (Quit: Leaving) 2017-12-06T02:02:15Z stassats: saving RSP at R12-8 will be encoded more compactly 2017-12-06T02:02:25Z stassats: and solve any PPC problems 2017-12-06T02:02:30Z stassats: will look into that tomorrow 2017-12-06T02:06:14Z jack_rabbit joined #sbcl 2017-12-06T02:07:34Z stassats: and checking the safepoint NIL-address-8 will more likely keep in cache both the safepoint and NIL 2017-12-06T02:07:41Z _rumbler31 quit (Remote host closed the connection) 2017-12-06T02:08:36Z stassats: ok, i need to stop, or i will be optimizing it endlessly 2017-12-06T02:09:33Z smurfrobot quit (Remote host closed the connection) 2017-12-06T02:11:50Z nyef`: Mmm. Unless you've changed something, I believe that PPC safepoints are still unusable, even though they passed the test suite. 2017-12-06T02:12:33Z stassats: i meant with NIL-8/THREAD-TN-8 being encodable 2017-12-06T02:14:33Z nyef`: Ah, okay. 2017-12-06T02:22:41Z smurfrobot joined #sbcl 2017-12-06T02:23:57Z smurfrobot quit (Remote host closed the connection) 2017-12-06T02:49:29Z milanj__ quit (Quit: This computer has gone to sleep) 2017-12-06T02:49:52Z milanj__ joined #sbcl 2017-12-06T02:50:14Z milanj__ quit (Client Quit) 2017-12-06T02:52:11Z smurfrobot joined #sbcl 2017-12-06T02:53:28Z smurfrobot quit (Remote host closed the connection) 2017-12-06T03:03:54Z smurfrobot joined #sbcl 2017-12-06T03:12:26Z nyef`: stassats: I think you just broke c-call on x86-64 win32. 2017-12-06T03:13:10Z nyef`: (Note the position of the "shadow zone" adjustments relative to the saved-csp manipulation.) 2017-12-06T03:16:13Z smurfrobot quit (Remote host closed the connection) 2017-12-06T03:17:03Z nyef`: Hrm. Is there some way to get the gc-trigger armed and then enter *gc-inhibit* before it goes off? 2017-12-06T03:19:49Z dougk joined #sbcl 2017-12-06T03:20:11Z nyef`: Oh. 2017-12-06T03:21:35Z jack_rabbit quit (Ping timeout: 276 seconds) 2017-12-06T03:22:57Z nyef`: On the one hand, I found the bug I had. On the other hand, why are there two different versions of DEFMACRO PSEUDO-ATOMIC on x86-64? 2017-12-06T03:26:43Z smurfrobot joined #sbcl 2017-12-06T03:27:01Z dougk quit (Ping timeout: 260 seconds) 2017-12-06T03:37:49Z jack_rabbit joined #sbcl 2017-12-06T03:46:17Z smurfrobot quit (Remote host closed the connection) 2017-12-06T03:59:53Z joshe quit (Ping timeout: 240 seconds) 2017-12-06T04:00:07Z joshe joined #sbcl 2017-12-06T04:00:38Z smurfrobot joined #sbcl 2017-12-06T04:05:05Z Bike quit (Ping timeout: 240 seconds) 2017-12-06T04:06:15Z Bike joined #sbcl 2017-12-06T04:11:01Z Xof quit (Ping timeout: 240 seconds) 2017-12-06T04:11:31Z smurfrobot quit (Remote host closed the connection) 2017-12-06T04:12:27Z foom quit (Remote host closed the connection) 2017-12-06T04:12:27Z dougk_ quit (Ping timeout: 240 seconds) 2017-12-06T04:12:38Z dougk_ joined #sbcl 2017-12-06T04:15:05Z Bike quit (Quit: Lost terminal) 2017-12-06T04:25:24Z smurfrobot joined #sbcl 2017-12-06T04:27:35Z stassats quit (Ping timeout: 240 seconds) 2017-12-06T04:29:31Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-06T04:32:53Z dougk joined #sbcl 2017-12-06T04:38:25Z Kevslinger quit (Quit: Connection closed for inactivity) 2017-12-06T04:38:37Z nicdev` is now known as nicdev 2017-12-06T04:51:39Z milanj__ joined #sbcl 2017-12-06T05:37:59Z oleo quit (Quit: Leaving) 2017-12-06T05:38:23Z smurfrobot joined #sbcl 2017-12-06T06:03:12Z smurfrobot quit (Remote host closed the connection) 2017-12-06T06:10:34Z smurfrobot joined #sbcl 2017-12-06T06:14:57Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-06T06:23:14Z BitPuffin|osx joined #sbcl 2017-12-06T06:24:42Z shka joined #sbcl 2017-12-06T07:00:11Z bkst quit (Ping timeout: 255 seconds) 2017-12-06T07:24:29Z scymtym_ quit (Ping timeout: 255 seconds) 2017-12-06T07:28:29Z bkst joined #sbcl 2017-12-06T07:34:23Z sjl joined #sbcl 2017-12-06T07:38:58Z sjl quit (Ping timeout: 268 seconds) 2017-12-06T07:52:09Z milanj__ quit (Quit: This computer has gone to sleep) 2017-12-06T07:53:14Z milanj__ joined #sbcl 2017-12-06T08:12:06Z smurfrobot joined #sbcl 2017-12-06T08:16:31Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-06T08:17:05Z shka quit (Ping timeout: 248 seconds) 2017-12-06T08:35:27Z dougk quit (Ping timeout: 240 seconds) 2017-12-06T08:47:29Z scymtym joined #sbcl 2017-12-06T09:33:40Z scymtym quit (Remote host closed the connection) 2017-12-06T09:35:47Z milanj__ quit (Quit: This computer has gone to sleep) 2017-12-06T09:57:15Z scymtym joined #sbcl 2017-12-06T09:57:51Z smurfrobot joined #sbcl 2017-12-06T10:02:09Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-06T10:21:46Z m00natic joined #sbcl 2017-12-06T10:48:00Z josemanuel joined #sbcl 2017-12-06T10:48:03Z scymtym: windows build problems: 2017-12-06T10:48:33Z scymtym: 1. crash during tests: https://ci.cor-lab.org/job/sbcl-master-windows/label=Windows_7_64bit/1506/console (corresponding commit "safepoint, x86-64: zero out the saved RSP using XOR.") 2017-12-06T10:48:39Z scymtym: 2. crash during warm init: https://ci.cor-lab.org/job/sbcl-master-windows/label=Windows_7_64bit/1507/console (corresponding commits "safepoint: Access the CSP page near the thread struct." and the one following it) 2017-12-06T11:12:31Z jack_rabbit quit (Ping timeout: 248 seconds) 2017-12-06T11:17:50Z milanj__ joined #sbcl 2017-12-06T11:28:59Z jack_rabbit joined #sbcl 2017-12-06T12:03:58Z smurfrobot joined #sbcl 2017-12-06T12:04:46Z smurfrobot quit (Remote host closed the connection) 2017-12-06T12:25:45Z smurfrobot joined #sbcl 2017-12-06T12:33:32Z jdz quit (Ping timeout: 240 seconds) 2017-12-06T12:35:43Z smurfrobot quit (Remote host closed the connection) 2017-12-06T12:37:31Z jdz joined #sbcl 2017-12-06T12:37:44Z milanj__ quit (Quit: This computer has gone to sleep) 2017-12-06T12:41:22Z smurfrobot joined #sbcl 2017-12-06T12:48:31Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-06T12:59:20Z dougk joined #sbcl 2017-12-06T13:00:54Z milanj__ joined #sbcl 2017-12-06T13:16:59Z dougk quit (Ping timeout: 276 seconds) 2017-12-06T13:28:55Z eudoxia joined #sbcl 2017-12-06T13:32:59Z Bike joined #sbcl 2017-12-06T13:41:54Z Xof joined #sbcl 2017-12-06T13:46:33Z Jesin quit (Quit: Leaving) 2017-12-06T14:06:41Z smurfrobot joined #sbcl 2017-12-06T14:16:24Z Kevslinger joined #sbcl 2017-12-06T14:17:45Z bkst quit (Quit: leaving) 2017-12-06T14:17:47Z smurfrobot quit (Remote host closed the connection) 2017-12-06T14:27:14Z dougk joined #sbcl 2017-12-06T14:31:26Z rumbler31 joined #sbcl 2017-12-06T14:31:39Z dougk quit (Ping timeout: 258 seconds) 2017-12-06T14:44:35Z stassats joined #sbcl 2017-12-06T14:46:40Z cromachina quit (Read error: Connection reset by peer) 2017-12-06T14:50:20Z foom joined #sbcl 2017-12-06T14:54:14Z milanj__ quit (Quit: This computer has gone to sleep) 2017-12-06T14:54:48Z oleo joined #sbcl 2017-12-06T15:00:30Z Jesin joined #sbcl 2017-12-06T15:06:02Z bkst joined #sbcl 2017-12-06T15:08:37Z milanj__ joined #sbcl 2017-12-06T15:10:20Z sjl__ joined #sbcl 2017-12-06T15:19:14Z scymtym: stassats: should i close https://github.com/edicl/cl-ppcre/pull/34 since i accidentally duplicated 30? 2017-12-06T15:37:40Z stassats: scymtym: eh, whatever, i'm not dealing with any .asd stuff 2017-12-06T15:37:50Z stassats: unless it breaks something 2017-12-06T15:38:39Z stassats: i was promised an "intern" to help with mindless maintenance, but he has since disappeared 2017-12-06T15:39:53Z stassats: "Taking Cold-symbol-value of unbound symbol", ugh what does it want? 2017-12-06T15:40:08Z stassats: i can even evaluate the symbol 2017-12-06T15:41:30Z oleo: is translate-pathname broken in sbcl ? 2017-12-06T15:41:30Z oleo: Pathname components from SOURCE and FROM args to TRANSLATE-PATHNAME 2017-12-06T15:41:30Z oleo: did not match: 2017-12-06T15:41:30Z oleo: :NEWEST NIL 2017-12-06T15:41:30Z oleo: and what the heck is that -> (SB-IMPL::TRANSLATE-COMPONENT :NEWEST NIL :NEWEST T) 2017-12-06T15:41:31Z oleo: twice the same key ? 2017-12-06T15:41:36Z oleo: sorry i wanted to see 2017-12-06T15:41:43Z oleo: err you to see * 2017-12-06T15:42:12Z stassats: i don't follow 2017-12-06T15:43:51Z oleo: i tried to use logical-pathname-translations for my norvig path 2017-12-06T15:45:25Z oleo: with the sources from norvig-paip-pjb.tar.gz unpacked, patched and ready to be loaded into my repl, yet when i define (setf (logical-pathname-translations "NORVIG") `(("NORVIG:**;*.*" "/home/oleo/lisp/norvig/**/*.*") ("NORVIG:**;*.*.*" "/home/oleo/lisp/norvig/**/*.*"))) and then load (load "/home/oleo/lisp/norvig/norvig-paip-pjb.lisp"), i get errors 2017-12-06T15:47:51Z sjl__ is now known as sjl 2017-12-06T15:48:04Z oleo: http://dpaste.com/092X51K 2017-12-06T15:50:23Z dougk joined #sbcl 2017-12-06T15:50:35Z stassats: (setf (logical-pathname-translations "NORVIG") `(("NORVIG:**;*.*.*" "/home/oleo/lisp/norvig/**/*.*"))) 2017-12-06T15:51:55Z Jesin quit (Quit: Leaving) 2017-12-06T15:53:38Z dougk_: the msan feature makes Lisp able to call C functions that have been compiled with -fsanitize=memory. we have to mark all bytes on the alien stack as having been written to 2017-12-06T15:54:21Z oleo: oh man, thank you stassats, i suppose i deleted one of those .* and didn't notice it somehow 2017-12-06T16:00:07Z stassats: how can "Taking Cold-symbol-value of unbound symbol", while it's right there 2017-12-06T16:01:03Z stassats: do i need some silly !defconstant or something 2017-12-06T16:03:18Z smurfrobot joined #sbcl 2017-12-06T16:05:41Z nyef`: Do I understand correctly that we can no longer build for windows without threads? 2017-12-06T16:07:48Z stassats: nyef`: d4b4a49bc1e874460d23f54f6703cd78b0ed5e03 should help slightly 2017-12-06T16:07:50Z smurfrobot quit (Ping timeout: 255 seconds) 2017-12-06T16:09:06Z nyef`: Hmm. 2017-12-06T16:10:47Z dougk_: stassats: what's the symbol, did you add it? 2017-12-06T16:11:05Z nyef`: Okay, only four or five things left to do with safepoints. PPC stability fixes. x86oid trap fixes. Conditional reduction. Documentation and commentary... Anything else? 2017-12-06T16:11:12Z stassats: dougk_: yeah, a new symbol via defconstant-eqx 2017-12-06T16:12:18Z dougk_: defconstant-eqx in self-build does not like it if the value assigned is not constant per se. so (defconstant-eqx foo (list 1 2) #'equal) won't work, but (defconstant-eqx '#.(list 1 2) #'equal) will work 2017-12-06T16:12:38Z stassats: huh 2017-12-06T16:12:56Z oleo: lol 2017-12-06T16:13:05Z oleo: read time is constant 2017-12-06T16:13:08Z oleo: yo 2017-12-06T16:13:15Z oleo: and literal 2017-12-06T16:13:15Z dougk_: the reason for that is that we want various things like byte specifiers actually usable in cold init, so we have to dump them as constants, we can't compute them. it would lead to circularity 2017-12-06T16:13:37Z dougk_: i.e. the cold fasl loader can't do anything with target code, it can't call code 2017-12-06T16:13:56Z dougk_: and we don't want to be so clever that everything is computable in fasl operations 2017-12-06T16:14:05Z stassats: ok, can defconstant-eqx evaluate at compile-time then? 2017-12-06T16:15:01Z dougk_: you can try wrapping in eval-when compile. that's not usually the issue. the issue is that it dumped a form to compute the thing, in machine code for the target, but *also* needed the value in loading some cold fasl 2017-12-06T16:15:42Z dougk_: i.e. if it hadn't dumped a form to compute the thing, then you would have had the value for the thing. 2017-12-06T16:15:52Z dougk_: so it must have dumped a form, not an object 2017-12-06T16:15:59Z stassats: it is a form, yes 2017-12-06T16:16:10Z stassats: but i don't want to stumble on this again 2017-12-06T16:16:49Z dougk_: i suppose the cross-compiler version of defconstant-eqx could warn you if it doesn't think the value is equivalent to a literal 2017-12-06T16:18:02Z dougk_: that seems like entangling it too much with fopcompilable-p and constantp. Probably just want to change the error message "taking cold-symbol-value" . Make it say "did you use a non-compile-time-computable defconstant-eqx?" 2017-12-06T16:28:11Z dougk quit (Ping timeout: 240 seconds) 2017-12-06T16:38:54Z Jesin joined #sbcl 2017-12-06T17:01:53Z stassats: gc.impure code/data separation keeps failing 2017-12-06T17:02:51Z dougk joined #sbcl 2017-12-06T17:03:00Z nyef`: Fails on PPC as well. 2017-12-06T17:03:50Z nyef`: Hrm. I should totally try to do a PPC build --without-gencgc --with-cheneygc --with-sb-safepoint and make that work. 2017-12-06T17:05:14Z stassats: i see you have lots of time on your hands 2017-12-06T17:17:30Z stassats: ensure-code/data-separation fails because a page has three code objects and a vector 2017-12-06T17:18:16Z stassats: (SIMPLE-ARRAY (UNSIGNED-BYTE 64) (1602)) 2017-12-06T17:20:32Z stassats: zero filled 2017-12-06T17:22:05Z dougk quit (Ping timeout: 255 seconds) 2017-12-06T17:26:46Z stassats: wipe_nonpinned_words? 2017-12-06T17:38:21Z stassats: ok, i see how to fix it 2017-12-06T17:44:06Z dougk joined #sbcl 2017-12-06T17:49:33Z stassats: after that, at least on win32-x86-64 all tests should pass 2017-12-06T17:49:50Z stassats: (ignoring the fact that there are dozens of disabled tests) 2017-12-06T17:55:33Z awolven quit (Read error: Connection reset by peer) 2017-12-06T17:56:16Z awolven joined #sbcl 2017-12-06T18:23:03Z shka joined #sbcl 2017-12-06T18:32:31Z m00natic quit (Ping timeout: 248 seconds) 2017-12-06T18:38:08Z dougk quit (Ping timeout: 255 seconds) 2017-12-06T18:45:04Z dougk joined #sbcl 2017-12-06T19:19:59Z dougk quit (Ping timeout: 255 seconds) 2017-12-06T19:32:21Z milanj__ quit (Quit: This computer has gone to sleep) 2017-12-06T19:34:34Z stassats: and no more unexpected failures on win32-x86 2017-12-06T19:58:58Z dougk joined #sbcl 2017-12-06T19:59:40Z stassats: i think i'll just add a new cast type, non-constant-cast 2017-12-06T20:02:01Z stassats: minion: chant 2017-12-06T20:02:01Z minion: MORE CASTS 2017-12-06T20:30:38Z josemanuel quit (Quit: leaving) 2017-12-06T20:31:11Z shka quit (*.net *.split) 2017-12-06T20:31:12Z joshe quit (*.net *.split) 2017-12-06T20:31:13Z les quit (*.net *.split) 2017-12-06T20:31:13Z GreaseMonkey quit (*.net *.split) 2017-12-06T20:31:14Z salva quit (*.net *.split) 2017-12-06T20:31:14Z sjl quit (*.net *.split) 2017-12-06T20:31:14Z oleo quit (*.net *.split) 2017-12-06T20:31:15Z adlai quit (*.net *.split) 2017-12-06T20:32:02Z oleo joined #sbcl 2017-12-06T20:32:57Z milanj joined #sbcl 2017-12-06T20:33:41Z BitPuffin|osx quit (Ping timeout: 260 seconds) 2017-12-06T20:33:42Z jrm quit (Ping timeout: 260 seconds) 2017-12-06T20:34:02Z dougk quit (Ping timeout: 255 seconds) 2017-12-06T20:35:28Z cryptomarauder[m quit (Ping timeout: 240 seconds) 2017-12-06T20:36:06Z jrm joined #sbcl 2017-12-06T20:47:52Z shka joined #sbcl 2017-12-06T20:47:52Z joshe joined #sbcl 2017-12-06T20:47:52Z les joined #sbcl 2017-12-06T20:47:52Z GreaseMonkey joined #sbcl 2017-12-06T20:47:52Z salva joined #sbcl 2017-12-06T20:47:58Z sjl joined #sbcl 2017-12-06T20:48:00Z adlai joined #sbcl 2017-12-06T20:48:33Z sjl quit (Quit: WeeChat 1.9) 2017-12-06T20:48:52Z sjl__ joined #sbcl 2017-12-06T20:49:18Z sjl__ is now known as sjl 2017-12-06T21:01:34Z milanj quit (Quit: This computer has gone to sleep) 2017-12-06T21:03:55Z shka quit (Ping timeout: 250 seconds) 2017-12-06T21:04:43Z milanj joined #sbcl 2017-12-06T21:10:39Z eudoxia quit (Quit: Leaving) 2017-12-06T21:16:17Z dougk joined #sbcl 2017-12-06T21:16:35Z corci joined #sbcl 2017-12-06T21:16:45Z stassats: EH_UNWINDING nowhere to be found 2017-12-06T21:17:13Z stassats: hardcoded, the last unexpected failure on win32, for real this time 2017-12-06T21:17:49Z stassats: should be no more red spheres on the CI page 2017-12-06T21:18:14Z scymtym: it may visit #sbcl and announce as much :) 2017-12-06T21:20:12Z stassats: but the clisp build is sometimes failing 2017-12-06T21:20:22Z stassats: (i'm blaming clisp) 2017-12-06T21:20:34Z scymtym: last time i checked clisp was crashing 2017-12-06T21:20:44Z stassats: and it's intermittent 2017-12-06T21:20:51Z scymtym: i couldn't if it was just exhausting the heap or something else 2017-12-06T21:21:08Z scymtym: i think i have seen clisp builds taking too long and being aborted, too 2017-12-06T21:22:31Z stassats: nyef`: do you think consing inside without-gcing is safe under safepoints now? 2017-12-06T21:28:54Z rgrau joined #sbcl 2017-12-06T21:38:58Z ym quit (*.net *.split) 2017-12-06T21:38:58Z dwts quit (*.net *.split) 2017-12-06T21:38:59Z pkhuong quit (*.net *.split) 2017-12-06T21:38:59Z gingerale quit (*.net *.split) 2017-12-06T21:43:19Z nyef`: stassats: On non-PPC, yes. Commit 229d6eb7478904ad5228ea6a6bd3fa67053e2198 fixed the last lockup that I managed to get using that consing test, and I ran it overnight trying. 2017-12-06T21:44:30Z nyef`: That said, I don't *like* WITHOUT-GCING, and have put killing it or at least substantially cutting back its use on my list. 2017-12-06T21:45:15Z stassats: i've reduce the impact of the original cause, consing in without-gcing inside maybe-rehash, but it still conses if the hash-table is a weak hash-table 2017-12-06T21:45:17Z nyef`: On PPC, the same consing-inside-WITHOUT-GCING test causes all sorts of mayhem. 2017-12-06T21:45:25Z stassats: too much to change to get rid of without-gcing there 2017-12-06T21:46:01Z stassats: where else do we cons inside without-gcing? sub-gc? that happily crashes without safepoints 2017-12-06T21:46:18Z stassats: but largely because it clears *gc-pending* 2017-12-06T21:47:41Z stassats: i think i can find a better trigger than (loop (gc)) 2017-12-06T21:47:53Z stassats: but haven't yet 2017-12-06T21:49:04Z corci: Yippee, build fixed! 2017-12-06T21:49:05Z corci: Project sbcl-master-windows » Windows_7_32bit build #1518: FIXED in 28 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_32bit/1518/ 2017-12-06T21:49:30Z scymtym: just as planned 2017-12-06T21:51:37Z stassats: pretty enthusiastic 2017-12-06T21:52:06Z Shinmera: Does it boo when the build breaks 2017-12-06T21:52:19Z scymtym: yeah, i didn't see an option to customize that 2017-12-06T21:52:24Z stassats: we'll find out soon enough 2017-12-06T21:53:16Z scymtym: well, it will be gone again when my tunnel goes down. i would have to convince IT to unfilter port 6667 if we want this permanently 2017-12-06T21:54:07Z nyef`: scymtym: Or to use a VPN or proxy? 2017-12-06T21:54:21Z Shinmera: Could do an outside service if Jenkins has an API (or scrape it manually) 2017-12-06T21:55:46Z scymtym: nyef`: sure, i'm not sure that setting something like that up is worth it. also, one more thing to maintain 2017-12-06T21:56:57Z scymtym: Shinmera: it has an api, but making and maintaining something just for that seems too much work 2017-12-06T21:57:28Z Shinmera: I'll see if I can do it in an afternoon for Maiden 2017-12-06T21:58:47Z scymtym: but then you have to maintain it and everybody has to bother you when there is a problem 2017-12-06T22:00:02Z Shinmera: I already have hundreds of projects 2017-12-06T22:00:06Z Shinmera: What's one more 2017-12-06T22:00:56Z stassats: but you can't even keep Colleen on the line! 2017-12-06T22:00:58Z scymtym: also, nobody commented on whether we actually want something like this for real 2017-12-06T22:01:32Z stassats: scymtym: i like it, though i'd probably notice emails more often 2017-12-06T22:02:00Z ym joined #sbcl 2017-12-06T22:02:00Z dwts joined #sbcl 2017-12-06T22:02:00Z pkhuong joined #sbcl 2017-12-06T22:02:00Z gingerale joined #sbcl 2017-12-06T22:02:33Z stassats: why is it Dec 4 on https://ci.cor-lab.org/job/sbcl-master/ ? 2017-12-06T22:02:37Z Shinmera: scymtym: You already report breakage here manually from time to time. I don't think having a bot do it instead would hurt (if it's restricted to updating at most like every half an hour or something) 2017-12-06T22:03:52Z dougk quit (Ping timeout: 240 seconds) 2017-12-06T22:05:18Z dougk joined #sbcl 2017-12-06T22:05:35Z stassats: looks like it's stuck 2017-12-06T22:14:30Z stassats: i pressed some link saying "stop" 2017-12-06T22:14:59Z dougk quit (Ping timeout: 250 seconds) 2017-12-06T22:18:26Z scymtym: stassats: it is waiting for IT to fix the macos slave which requires physical access. i was told it would be fixed today but wasn't, i guess 2017-12-06T22:19:01Z stassats: but why did it stop all other builds? 2017-12-06T22:19:42Z scymtym: i builds all platforms and configurations in one batch. the next batch can only start once everything is finished 2017-12-06T22:19:52Z stassats: ok 2017-12-06T22:20:36Z scymtym: it could split off the macos slave into a separate job but that would mean more maintenance and more links to click when looking at results 2017-12-06T22:20:44Z scymtym: s/it/i/ 2017-12-06T22:21:34Z dougk joined #sbcl 2017-12-06T22:23:44Z scymtym: stassats: do you want to try email notification? 2017-12-06T22:23:58Z stassats: yes 2017-12-06T22:25:56Z scymtym: should we start by people here opting in now and observing useful/annoying the notifications are? 2017-12-06T22:26:32Z stassats: i don't know what other people want, but i want email notifications 2017-12-06T22:27:37Z scymtym: ok 2017-12-06T22:28:02Z dougk quit (Ping timeout: 252 seconds) 2017-12-06T22:31:29Z dougk joined #sbcl 2017-12-06T22:37:12Z dougk_ quit (Quit: Leaving) 2017-12-06T22:41:27Z rumbler31 quit (Ping timeout: 240 seconds) 2017-12-06T22:42:25Z Bike quit (Ping timeout: 260 seconds) 2017-12-06T22:48:17Z rumbler31 joined #sbcl 2017-12-06T22:55:14Z Jesin quit (Quit: Leaving) 2017-12-06T22:57:44Z dougk quit (Ping timeout: 252 seconds) 2017-12-06T23:10:34Z nyef`: Can we end up in interrupt_handle_pending() if foreign_function_call_active is set? 2017-12-06T23:10:53Z sjl quit (Ping timeout: 250 seconds) 2017-12-06T23:11:21Z stassats: can as in, is it permissible? 2017-12-06T23:11:34Z Bike joined #sbcl 2017-12-06T23:11:37Z nyef`: That, or "is it possible?" 2017-12-06T23:11:55Z nyef`: Well, possible without someone playing sillybuggers, that is. 2017-12-06T23:12:18Z stassats: see gc_heap_exhausted_error_or_lose 2017-12-06T23:15:16Z karswell joined #sbcl 2017-12-06T23:15:35Z nyef`: Interesting potentially-nasty case. 2017-12-06T23:15:40Z nyef`: Any other ways? 2017-12-06T23:16:08Z stassats: don't think so 2017-12-06T23:16:12Z nyef`: Okay, thanks. 2017-12-06T23:16:47Z _rumbler31 joined #sbcl 2017-12-06T23:18:44Z rumbler31 quit (Ping timeout: 255 seconds) 2017-12-06T23:21:23Z _rumbler31 quit (Ping timeout: 252 seconds) 2017-12-06T23:22:48Z corci: Yippee, build fixed! 2017-12-06T23:22:49Z corci: Project sbcl-master » 5,ubuntu_trusty_32bit build #2703: FIXED in 1 hr 8 min: http://ci.cor-lab.de/job/sbcl-master/featureset=5,label=ubuntu_trusty_32bit/2703/ 2017-12-06T23:35:03Z dougk joined #sbcl 2017-12-06T23:41:19Z corci: Yippee, build fixed! 2017-12-06T23:41:20Z corci: Project sbcl-master » 6,ubuntu_trusty_64bit build #2703: FIXED in 1 hr 27 min: http://ci.cor-lab.de/job/sbcl-master/featureset=6,label=ubuntu_trusty_64bit/2703/ 2017-12-06T23:44:17Z smurfrobot joined #sbcl 2017-12-06T23:49:26Z smurfrobot quit (Ping timeout: 276 seconds) 2017-12-06T23:53:47Z dougk quit (Ping timeout: 250 seconds) 2017-12-06T23:55:38Z rgrau quit (Ping timeout: 255 seconds) 2017-12-07T00:02:41Z cryptomarauder[m joined #sbcl 2017-12-07T00:12:09Z cromachina joined #sbcl 2017-12-07T00:18:25Z Kevslinger quit (Quit: Connection closed for inactivity) 2017-12-07T00:22:11Z awolven quit (Remote host closed the connection) 2017-12-07T00:22:47Z awolven joined #sbcl 2017-12-07T00:27:08Z awolven quit (Ping timeout: 255 seconds) 2017-12-07T00:42:16Z hydan quit (Quit: Connection closed for inactivity) 2017-12-07T01:07:11Z dougk joined #sbcl 2017-12-07T01:16:38Z stassats quit (Ping timeout: 255 seconds) 2017-12-07T01:19:37Z nyef` sighs. 2017-12-07T01:20:11Z nyef`: I have my paws on an interrupt context known to LDB that has been completely ignored by GC. 2017-12-07T01:45:42Z smurfrobot joined #sbcl 2017-12-07T02:03:25Z smurfrobot quit (Ping timeout: 268 seconds) 2017-12-07T02:23:02Z nyef`: It's the first GC after creating all of the threads, it's the thread calling POST_GC. 2017-12-07T02:23:54Z nyef`: It's the thread that did the collection... 2017-12-07T02:24:44Z nyef`: It took a PIT stop to get here from GC_NONE, so it must've been coming out of WITHOUT-GCING. 2017-12-07T02:27:45Z Kevslinger joined #sbcl 2017-12-07T02:44:31Z awolven joined #sbcl 2017-12-07T02:46:34Z dougk quit (Ping timeout: 264 seconds) 2017-12-07T02:48:43Z dougk joined #sbcl 2017-12-07T02:58:05Z nyef`: It never returned from the PIT stop, didn't enter maybe_gc()... 2017-12-07T02:58:53Z nyef`: ... my local changes go to the trouble of definitely establishing the interrupt context. 2017-12-07T03:00:31Z nyef`: ... And gdb can't actually backtrace far enough to get to the original context. Lovely. 2017-12-07T03:15:17Z karswell quit (Read error: No route to host) 2017-12-07T03:15:20Z karswell_ joined #sbcl 2017-12-07T03:17:39Z pfdietz joined #sbcl 2017-12-07T03:24:57Z awolven quit (Remote host closed the connection) 2017-12-07T03:25:31Z awolven joined #sbcl 2017-12-07T03:30:02Z awolven quit (Ping timeout: 255 seconds) 2017-12-07T03:57:10Z dougk_ joined #sbcl 2017-12-07T04:00:39Z shka joined #sbcl 2017-12-07T04:01:05Z dougk quit (Ping timeout: 248 seconds) 2017-12-07T04:40:07Z corci: Project sbcl-master-windows » Windows_7_64bit build #1520: FAILURE in 29 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_64bit/1520/ 2017-12-07T04:44:06Z awolven joined #sbcl 2017-12-07T04:48:47Z awolven quit (Ping timeout: 258 seconds) 2017-12-07T05:09:56Z corci: Yippee, build fixed! 2017-12-07T05:09:57Z corci: Project sbcl-master-windows » Windows_7_64bit build #1521: FIXED in 29 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_64bit/1521/ 2017-12-07T05:20:26Z corci: Project sbcl-master » without-unicode,ubuntu_trusty_32bit build #2704: FAILURE in 5 hr 23 min: http://ci.cor-lab.de/job/sbcl-master/featureset=without-unicode,label=ubuntu_trusty_32bit/2704/ 2017-12-07T05:22:50Z smurfrobot joined #sbcl 2017-12-07T05:28:22Z smurfrobot quit (Ping timeout: 255 seconds) 2017-12-07T05:56:31Z dougk_ quit (Ping timeout: 268 seconds) 2017-12-07T06:00:35Z awolven joined #sbcl 2017-12-07T06:03:02Z Bike quit (Quit: Lost terminal) 2017-12-07T06:03:03Z dougk joined #sbcl 2017-12-07T06:05:16Z awolven quit (Ping timeout: 255 seconds) 2017-12-07T06:15:19Z corci: Yippee, build fixed! 2017-12-07T06:15:20Z corci: Project sbcl-master » without-unicode,ubuntu_trusty_32bit build #2705: FIXED in 50 min: http://ci.cor-lab.de/job/sbcl-master/featureset=without-unicode,label=ubuntu_trusty_32bit/2705/ 2017-12-07T06:18:38Z Kevslinger quit (Quit: Connection closed for inactivity) 2017-12-07T06:45:51Z dougk quit (Ping timeout: 268 seconds) 2017-12-07T06:57:16Z karswell_ quit (Ping timeout: 260 seconds) 2017-12-07T06:59:53Z oleo quit (Quit: Leaving) 2017-12-07T07:12:20Z scymtym quit (Ping timeout: 255 seconds) 2017-12-07T07:33:30Z corci quit (Remote host closed the connection) 2017-12-07T07:38:21Z awolven joined #sbcl 2017-12-07T07:42:55Z awolven quit (Ping timeout: 255 seconds) 2017-12-07T07:46:26Z smurfrobot joined #sbcl 2017-12-07T08:00:56Z smurfrobot quit (Remote host closed the connection) 2017-12-07T08:01:37Z shka quit (Ping timeout: 248 seconds) 2017-12-07T08:12:51Z smurfrobot joined #sbcl 2017-12-07T08:17:44Z smurfrobot quit (Ping timeout: 276 seconds) 2017-12-07T08:26:37Z scymtym joined #sbcl 2017-12-07T08:31:59Z White_Flame quit (Ping timeout: 248 seconds) 2017-12-07T08:41:34Z corci joined #sbcl 2017-12-07T08:44:51Z smurfrobot joined #sbcl 2017-12-07T08:46:12Z smurfrobot quit (Remote host closed the connection) 2017-12-07T08:56:11Z Xof: yippee! 2017-12-07T09:20:32Z awolven joined #sbcl 2017-12-07T09:25:10Z awolven quit (Ping timeout: 258 seconds) 2017-12-07T09:38:38Z specbot quit (Remote host closed the connection) 2017-12-07T09:38:38Z smurfrobot joined #sbcl 2017-12-07T09:38:45Z specbot joined #sbcl 2017-12-07T09:39:54Z smurfrobot quit (Remote host closed the connection) 2017-12-07T09:51:43Z BitPuffin|osx joined #sbcl 2017-12-07T10:07:30Z jibanes quit (Ping timeout: 268 seconds) 2017-12-07T10:09:11Z jibanes joined #sbcl 2017-12-07T10:10:14Z rgrau joined #sbcl 2017-12-07T10:23:47Z stassats joined #sbcl 2017-12-07T10:25:19Z stassats: trying to come up with a name for a cast subclass that would check for constant data, MODIFYING-CAST, DESTROYER-CAST, NON-CONSTANT-CAST 2017-12-07T10:27:08Z corci: Project sbcl-master » clisp,ubuntu_trusty_32bit build #2705: FAILURE in 5 hr 2 min: http://ci.cor-lab.de/job/sbcl-master/featureset=clisp,label=ubuntu_trusty_32bit/2705/ 2017-12-07T10:27:13Z corci: Project sbcl-master » fasteval,ubuntu_trusty_64bit build #2705: FAILURE in 5 hr 2 min: http://ci.cor-lab.de/job/sbcl-master/featureset=fasteval,label=ubuntu_trusty_64bit/2705/ 2017-12-07T10:28:03Z stassats: (WAIT-ON-SEMAPHORE SEMAPHORE-NOTIFICATION) appears to be hangy 2017-12-07T10:30:43Z awolven joined #sbcl 2017-12-07T10:34:51Z awolven quit (Ping timeout: 240 seconds) 2017-12-07T10:37:12Z BitPuffin|osx quit (Remote host closed the connection) 2017-12-07T10:42:46Z stassats: anything checks done by ir1-optimize-combination should be transformed into some sort of annotations 2017-12-07T10:43:27Z stassats: (defun foo (x y) (the sequence (delete x y)) 10) => no warning about ignoring the result 2017-12-07T10:47:57Z scymtym: stassats: re (WAIT-ON-SEMAPHORE SEMAPHORE-NOTIFICATION): that has been the case since forever. see https://bugs.launchpad.net/sbcl/+bug/1038034 2017-12-07T10:49:29Z corci: Project sbcl-master » fancy,ubuntu_trusty_64bit build #2705: FAILURE in 5 hr 24 min: http://ci.cor-lab.de/job/sbcl-master/featureset=fancy,label=ubuntu_trusty_64bit/2705/ 2017-12-07T10:51:05Z stassats: is it still a legitimate test? 2017-12-07T10:52:46Z scymtym: iirc, the test is not async-unwind safe and the (unresolved) discussion was whether to make the condition variable functions more forgiving or change the test 2017-12-07T10:54:13Z stassats: ideally, i would prefer to be able to interrupt a thread waiting on something and abort it 2017-12-07T11:08:21Z sjl joined #sbcl 2017-12-07T11:09:05Z scymtym: if i'm not mistaken, the problem was that CONDITION-WAIT, if interrupted, can first get the mutex but then fail to wake other waiters on its way out 2017-12-07T11:12:27Z sjl quit (Ping timeout: 240 seconds) 2017-12-07T11:14:50Z m00natic joined #sbcl 2017-12-07T11:37:08Z stassats: scymtym: but there is (wait-on-semaphore semaphore-notification :lp-1038034), it does the same job 2017-12-07T11:37:15Z stassats: or i think it does 2017-12-07T11:39:11Z stassats: in a non-hangy way 2017-12-07T11:41:25Z stassats: i'll remove it 2017-12-07T11:42:32Z scymtym: yeah, seems like pkhuong extracted that from the discussion in lp#1038034 2017-12-07T11:43:49Z stassats: (wait-on-semaphore semaphore-notification :lp-1038034) tends to intermittently succeed, but that's better than locking up 2017-12-07T11:45:52Z awolven joined #sbcl 2017-12-07T11:50:29Z awolven quit (Ping timeout: 252 seconds) 2017-12-07T11:58:55Z Bike joined #sbcl 2017-12-07T11:59:07Z scymtym: the basic issue is the same but it is handled more gracefully 2017-12-07T12:02:51Z milanj quit (Quit: This computer has gone to sleep) 2017-12-07T12:08:59Z BitPuffin|osx joined #sbcl 2017-12-07T12:12:12Z corci quit (Ping timeout: 240 seconds) 2017-12-07T12:12:17Z stassats quit (Ping timeout: 248 seconds) 2017-12-07T12:12:27Z corci joined #sbcl 2017-12-07T12:13:10Z Bike is now known as Bicyclidine 2017-12-07T12:18:34Z milanj joined #sbcl 2017-12-07T12:23:04Z corci quit (Remote host closed the connection) 2017-12-07T12:25:09Z corci joined #sbcl 2017-12-07T12:30:07Z dougk joined #sbcl 2017-12-07T12:31:21Z corci quit (Remote host closed the connection) 2017-12-07T12:33:41Z corci joined #sbcl 2017-12-07T12:37:34Z corci quit (Remote host closed the connection) 2017-12-07T12:39:42Z corci joined #sbcl 2017-12-07T12:46:51Z corci quit (Ping timeout: 250 seconds) 2017-12-07T12:50:01Z corci joined #sbcl 2017-12-07T13:02:52Z awolven joined #sbcl 2017-12-07T13:07:11Z awolven quit (Ping timeout: 240 seconds) 2017-12-07T13:38:57Z stassats joined #sbcl 2017-12-07T13:42:56Z Bike joined #sbcl 2017-12-07T13:58:51Z awolven joined #sbcl 2017-12-07T14:03:35Z awolven quit (Ping timeout: 252 seconds) 2017-12-07T14:06:14Z awolven joined #sbcl 2017-12-07T14:22:57Z sjl joined #sbcl 2017-12-07T14:25:50Z GreaseMonkey quit (Remote host closed the connection) 2017-12-07T14:27:16Z greaser|q joined #sbcl 2017-12-07T14:28:14Z dougk quit (Read error: Connection reset by peer) 2017-12-07T14:28:32Z dougk joined #sbcl 2017-12-07T14:28:45Z cromachina quit (Quit: Leaving) 2017-12-07T14:48:26Z sjl quit (*.net *.split) 2017-12-07T14:48:27Z ym quit (*.net *.split) 2017-12-07T14:48:27Z dwts quit (*.net *.split) 2017-12-07T14:48:28Z pkhuong quit (*.net *.split) 2017-12-07T14:48:28Z gingerale quit (*.net *.split) 2017-12-07T14:48:28Z greaser|q quit (*.net *.split) 2017-12-07T14:48:28Z BitPuffin|osx quit (*.net *.split) 2017-12-07T14:48:31Z adlai quit (*.net *.split) 2017-12-07T14:48:31Z corci quit (*.net *.split) 2017-12-07T14:48:33Z joshe quit (*.net *.split) 2017-12-07T14:48:33Z les quit (*.net *.split) 2017-12-07T14:48:34Z salva quit (*.net *.split) 2017-12-07T14:48:34Z easye quit (*.net *.split) 2017-12-07T14:48:35Z Colleen quit (*.net *.split) 2017-12-07T14:48:37Z MetaYan quit (*.net *.split) 2017-12-07T14:48:37Z irsol quit (*.net *.split) 2017-12-07T14:48:38Z jrm quit (*.net *.split) 2017-12-07T14:48:39Z myrkraverk quit (*.net *.split) 2017-12-07T14:48:39Z fortitude quit (*.net *.split) 2017-12-07T14:48:39Z carvite quit (*.net *.split) 2017-12-07T14:48:39Z gendl quit (*.net *.split) 2017-12-07T14:48:40Z ave1 quit (*.net *.split) 2017-12-07T14:48:40Z rgrau quit (*.net *.split) 2017-12-07T14:48:40Z jibanes quit (*.net *.split) 2017-12-07T14:48:41Z _8hzp quit (*.net *.split) 2017-12-07T14:48:41Z _death quit (*.net *.split) 2017-12-07T14:48:42Z brucem quit (*.net *.split) 2017-12-07T14:48:42Z |3b| quit (*.net *.split) 2017-12-07T14:48:44Z dougk quit (*.net *.split) 2017-12-07T14:48:45Z tonton quit (*.net *.split) 2017-12-07T14:48:45Z jackdaniel quit (*.net *.split) 2017-12-07T14:48:46Z stassats quit (*.net *.split) 2017-12-07T14:48:47Z Posterdati quit (*.net *.split) 2017-12-07T14:48:49Z mood quit (*.net *.split) 2017-12-07T14:48:49Z flip214 quit (*.net *.split) 2017-12-07T14:48:49Z jyc quit (*.net *.split) 2017-12-07T14:48:49Z Bike quit (*.net *.split) 2017-12-07T14:48:50Z xristos quit (*.net *.split) 2017-12-07T14:48:50Z malm quit (*.net *.split) 2017-12-07T14:48:51Z p_l quit (*.net *.split) 2017-12-07T14:48:52Z kini quit (*.net *.split) 2017-12-07T14:48:52Z Shinmera quit (*.net *.split) 2017-12-07T14:48:52Z DGASAU quit (*.net *.split) 2017-12-07T14:48:52Z nimiux quit (*.net *.split) 2017-12-07T14:48:53Z jdz quit (*.net *.split) 2017-12-07T14:48:54Z leah2 quit (*.net *.split) 2017-12-07T14:48:54Z fe[nl]ix quit (*.net *.split) 2017-12-07T14:48:54Z Blkt quit (*.net *.split) 2017-12-07T14:48:54Z minion quit (*.net *.split) 2017-12-07T14:48:55Z sigjuice quit (*.net *.split) 2017-12-07T14:48:55Z stylewarning quit (*.net *.split) 2017-12-07T14:48:55Z alandipert quit (*.net *.split) 2017-12-07T14:48:55Z shaftoe quit (*.net *.split) 2017-12-07T14:52:14Z sjl joined #sbcl 2017-12-07T14:52:14Z ym joined #sbcl 2017-12-07T14:52:14Z dwts joined #sbcl 2017-12-07T14:52:14Z pkhuong joined #sbcl 2017-12-07T14:52:14Z gingerale joined #sbcl 2017-12-07T14:52:29Z cryptomarauder[m quit (Ping timeout: 255 seconds) 2017-12-07T14:53:30Z christoph_debian quit (Ping timeout: 246 seconds) 2017-12-07T14:55:03Z stylewarning joined #sbcl 2017-12-07T14:55:03Z alandipert joined #sbcl 2017-12-07T14:55:04Z sigjuice joined #sbcl 2017-12-07T14:55:04Z shaftoe joined #sbcl 2017-12-07T14:55:04Z minion joined #sbcl 2017-12-07T14:55:04Z Blkt joined #sbcl 2017-12-07T14:55:04Z fe[nl]ix joined #sbcl 2017-12-07T14:55:04Z leah2 joined #sbcl 2017-12-07T14:55:04Z jdz joined #sbcl 2017-12-07T14:55:04Z jyc joined #sbcl 2017-12-07T14:55:04Z flip214 joined #sbcl 2017-12-07T14:55:04Z mood joined #sbcl 2017-12-07T14:55:04Z Posterdati joined #sbcl 2017-12-07T14:55:04Z stassats joined #sbcl 2017-12-07T14:55:04Z dougk joined #sbcl 2017-12-07T14:55:04Z greaser|q joined #sbcl 2017-12-07T14:55:04Z corci joined #sbcl 2017-12-07T14:55:04Z BitPuffin|osx joined #sbcl 2017-12-07T14:55:04Z rgrau joined #sbcl 2017-12-07T14:55:04Z jibanes joined #sbcl 2017-12-07T14:55:04Z adlai joined #sbcl 2017-12-07T14:55:04Z salva joined #sbcl 2017-12-07T14:55:04Z les joined #sbcl 2017-12-07T14:55:04Z joshe joined #sbcl 2017-12-07T14:55:04Z jrm joined #sbcl 2017-12-07T14:55:04Z Colleen joined #sbcl 2017-12-07T14:55:04Z myrkraverk joined #sbcl 2017-12-07T14:55:04Z tonton joined #sbcl 2017-12-07T14:55:04Z fortitude joined #sbcl 2017-12-07T14:55:04Z easye joined #sbcl 2017-12-07T14:55:04Z _8hzp joined #sbcl 2017-12-07T14:55:04Z kini joined #sbcl 2017-12-07T14:55:04Z jackdaniel joined #sbcl 2017-12-07T14:55:04Z carvite joined #sbcl 2017-12-07T14:55:04Z Shinmera joined #sbcl 2017-12-07T14:55:04Z DGASAU joined #sbcl 2017-12-07T14:55:04Z gendl joined #sbcl 2017-12-07T14:55:04Z irsol joined #sbcl 2017-12-07T14:55:04Z MetaYan joined #sbcl 2017-12-07T14:55:04Z ave1 joined #sbcl 2017-12-07T14:55:04Z _death joined #sbcl 2017-12-07T14:55:04Z |3b| joined #sbcl 2017-12-07T14:55:04Z brucem joined #sbcl 2017-12-07T14:55:04Z xristos joined #sbcl 2017-12-07T14:55:04Z nimiux joined #sbcl 2017-12-07T14:55:04Z malm joined #sbcl 2017-12-07T14:55:04Z p_l joined #sbcl 2017-12-07T14:55:07Z angular_mike quit (Max SendQ exceeded) 2017-12-07T14:58:56Z angular_mike joined #sbcl 2017-12-07T15:08:51Z christoph_debian joined #sbcl 2017-12-07T15:15:06Z rmbler31 joined #sbcl 2017-12-07T15:15:21Z rmbler31 quit (Client Quit) 2017-12-07T15:15:56Z rmbler31 joined #sbcl 2017-12-07T15:16:15Z Bike joined #sbcl 2017-12-07T15:18:04Z rmbler31 quit (Client Quit) 2017-12-07T15:18:13Z pfdietz quit 2017-12-07T15:20:29Z oleo joined #sbcl 2017-12-07T15:20:41Z oleo quit (Changing host) 2017-12-07T15:20:41Z oleo joined #sbcl 2017-12-07T15:21:47Z White_Flame joined #sbcl 2017-12-07T15:22:31Z otwieracz joined #sbcl 2017-12-07T15:25:15Z Kevslinger joined #sbcl 2017-12-07T15:26:48Z _rumbler31_ joined #sbcl 2017-12-07T15:33:08Z cryptomarauder[m joined #sbcl 2017-12-07T15:48:38Z corci: Project sbcl-master » clisp,ubuntu_trusty_64bit build #2707: FAILURE in 1 hr 4 min: http://ci.cor-lab.de/job/sbcl-master/featureset=clisp,label=ubuntu_trusty_64bit/2707/ 2017-12-07T16:18:44Z dougk quit (Ping timeout: 268 seconds) 2017-12-07T16:30:36Z stassats` joined #sbcl 2017-12-07T16:37:20Z stassats: found another issue of zombie casts, by hand 2017-12-07T16:37:30Z stassats: how did it not cause any issues before? 2017-12-07T16:38:01Z stassats quit (Quit: ERC (IRC client for Emacs 25.1.2)) 2017-12-07T16:39:41Z cryptomarauder[m quit (Ping timeout: 255 seconds) 2017-12-07T16:50:55Z stassats`: find-dfo causes results in flush-node being called in a cast, but it's not deleted 2017-12-07T16:52:25Z stassats`: and it did not cause any issues because it comes from eliminate-dead-code, which is new 2017-12-07T16:56:41Z nyef`: Games and fun, huh? 2017-12-07T16:57:16Z stassats`: sticking flush-dead-code into clean-component seems to help 2017-12-07T16:57:34Z nyef`: Is there some way that I could have known about this possibility when I wrote eliminate-dead-code? 2017-12-07T16:57:47Z stassats`: and my fix from the other day should fall off with that 2017-12-07T16:59:13Z stassats`: nyef`: well, have you had known that no casts with unused lvars should reach ir2-convert? 2017-12-07T17:00:48Z stassats`: and today is yet another day of yak shaving 2017-12-07T17:01:30Z stassats`: started of trying to attach information to casts like "constant-modification", transitioned into merging (the fixnum (the (integer 1) x)) into a single cast 2017-12-07T17:01:42Z stassats`: and ended up in dead code elimination 2017-12-07T17:01:59Z nyef`: That's probably a reasonable assumption. The less-reasonable thing is probably that specifying "delete this" doesn't behave as required. 2017-12-07T17:02:24Z pfdietz joined #sbcl 2017-12-07T17:03:15Z stassats`: and i'm more excited for changing a comment from ;; Pathwise removing of CAST to ;; Turn (the vector (if x y #()) into (if x (the vector y) #()) 2017-12-07T17:03:25Z stassats`: who would've thought that that's what it does... 2017-12-07T17:03:44Z smurfrobot joined #sbcl 2017-12-07T17:04:01Z nyef`: Heh. "Show, don't tell" strikes again. (-: 2017-12-07T17:04:29Z stassats`: and i had seen the results of that operation recently, now i know where that happens 2017-12-07T17:06:10Z stassats`: and it doesn't actually remove the cast, just reroutes things, so it was quite confusing 2017-12-07T17:06:25Z pfdietz: Would it be helpful to generate tests by adding casts that are valid for execution of the code on a particular set of inputs? 2017-12-07T17:07:09Z stassats`: if i knew what would be helpful i would know where it would fail and thus fix it 2017-12-07T17:07:25Z stassats`: so, no idea whether it would fail or not 2017-12-07T17:07:39Z stassats`: but i'm nuking empty casts for real this time 2017-12-07T17:08:06Z stassats`: and resisting an insensitive joke 2017-12-07T17:08:47Z smurfrobot quit (Ping timeout: 276 seconds) 2017-12-07T17:10:03Z stassats`: though there's no guarantee that calling flush-dead-code from clean-component is not going to fail 2017-12-07T17:13:19Z stassats`: flush-dead-code can make more blocks dead, but checking it in a loop isn't nice 2017-12-07T17:13:47Z pfdietz quit (Ping timeout: 250 seconds) 2017-12-07T17:16:46Z Jesin joined #sbcl 2017-12-07T17:20:39Z stassats`: right, that happily fails, a label has no position 2017-12-07T17:22:55Z pfdietz joined #sbcl 2017-12-07T17:26:47Z stassats`: something bad happens to the IR, huh 2017-12-07T17:31:52Z stassats`: flush-dead-code blows off tail calls, nice 2017-12-07T17:33:23Z stassats`: an easy fix 2017-12-07T17:38:29Z pfdietz quit (Quit: Bye) 2017-12-07T17:43:51Z stassats`: i guess looping over all flushable blocks in clean-component is wasteful, adding thoroughly-clean-component, and running it after the last clean-component 2017-12-07T17:46:03Z stassats`: hopefully, it'll also result in better code output, not just stopping a crash 2017-12-07T17:52:19Z cryptomarauder[m joined #sbcl 2017-12-07T17:58:34Z leah2 quit (Ping timeout: 264 seconds) 2017-12-07T18:04:47Z leah2 joined #sbcl 2017-12-07T18:05:10Z cryptomarauder[m quit (Remote host closed the connection) 2017-12-07T18:05:19Z shka joined #sbcl 2017-12-07T18:06:15Z m00natic quit (Remote host closed the connection) 2017-12-07T18:09:25Z rgrau quit (Ping timeout: 252 seconds) 2017-12-07T18:14:48Z dougk joined #sbcl 2017-12-07T18:35:27Z cryptomarauder[m joined #sbcl 2017-12-07T18:44:31Z BitPuffin|osx quit (Ping timeout: 240 seconds) 2017-12-07T19:01:15Z smurfrobot joined #sbcl 2017-12-07T19:04:53Z fortitude: nyef`: did you mean to ignore the parameter in CURRENT_THREAD_VAR(name) in e14e308174b51442fcb82df514d075bea028440f? 2017-12-07T19:06:49Z nyef`: fortitude: No, I didn't. Good catch. 2017-12-07T19:08:34Z nyef`: Will fix. 2017-12-07T19:12:19Z emaczen joined #sbcl 2017-12-07T19:12:49Z emaczen: What does "No more immobile pages available" and how can I resolve this error that I am getting? 2017-12-07T19:12:54Z nyef`: Doing a check-build now. 2017-12-07T19:13:16Z stassats`: emaczen: too much code 2017-12-07T19:14:08Z emaczen: stassats`: Will you elaborate? 2017-12-07T19:14:30Z stassats`: you have more code than it can chew 2017-12-07T19:15:30Z fortitude: is there a known fix for getting "The variable *TARGET-OBJECT-FILE-NAMES* is unbound." during a build? I used to get that error prior to 1.4.2 with a fresh checkout 2017-12-07T19:15:59Z emaczen: stassats: Is there a simple fix? 2017-12-07T19:17:33Z emaczen: It sounds like a memory issue? 2017-12-07T19:17:50Z emaczen: Maybe a stack size issue? 2017-12-07T19:17:51Z stassats`: emaczen: not really (simple fix) 2017-12-07T19:18:08Z emaczen: Is it a stack size issue for function evaluation? 2017-12-07T19:18:09Z stassats`: besides disabling immobile code 2017-12-07T19:18:22Z stassats`: no, no stack 2017-12-07T19:18:26Z dougk quit (Ping timeout: 255 seconds) 2017-12-07T19:18:30Z emaczen: Why can't it "chew" the code then? 2017-12-07T19:18:46Z stassats`: then? 2017-12-07T19:19:15Z emaczen: stassats`: I'm getting this during a computation 2017-12-07T19:19:34Z dougk joined #sbcl 2017-12-07T19:19:36Z stassats`: some other objects are also immobile, symbols 2017-12-07T19:19:44Z nyef`: emaczen: Rebuild your SBCL with --without-immobile-code and the problem should change expression, possibly even vanish. 2017-12-07T19:19:44Z stassats`: and class layouts 2017-12-07T19:19:44Z emaczen: I need a little more detail about why it can't chew the code. 2017-12-07T19:19:59Z emaczen: what is the purpose of immobile-code? 2017-12-07T19:20:08Z stassats`: to immobilize code 2017-12-07T19:20:17Z stassats`: and some other stuff, but code takes up the most space 2017-12-07T19:20:18Z emaczen: What is mobile code? 2017-12-07T19:20:27Z stassats`: code that can move 2017-12-07T19:20:36Z nyef`: Immobile objects, particularly code, provide certain optimization opportunities, apparently? 2017-12-07T19:21:10Z nyef`: Probably stuff like not needing as much indirection, or not needing as much attention from the GC, or not having to store relocation information. That kind of thing. 2017-12-07T19:21:58Z emaczen: Under what conditions does code typically move? 2017-12-07T19:21:59Z nyef`: fortitude: Fix pushed, and thank you. 2017-12-07T19:22:17Z stassats`: emaczen: when nothing pins it 2017-12-07T19:22:33Z fortitude: make-host-2.lisp doesn't have a DEFPARAMETER for *target-object-file-names*, even though it uses it 2017-12-07T19:22:33Z emaczen: pins? 2017-12-07T19:22:52Z stassats`: you know, like a safety pin 2017-12-07T19:22:58Z nyef`: The garbage collector is permitted to relocate code when there are no direct references to it from any "interrupt context" or from the stack. 2017-12-07T19:23:01Z fortitude: but that's not new, so I'm not sure why that would start causing a problem now 2017-12-07T19:23:46Z nyef`: fortitude: It's from src/cold/compile-cold-sbcl.lisp ? 2017-12-07T19:23:57Z DGASAU quit (Ping timeout: 240 seconds) 2017-12-07T19:24:05Z stassats`: there should be 104 MB for code, though, which is a lot 2017-12-07T19:24:40Z nyef`: 104 MB isn't a lot if you're doing automatic code generation. 2017-12-07T19:25:00Z emaczen: Will we define "code" for this context? I just keeping thinking of the lisp code that I write. 2017-12-07T19:25:12Z DGASAU joined #sbcl 2017-12-07T19:26:18Z nyef`: SIMPLE-FUN objects and their enclosing COMPONENTs. 2017-12-07T19:26:19Z fortitude: nyef`: yep, although make-host-2.sh also loads make-host-2.lisp directly (not sure if that's where it's unbound, though) 2017-12-07T19:31:42Z pkhuong: emaczen: machine code. 2017-12-07T19:32:10Z nyef`: Hrm. I haven't a scooby how you're getting that error. 2017-12-07T19:33:31Z cryptomarauder[m quit (Ping timeout: 246 seconds) 2017-12-07T19:37:02Z stassats`: fortitude: your build is broken, that's why *target-object-file-names* is undefined 2017-12-07T19:40:10Z fortitude: ah-ha, may have found it: unable to rename coerce.lisp-obj-tmp -> coerce.lisp-obj because the file already exists 2017-12-07T19:44:16Z josemanuel joined #sbcl 2017-12-07T19:45:19Z smurfrobot quit (Remote host closed the connection) 2017-12-07T19:45:38Z smurfrobot joined #sbcl 2017-12-07T19:50:23Z karswell_ joined #sbcl 2017-12-07T19:52:56Z dougk: emaczen: the immobile pages can be configured in compiler/x86-64/parms. add ":varyobj-space-size a-large-number" to gencgc-space-setup 2017-12-07T19:53:35Z jack_rabbit quit (Ping timeout: 248 seconds) 2017-12-07T19:55:13Z milanj quit (Quit: This computer has gone to sleep) 2017-12-07T19:56:41Z corci: Project sbcl-master-windows » Windows_7_64bit build #1527: FAILURE in 31 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_64bit/1527/ 2017-12-07T19:57:08Z nyef`: ... What? 2017-12-07T19:57:44Z stassats`: Failure: type.pure.lisp / (TYPE-DERIVATION LOGICAL-OPERATIONS SCALING) bogus timings 2017-12-07T19:58:04Z stassats`: maybe internal-run-time is broken on win32, need to check 2017-12-07T19:59:09Z nyef`: Okay, I was fairly sure that it wasn't my change that broke it, but the failure notice when that was the only change was an unpleasant surprise. 2017-12-07T20:06:37Z jack_rabbit joined #sbcl 2017-12-07T20:38:19Z shka quit (Ping timeout: 252 seconds) 2017-12-07T20:40:24Z fortitude: hmm, subsequent builds seem to be having similar errors in non-deterministic places 2017-12-07T20:40:35Z awolven quit (Remote host closed the connection) 2017-12-07T20:41:32Z nyef`: fortitude: When was the last time you ran make.sh, make-config.sh, or clean.sh? 2017-12-07T20:41:48Z fortitude: I've been building with make.sh each time, so just recently 2017-12-07T20:42:23Z milanj joined #sbcl 2017-12-07T20:46:46Z fortitude: I'm wondering if this is maybe windows "deleting" a file and returning while it's dir entry is still ive 2017-12-07T20:47:17Z nyef`: Or the "can't delete an open file" thing? 2017-12-07T20:49:40Z stassats`: merging (the fixnum (the (integer 1) x)) kinda works, but i shouldn't be creating chained casts in the first place 2017-12-07T20:51:01Z stassats`: that means modifying fndb again 2017-12-07T20:52:09Z fortitude: nyef`: both; if a file is still open when it's deleted, windows just marks it as "deleted" and calls it good; the dirent is still around until the last handle to it is closed 2017-12-07T20:52:14Z smurfrobot quit (Remote host closed the connection) 2017-12-07T20:52:33Z fortitude: but I'm not sure why the file would still be open 2017-12-07T20:53:46Z nyef`: fortitude: Hunh. I know that a posix system would keep the inode around until the last handle closes, but it would at least purge the dirent. 2017-12-07T20:56:58Z fortitude: nyef`: it turns out to be basically impossible to do that on windows, which makes installers an absolute nightmare with multiple users 2017-12-07T20:58:41Z stassats`: this used to happen in the past 2017-12-07T20:58:47Z stassats`: thought it's been fixed 2017-12-07T20:59:01Z nyef`: Maybe it got un-fixed? 2017-12-07T20:59:23Z stassats`: never seen in my w10 vm 2017-12-07T20:59:47Z stassats`: don't remember where i've seen it before, w8 or w7 2017-12-07T21:00:37Z fortitude: I've seen it on both win10 and win7 prior to 1.4.2 (can't remember if it happened after 1.4.1) 2017-12-07T21:01:05Z stassats`: there wouldn't be any difference in that regard 2017-12-07T21:01:14Z dougk quit (Ping timeout: 255 seconds) 2017-12-07T21:01:24Z nyef`: ... Wait, was this fixed within the past couple of months? 2017-12-07T21:01:48Z stassats`: i don't think so 2017-12-07T21:02:00Z stassats`: there was never a direct change addressing it 2017-12-07T21:07:04Z karswell_ is now known as karswell 2017-12-07T21:16:51Z fortitude: in principal, DeleteFile should fail if the file still has an open handle, since sbcl doesn't (afaik) open files with FILE_FLAG_SHARE_DELETE 2017-12-07T21:26:03Z corci: Yippee, build fixed! 2017-12-07T21:26:03Z corci: Project sbcl-master-windows » Windows_7_64bit build #1528: FIXED in 30 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_64bit/1528/ 2017-12-07T21:30:12Z awolven joined #sbcl 2017-12-07T21:37:59Z awolven quit (Remote host closed the connection) 2017-12-07T21:40:37Z awolven_ joined #sbcl 2017-12-07T21:43:01Z awolven_ quit (*.net *.split) 2017-12-07T21:43:02Z jdz quit (*.net *.split) 2017-12-07T21:43:02Z fe[nl]ix quit (*.net *.split) 2017-12-07T21:43:02Z Blkt quit (*.net *.split) 2017-12-07T21:43:02Z minion quit (*.net *.split) 2017-12-07T21:43:03Z sigjuice quit (*.net *.split) 2017-12-07T21:43:03Z stylewarning quit (*.net *.split) 2017-12-07T21:43:03Z alandipert quit (*.net *.split) 2017-12-07T21:43:03Z shaftoe quit (*.net *.split) 2017-12-07T21:43:22Z sigjuice joined #sbcl 2017-12-07T21:48:14Z awolven_ joined #sbcl 2017-12-07T21:48:14Z jdz joined #sbcl 2017-12-07T21:48:14Z fe[nl]ix joined #sbcl 2017-12-07T21:48:14Z Blkt joined #sbcl 2017-12-07T21:48:14Z minion joined #sbcl 2017-12-07T21:48:14Z shaftoe joined #sbcl 2017-12-07T21:48:14Z alandipert joined #sbcl 2017-12-07T21:48:14Z stylewarning joined #sbcl 2017-12-07T21:54:22Z corci: Yippee, build fixed! 2017-12-07T21:54:22Z corci: Project sbcl-master » without-threads,ubuntu_trusty_32bit build #2709: FIXED in 55 min: http://ci.cor-lab.de/job/sbcl-master/featureset=without-threads,label=ubuntu_trusty_32bit/2709/ 2017-12-07T21:54:43Z milanj quit (Quit: Leaving) 2017-12-07T22:05:25Z nyef`: Urgh. A 27-step description of "normal" GC triggering in safepoint. 2017-12-07T22:06:01Z nyef`: That's one thread, not in WITHOUT-GCING. 2017-12-07T22:08:04Z nyef`: And there are two more cases for a single thread before starting in on multiple threads. 2017-12-07T22:10:46Z sjl quit (Ping timeout: 260 seconds) 2017-12-07T22:19:05Z dougk joined #sbcl 2017-12-07T22:22:16Z pfdietz joined #sbcl 2017-12-07T22:26:31Z pfdietz quit (Ping timeout: 240 seconds) 2017-12-07T22:27:24Z fortitude: I think the file-rename issue is caused by virus scanners 2017-12-07T22:27:34Z fortitude: two successful builds in a row with Security Essentials' real-time stuff turned off 2017-12-07T22:27:57Z fortitude: that would imply the solution is probably to rename the file out of the way before it gets deleted 2017-12-07T22:30:08Z foom: yea, that definitely happens. 2017-12-07T22:30:18Z pfdietz joined #sbcl 2017-12-07T22:30:50Z foom: scanners open files with SHARE_DELETE, which lets you call DeleteFile, but the DeleteFile still only actually takes effect when the last handle to it is closed. 2017-12-07T22:32:02Z stassats`: fortitude: i have that disabled 2017-12-07T22:33:53Z fortitude: I just got the same failure again, so that's not the (whole) issue 2017-12-07T22:33:54Z Bike quit (Ping timeout: 260 seconds) 2017-12-07T22:34:17Z fortitude: I'll try the renaming trick 2017-12-07T22:36:58Z dougk quit (*.net *.split) 2017-12-07T22:36:58Z awolven_ quit (*.net *.split) 2017-12-07T22:36:58Z jdz quit (*.net *.split) 2017-12-07T22:36:59Z fe[nl]ix quit (*.net *.split) 2017-12-07T22:36:59Z Blkt quit (*.net *.split) 2017-12-07T22:36:59Z minion quit (*.net *.split) 2017-12-07T22:36:59Z stylewarning quit (*.net *.split) 2017-12-07T22:36:59Z alandipert quit (*.net *.split) 2017-12-07T22:37:00Z shaftoe quit (*.net *.split) 2017-12-07T22:41:46Z corci: Yippee, build fixed! 2017-12-07T22:41:47Z corci: Project sbcl-master » clisp,ubuntu_trusty_64bit build #2709: FIXED in 1 hr 42 min: http://ci.cor-lab.de/job/sbcl-master/featureset=clisp,label=ubuntu_trusty_64bit/2709/ 2017-12-07T22:42:05Z dougk joined #sbcl 2017-12-07T22:42:05Z awolven_ joined #sbcl 2017-12-07T22:42:05Z jdz joined #sbcl 2017-12-07T22:42:05Z fe[nl]ix joined #sbcl 2017-12-07T22:42:05Z Blkt joined #sbcl 2017-12-07T22:42:05Z minion joined #sbcl 2017-12-07T22:42:05Z shaftoe joined #sbcl 2017-12-07T22:42:05Z alandipert joined #sbcl 2017-12-07T22:42:05Z stylewarning joined #sbcl 2017-12-07T22:43:33Z fortitude: foom: as I understand it, if a file isn't initially opened with SHARE_DELETE, other processes should be able to specify it without getting a sharing violation 2017-12-07T22:43:57Z fortitude: or is that one of those things that works if you have high enough privileges? 2017-12-07T22:43:57Z fortitude: *shouldn't 2017-12-07T22:44:17Z pfdietz quit (Ping timeout: 240 seconds) 2017-12-07T22:44:24Z foom: if everyone else _does_ specify SHARE_DELETE (which scanners do), then you can delete the file 2017-12-07T22:44:35Z foom: but it doesn't actually get deleted until everyone has closed it 2017-12-07T22:46:40Z fortitude: oh right, that works if the scanner opens the file between sbcl closing the file and the delete/rename 2017-12-07T22:48:04Z foom: which is exactly what they tend to do -- open the file as soon as it's done being written 2017-12-07T22:51:58Z _rumbler31_ quit (Ping timeout: 246 seconds) 2017-12-07T22:57:20Z fortitude: and now I'm getting an inexplicable error opening the output file when compiling 2017-12-07T22:57:38Z pfdietz joined #sbcl 2017-12-07T23:01:52Z pfdietz quit (Ping timeout: 240 seconds) 2017-12-07T23:12:03Z Bicyclidine quit (Remote host closed the connection) 2017-12-07T23:13:44Z Bike joined #sbcl 2017-12-07T23:15:58Z dougk quit (Ping timeout: 264 seconds) 2017-12-07T23:18:14Z smurfrobot joined #sbcl 2017-12-07T23:22:00Z stassats`: flush-dead-code is deleting something else of value, sigh 2017-12-07T23:23:50Z smurfrobot quit (Ping timeout: 276 seconds) 2017-12-07T23:29:12Z stassats`: when do you stop optimization passes, ugh 2017-12-07T23:29:36Z stassats`: it leaves an collapses an IF, but it's too late to run ir1-optimize-if 2017-12-07T23:31:55Z stassats`: that's what, my fourth attempt at getting rid of CASTs 2017-12-07T23:34:21Z stassats`: ok, what if i give up on deleting a cast, since deleting a cast may result in deletion of a block, which may delete more casts, and so on 2017-12-07T23:35:22Z stassats`: requiring the whole ir1-phases, after which the stuff that results in the cast being deleted in the first places needs to be repeated 2017-12-07T23:35:40Z stassats`: and who knows when it'll rich a fixed point 2017-12-07T23:41:51Z jack_rabbit quit (Ping timeout: 248 seconds) 2017-12-07T23:50:15Z stassats`: a defeatist solution — unlinking unused casts in ltn-analyze-cast — seems to work 2017-12-07T23:56:13Z stassats`: too bad, now i know that the compiler is not doing a good job at deleting unused code, maybe i'll solve that one day 2017-12-07T23:56:15Z nyef`: And that kicks in before STACK analysis, thus avoiding any sort of cascading damage from that, right? 2017-12-07T23:56:55Z stassats`: my previous solution operated before stack-analyze 2017-12-07T23:57:21Z jack_rabbit joined #sbcl 2017-12-07T23:57:38Z stassats`: but after ltn-annotate, so IR2 and IR1 got out of sync 2017-12-07T23:57:50Z stassats`: doing before, IFs collapsed into a single sucessor 2017-12-07T23:58:42Z nyef`: I now have about 215 lines of text describing three single-threaded scenarios for safepoints. 2017-12-07T23:59:16Z stassats`: i usually try to solve an issue higher up the stream, so that an erroneous state doesn't reach the point where it can crash 2017-12-07T23:59:29Z stassats`: but all attempts have failed for unused casts 2017-12-07T23:59:55Z stassats`: only a boring, not-improving-anything solution works 2017-12-08T00:00:39Z nyef`: And I'm starting to think that this is not a particularly good approach, but I don't really have a better one at the moment. 2017-12-08T00:01:52Z stassats`: unlinking in ltn-analyze-cast? well, it's not good in general, but at this point the IR1 is not touched anymore 2017-12-08T00:02:05Z stassats`: some dead casts can linger around 2017-12-08T00:02:50Z nyef`: Maybe I can take this as "here are the baseline scenarios, now here's what can happen when additional threads are introduced". 2017-12-08T00:03:18Z stassats`: or you were talking about your thing 2017-12-08T00:04:51Z stassats`: i also don't like the arbitrary cut offs like *reoptimize-after-type-check-max* or *max-optimize-iterations* 2017-12-08T00:05:14Z stassats`: i want it to reach a fixed point 2017-12-08T00:05:47Z stassats`: type derivation can loop around, maybe stop derivation after some iterations, but continue with other stuff 2017-12-08T00:06:35Z stassats`: and bring physenv-analyze into ir1-phases, or some other superloop 2017-12-08T00:08:14Z stassats`: not like ir1-phases or ir1-optimize-until-done aren't broken otherwise 2017-12-08T00:08:16Z nyef`: ... More IR1 optimizations post-physenv analysis, possibly repeated physenv analysis? 2017-12-08T00:08:18Z stassats`: or the way we transform things 2017-12-08T00:08:54Z stassats`: i swear i'm going to start a new compiler one of these days 2017-12-08T00:08:57Z nyef`: I've never really been happy with the IR1 phases stuff, but I've also never understood it enough to be able to consider toplevel changes like that. 2017-12-08T00:09:17Z nyef`: Heh. You and me both. Probably at least one new compiler each. (-: 2017-12-08T00:10:12Z dougk joined #sbcl 2017-12-08T00:10:38Z stassats`: but seeing all the suboptimal things sbcl does helps avoid making the same mistakes 2017-12-08T00:10:50Z stassats`: so i shouldn't complain and absorb as much bad stuff as possible 2017-12-08T00:12:47Z stassats`: and i added FILLER_WIDETAG, no more silly dances trying to pick out an object to wiped non pinned ranges with 2017-12-08T00:12:58Z stassats`: and map-allocated-objects can ignore them, which is a bigger benefit 2017-12-08T00:14:56Z nyef`: Heh. There's another thing that you can do with FILLER_WIDETAG, if you can find them easily: Open an allocation region for it. 2017-12-08T00:15:30Z stassats`: that's a whole new can of worms 2017-12-08T00:15:36Z nyef`: Indeed. 2017-12-08T00:16:40Z nyef`: Actually, one of the reasons that I'm trying to get safepoint to actual usable shape is that I consider it to be a nicer mechanism than P-A, and could be the start of a better GC scheme entirely, if not for SBCL then for my own project. 2017-12-08T00:16:48Z awolven_ quit (Read error: Connection reset by peer) 2017-12-08T00:17:06Z stassats`: it is a nicer scheme in theory 2017-12-08T00:17:12Z stassats`: not in implementation 2017-12-08T00:17:19Z nyef`: "Theory is wonderful, everything works there." 2017-12-08T00:17:22Z awolven joined #sbcl 2017-12-08T00:19:26Z stassats`: i wonder if actually stopping threads would be easier 2017-12-08T00:19:44Z nyef`: What I'd like is to *not* stop threads. 2017-12-08T00:19:58Z stassats`: stop a thread, look at its PC, consult a MAP, resume if it's not at a safepoint 2017-12-08T00:22:10Z stassats`: a really concurrent GC would be nice, but there are tradeoffs 2017-12-08T00:23:25Z hydan joined #sbcl 2017-12-08T00:24:19Z nyef`: There are, yes. And in some ways we don't really have the right to make those tradeoffs, we should be presenting options to... not quite end-users, but to application developers. 2017-12-08T00:24:49Z stassats`: i'd like to designate some threads as real time threads 2017-12-08T00:24:59Z stassats`: for handling GUI stuff 2017-12-08T00:25:25Z stassats`: so that it can complete at 60/120 Hz 2017-12-08T00:25:36Z nyef`: "Payroll is a real-time problem." 2017-12-08T00:25:58Z stassats`: but i don't even have a GUI thingy to do that to 2017-12-08T00:26:02Z nyef`: GUI stuff can lag, perceptibly, and still be okay. Audio processing typically can't. 2017-12-08T00:26:28Z stassats`: can, but i don't like when that happens 2017-12-08T00:26:34Z stassats`: the main loop shouldn't really stop 2017-12-08T00:27:11Z nyef`: Sure. I consider it to be one of the make-or-break things for a LispOS: If the system pauses to GC then it's no good. 2017-12-08T00:27:34Z |3b|: nyef`: lag is a bit less acceptable in VR :/ 2017-12-08T00:28:32Z nyef`: |3b|: Sure. And it's not great in a normal application, either. But it's usually tolerable. 2017-12-08T00:29:09Z |3b|: "less acceptable" as in "good chance of making people sick" 2017-12-08T00:30:24Z nyef`: I don't account VR as "usual". 2017-12-08T00:30:46Z |3b|: hopefully getting closer to usual :) 2017-12-08T00:31:39Z |3b|: at least a few of us in #lispgames trying (or planning to) do VR stuff with sbcl 2017-12-08T00:31:48Z nyef`: Ooh. 2017-12-08T00:32:45Z |3b| is currently hoping "just don't cons much" will be good enough for short term, since dropping a frame every few 10s of seconds is probably acceptable... long term strategy is probably a separate draw loop in C or whatever that just uses old data if it has to when the lisp side lags 2017-12-08T00:33:31Z stassats`: how many FPs are in VR these days? 120? 2017-12-08T00:33:46Z |3b|: 90fps is popular 2017-12-08T00:34:00Z stassats`: so around 10 ms 2017-12-08T00:34:22Z |3b|: (it has to draw 2 times per frame, but that is throughput rather than latency) 2017-12-08T00:34:24Z |3b|: yeah 2017-12-08T00:34:44Z nyef`: |3b|: Did you see the bit about wayland possibly getting stereoscopy support? 2017-12-08T00:35:08Z smurfrobot joined #sbcl 2017-12-08T00:35:15Z nyef`: (In some sense, more for 3DTV than VR, but intended as a starting point.) 2017-12-08T00:35:18Z |3b| hasn't been paying enough attention to linux lately (not that i paid any attention to the new windows VR stuff either since i'm still on 8.1) 2017-12-08T00:35:22Z |3b|: cool 2017-12-08T00:38:33Z |3b|: nyef`: do you know (and remember) anything about windows unwind info (64bit in particular)? don't remember if you were around last time i was asking about it 2017-12-08T00:38:45Z corci: Project sbcl-master-windows » Windows_7_32bit build #1530: FAILURE in 28 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_32bit/1530/ 2017-12-08T00:39:53Z nyef`: I remember very little about 64 bit windows unwinding. 2017-12-08T00:40:10Z nyef`: What I do remember is that it was better documented than the Linux equivalent. 2017-12-08T00:41:20Z stassats`: Invalid exit status: timer.impure.lisp, that's new 2017-12-08T00:43:23Z stassats`: adding :broken-on :win32 2017-12-08T00:43:54Z |3b|: yeah, didn't seem too bad from what i skimmed of the docs 2017-12-08T00:44:33Z nyef`: I remember being somewhat disappointed that SBCL used VEH instead of SEH. 2017-12-08T00:45:23Z nyef`: Hrm... Why do we unmap the GSP at GC_SETTLED and remap it at GC_COLLECT? 2017-12-08T00:46:34Z cryptomarauder[m joined #sbcl 2017-12-08T00:47:48Z |3b| mostly just wants enough for windows tools/APIs to get backtraces, doesn't have to be good enough to actually unwind reliably :p 2017-12-08T00:51:46Z josemanuel quit (Quit: leaving) 2017-12-08T00:53:13Z smurfrobot quit (Remote host closed the connection) 2017-12-08T01:02:57Z dougk quit (Ping timeout: 248 seconds) 2017-12-08T01:09:26Z nyef`: |3b|: You might try consing up a single unwind descriptor that covers the entire dynamic space (or immobile space, wherever holds code) and explains how to backtrace a lisp frame. 2017-12-08T01:14:42Z corci: Yippee, build fixed! 2017-12-08T01:14:43Z corci: Project sbcl-master-windows » Windows_7_32bit build #1531: FIXED in 29 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_32bit/1531/ 2017-12-08T01:15:08Z jibanes quit (Ping timeout: 252 seconds) 2017-12-08T01:16:55Z jibanes joined #sbcl 2017-12-08T01:19:19Z dougk joined #sbcl 2017-12-08T01:19:51Z whoman quit (Remote host closed the connection) 2017-12-08T01:20:54Z whoman joined #sbcl 2017-12-08T01:21:14Z dougk quit (Read error: Connection reset by peer) 2017-12-08T01:21:32Z dougk joined #sbcl 2017-12-08T01:23:43Z jack_rabbit quit (Ping timeout: 248 seconds) 2017-12-08T01:25:23Z stassats`: yippee indeed 2017-12-08T01:33:49Z whoman quit (Remote host closed the connection) 2017-12-08T01:34:42Z whoman joined #sbcl 2017-12-08T01:35:24Z whoman quit (Remote host closed the connection) 2017-12-08T01:36:06Z whoman joined #sbcl 2017-12-08T01:36:22Z whoman` joined #sbcl 2017-12-08T01:36:39Z whoman` quit (Remote host closed the connection) 2017-12-08T01:37:17Z jack_rabbit joined #sbcl 2017-12-08T01:37:40Z whoman` joined #sbcl 2017-12-08T01:45:01Z whoman` is now known as hooman 2017-12-08T01:50:05Z corci: Yippee, build fixed! 2017-12-08T01:50:05Z corci: Project sbcl-master » safepoints,ubuntu_trusty_32bit build #2710: FIXED in 23 min: http://ci.cor-lab.de/job/sbcl-master/featureset=safepoints,label=ubuntu_trusty_32bit/2710/ 2017-12-08T01:54:07Z jack_rabbit quit (Ping timeout: 248 seconds) 2017-12-08T02:07:14Z jack_rabbit joined #sbcl 2017-12-08T02:20:15Z jack_rabbit quit (Ping timeout: 248 seconds) 2017-12-08T02:27:38Z __rumbler31 joined #sbcl 2017-12-08T02:32:01Z __rumbler31 quit (Ping timeout: 248 seconds) 2017-12-08T02:37:48Z jack_rabbit joined #sbcl 2017-12-08T02:53:46Z smurfrobot joined #sbcl 2017-12-08T02:58:07Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-08T03:07:13Z stassats` quit (Ping timeout: 248 seconds) 2017-12-08T03:15:16Z awolven quit (Remote host closed the connection) 2017-12-08T03:15:52Z awolven joined #sbcl 2017-12-08T03:20:08Z awolven quit (Ping timeout: 255 seconds) 2017-12-08T03:20:26Z karswell_ joined #sbcl 2017-12-08T03:23:03Z hydan quit (Quit: Connection closed for inactivity) 2017-12-08T03:23:05Z karswell quit (Ping timeout: 255 seconds) 2017-12-08T03:23:55Z wokko joined #sbcl 2017-12-08T03:30:29Z awolven joined #sbcl 2017-12-08T03:45:37Z awolven quit (Remote host closed the connection) 2017-12-08T03:46:13Z awolven joined #sbcl 2017-12-08T03:50:44Z awolven quit (Ping timeout: 255 seconds) 2017-12-08T03:56:14Z jack_rabbit quit (Read error: Connection reset by peer) 2017-12-08T04:00:43Z shka joined #sbcl 2017-12-08T04:13:16Z jack_rabbit joined #sbcl 2017-12-08T04:13:53Z awolven joined #sbcl 2017-12-08T04:21:56Z cromachina joined #sbcl 2017-12-08T04:24:38Z Bike quit (Quit: Lost terminal) 2017-12-08T04:33:29Z whoman quit (Remote host closed the connection) 2017-12-08T04:33:29Z hooman quit (Remote host closed the connection) 2017-12-08T04:36:20Z whoman joined #sbcl 2017-12-08T04:43:30Z awolven quit (Remote host closed the connection) 2017-12-08T04:44:07Z awolven joined #sbcl 2017-12-08T04:48:47Z awolven quit (Ping timeout: 255 seconds) 2017-12-08T05:05:56Z karswell_ quit (Read error: No route to host) 2017-12-08T05:23:54Z awolven joined #sbcl 2017-12-08T06:34:34Z oleo quit (Quit: Leaving) 2017-12-08T06:38:02Z BitPuffin|osx joined #sbcl 2017-12-08T06:58:25Z greaser|q quit (Changing host) 2017-12-08T06:58:25Z greaser|q joined #sbcl 2017-12-08T06:58:27Z greaser|q is now known as GreaseMonkey 2017-12-08T07:06:30Z drmeister quit (Ping timeout: 246 seconds) 2017-12-08T07:07:39Z lonjil quit (Quit: No Ping reply in 180 seconds.) 2017-12-08T07:07:49Z birk joined #sbcl 2017-12-08T07:07:50Z drmeister joined #sbcl 2017-12-08T07:07:54Z dim quit (Ping timeout: 246 seconds) 2017-12-08T07:08:15Z abbe quit (Ping timeout: 246 seconds) 2017-12-08T07:08:58Z gko quit (Ping timeout: 246 seconds) 2017-12-08T07:09:18Z pchrist quit (Ping timeout: 246 seconds) 2017-12-08T07:10:34Z abbe joined #sbcl 2017-12-08T07:10:38Z pchrist joined #sbcl 2017-12-08T07:11:21Z smurfrobot joined #sbcl 2017-12-08T07:12:14Z sjl joined #sbcl 2017-12-08T07:13:08Z gko joined #sbcl 2017-12-08T07:13:58Z dim joined #sbcl 2017-12-08T07:15:23Z cryptomarauder[m quit (Ping timeout: 255 seconds) 2017-12-08T07:15:27Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-08T07:16:35Z sjl quit (Ping timeout: 240 seconds) 2017-12-08T07:17:47Z whoman quit (Read error: Connection reset by peer) 2017-12-08T07:33:21Z scymtym quit (Ping timeout: 240 seconds) 2017-12-08T07:40:50Z whoman joined #sbcl 2017-12-08T07:55:48Z smurfrobot joined #sbcl 2017-12-08T07:58:27Z dougk quit (Ping timeout: 240 seconds) 2017-12-08T08:00:11Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-08T08:15:35Z smurfrobot joined #sbcl 2017-12-08T08:20:44Z smurfrobot quit (Ping timeout: 276 seconds) 2017-12-08T08:29:15Z smurfrobot joined #sbcl 2017-12-08T08:30:11Z dougk joined #sbcl 2017-12-08T08:39:35Z smurfrobot quit (Remote host closed the connection) 2017-12-08T08:40:15Z smurfrobot joined #sbcl 2017-12-08T08:40:47Z dougk quit (Ping timeout: 255 seconds) 2017-12-08T08:46:51Z smurfrobot quit (Remote host closed the connection) 2017-12-08T08:51:46Z smurfrobot joined #sbcl 2017-12-08T08:53:40Z scymtym joined #sbcl 2017-12-08T09:12:59Z smurfrobot quit (Remote host closed the connection) 2017-12-08T09:16:41Z smurfrobot joined #sbcl 2017-12-08T09:18:14Z cryptomarauder[m joined #sbcl 2017-12-08T09:22:53Z hydan joined #sbcl 2017-12-08T09:32:06Z birk is now known as lonjil 2017-12-08T09:44:04Z dougk joined #sbcl 2017-12-08T09:48:11Z smurfrobot quit (Remote host closed the connection) 2017-12-08T09:49:02Z smurfrobot joined #sbcl 2017-12-08T09:59:29Z dougk quit (Ping timeout: 248 seconds) 2017-12-08T10:07:52Z Jesin quit (Ping timeout: 240 seconds) 2017-12-08T10:09:05Z smurfrobot quit (Remote host closed the connection) 2017-12-08T10:25:13Z scymtym: is it acceptable to add a test for NIL for *DEADLINE* (special with known TLS index) to the common case (i.e. no deadline) of SLEEP to make it respect deadlines? i can also make the deadline case reasonably efficient once i finish rearranging the deadline and timeout stuff a bit 2017-12-08T10:25:36Z scymtym: (the latter will resolve some of the FIXME update timeout comments) 2017-12-08T10:37:53Z smurfrobot joined #sbcl 2017-12-08T10:42:39Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-08T10:46:23Z smurfrobot joined #sbcl 2017-12-08T10:58:30Z wokko quit (Quit: leaving) 2017-12-08T10:59:55Z smurfrobot quit (Remote host closed the connection) 2017-12-08T11:27:14Z smurfrobot joined #sbcl 2017-12-08T11:30:54Z karswell_ joined #sbcl 2017-12-08T11:33:30Z smurfrobot quit (Remote host closed the connection) 2017-12-08T11:34:22Z dougk joined #sbcl 2017-12-08T11:41:53Z dougk quit (Ping timeout: 248 seconds) 2017-12-08T12:06:35Z Bike joined #sbcl 2017-12-08T12:41:36Z awolven quit (Remote host closed the connection) 2017-12-08T12:41:52Z awolven joined #sbcl 2017-12-08T12:52:20Z awolven quit (Remote host closed the connection) 2017-12-08T12:52:55Z awolven joined #sbcl 2017-12-08T12:57:12Z awolven quit (Ping timeout: 246 seconds) 2017-12-08T13:02:07Z smurfrobot joined #sbcl 2017-12-08T13:08:24Z ym quit (Quit: Leaving) 2017-12-08T13:08:35Z ym joined #sbcl 2017-12-08T13:10:58Z awolven joined #sbcl 2017-12-08T13:11:12Z smurfrobot quit (Remote host closed the connection) 2017-12-08T13:11:33Z smurfrobot joined #sbcl 2017-12-08T13:25:34Z awolven quit 2017-12-08T13:26:43Z smurfrobot quit (Remote host closed the connection) 2017-12-08T13:27:06Z smurfrobot joined #sbcl 2017-12-08T13:28:57Z Bike is now known as Bicyclidine 2017-12-08T13:34:15Z awolven joined #sbcl 2017-12-08T13:40:04Z oleo joined #sbcl 2017-12-08T13:41:51Z smurfrobot quit (Remote host closed the connection) 2017-12-08T13:43:37Z awolven quit (Remote host closed the connection) 2017-12-08T13:57:30Z smurfrobot joined #sbcl 2017-12-08T13:59:41Z dougk joined #sbcl 2017-12-08T14:04:13Z awolven joined #sbcl 2017-12-08T14:05:02Z whoman quit (Remote host closed the connection) 2017-12-08T14:05:21Z dougk quit (Ping timeout: 248 seconds) 2017-12-08T14:08:00Z whoman joined #sbcl 2017-12-08T14:08:05Z Bike joined #sbcl 2017-12-08T14:08:38Z awolven quit (Ping timeout: 258 seconds) 2017-12-08T14:13:56Z smurfrobot quit (Remote host closed the connection) 2017-12-08T14:15:27Z dougk joined #sbcl 2017-12-08T14:18:01Z eschatologist quit (Ping timeout: 240 seconds) 2017-12-08T14:21:31Z smurfrobot joined #sbcl 2017-12-08T14:23:50Z __rumbler31 joined #sbcl 2017-12-08T14:26:05Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-08T14:28:27Z smurfrobot joined #sbcl 2017-12-08T14:32:56Z awolven joined #sbcl 2017-12-08T14:37:18Z awolven quit (Ping timeout: 246 seconds) 2017-12-08T14:42:19Z emaczen` joined #sbcl 2017-12-08T14:44:15Z emaczen quit (Ping timeout: 248 seconds) 2017-12-08T14:46:35Z eschatologist joined #sbcl 2017-12-08T14:57:40Z cromachina quit (Read error: Connection reset by peer) 2017-12-08T15:12:17Z Jesin joined #sbcl 2017-12-08T15:18:19Z smurfrobot quit (Remote host closed the connection) 2017-12-08T15:20:32Z karswell_ is now known as karswell 2017-12-08T15:28:56Z smurfrobot joined #sbcl 2017-12-08T16:22:14Z dougk quit (Ping timeout: 255 seconds) 2017-12-08T16:29:45Z __rumbler31 quit (Quit: Leaving...) 2017-12-08T16:30:18Z smurfrobot quit (Remote host closed the connection) 2017-12-08T16:33:38Z __rumbler31 joined #sbcl 2017-12-08T16:37:33Z smurfrobot joined #sbcl 2017-12-08T16:37:33Z dougk joined #sbcl 2017-12-08T16:41:01Z smurfrobot quit (Remote host closed the connection) 2017-12-08T16:41:55Z awolven joined #sbcl 2017-12-08T16:52:43Z awolven quit (Remote host closed the connection) 2017-12-08T16:52:59Z awolven joined #sbcl 2017-12-08T17:03:47Z smurfrobot joined #sbcl 2017-12-08T17:04:05Z BitPuffin|osx quit (Ping timeout: 255 seconds) 2017-12-08T17:05:42Z __rumbler31 quit (Ping timeout: 246 seconds) 2017-12-08T17:06:36Z Jesin quit (Remote host closed the connection) 2017-12-08T17:16:02Z smurfrobot quit (Remote host closed the connection) 2017-12-08T17:26:09Z smurfrobot joined #sbcl 2017-12-08T17:27:59Z smurfrobot quit (Remote host closed the connection) 2017-12-08T17:28:37Z smurfrobot joined #sbcl 2017-12-08T17:43:25Z jack_rabbit quit (Read error: Connection reset by peer) 2017-12-08T17:57:03Z jack_rabbit joined #sbcl 2017-12-08T18:26:53Z nyef`: ... Why does win32-os.c use WITH_GC_AT_SAFEPOINTS_ONLY in handle_breakpoint_trap()? 2017-12-08T18:40:01Z __rumbler31 joined #sbcl 2017-12-08T18:53:20Z awolven quit (Read error: Connection reset by peer) 2017-12-08T18:54:16Z awolven joined #sbcl 2017-12-08T19:02:57Z smurfrobot quit (Remote host closed the connection) 2017-12-08T19:04:28Z smurfrobot joined #sbcl 2017-12-08T19:22:52Z hydan quit (Quit: Connection closed for inactivity) 2017-12-08T19:23:14Z dougk quit (Read error: Connection reset by peer) 2017-12-08T19:23:30Z dougk joined #sbcl 2017-12-08T19:33:20Z smurfrobot quit (Remote host closed the connection) 2017-12-08T19:36:11Z dougk quit (Ping timeout: 255 seconds) 2017-12-08T19:47:03Z shka quit (Quit: Konversation terminated!) 2017-12-08T19:54:57Z nyef`: Ugh. Wait through a full build cycle, run my test, and find that I forgot to specify --with-sb-thread. 2017-12-08T19:57:05Z Jesin joined #sbcl 2017-12-08T19:58:25Z dougk joined #sbcl 2017-12-08T20:15:12Z shka joined #sbcl 2017-12-08T20:17:35Z __rumbler31: I hate that 2017-12-08T20:29:40Z awolven quit (Remote host closed the connection) 2017-12-08T20:30:16Z awolven joined #sbcl 2017-12-08T20:31:07Z awolven quit (Remote host closed the connection) 2017-12-08T20:31:21Z awolven joined #sbcl 2017-12-08T20:49:19Z smurfrobot joined #sbcl 2017-12-08T21:04:29Z awolven quit (Remote host closed the connection) 2017-12-08T21:08:55Z awolven joined #sbcl 2017-12-08T21:11:19Z awolven quit (Remote host closed the connection) 2017-12-08T21:12:45Z awolven joined #sbcl 2017-12-08T21:12:46Z awolven quit (Remote host closed the connection) 2017-12-08T21:13:02Z awolven joined #sbcl 2017-12-08T21:15:43Z shka quit (Ping timeout: 248 seconds) 2017-12-08T21:25:20Z Bike quit (Ping timeout: 260 seconds) 2017-12-08T21:37:11Z awolven quit (Remote host closed the connection) 2017-12-08T21:51:18Z Jesin quit (Quit: Leaving) 2017-12-08T21:53:40Z awolven joined #sbcl 2017-12-08T21:56:15Z Xof quit (Ping timeout: 248 seconds) 2017-12-08T22:03:50Z smurfrobot quit (Remote host closed the connection) 2017-12-08T22:04:13Z awolven quit (Remote host closed the connection) 2017-12-08T22:05:17Z stassats joined #sbcl 2017-12-08T22:37:28Z dougk quit (Read error: Connection reset by peer) 2017-12-08T22:37:47Z dougk joined #sbcl 2017-12-08T22:38:52Z smurfrobot joined #sbcl 2017-12-08T22:42:13Z dougk quit (Ping timeout: 268 seconds) 2017-12-08T22:42:30Z nyef`: Stupid C "if" semantics and lack of curly braces. 2017-12-08T22:46:11Z otwieracz: /wc 2017-12-08T22:46:13Z otwieracz left #sbcl 2017-12-08T22:56:54Z Bicyclidine is now known as Bike 2017-12-08T23:02:50Z smurfrobot quit (Remote host closed the connection) 2017-12-08T23:12:11Z stassats quit (Ping timeout: 255 seconds) 2017-12-08T23:14:58Z nyef`: Well! sb-sprof still chokes, but the consing-inside-without-gcing test is looking a lot more stable. 2017-12-08T23:17:21Z stassats joined #sbcl 2017-12-08T23:21:54Z smurfrobot joined #sbcl 2017-12-08T23:23:13Z smurfrobot quit (Remote host closed the connection) 2017-12-08T23:26:57Z __rumbler31 quit (Ping timeout: 240 seconds) 2017-12-08T23:36:00Z smurfrobot joined #sbcl 2017-12-08T23:37:12Z smurfrobot quit (Remote host closed the connection) 2017-12-08T23:38:39Z smurfrobot joined #sbcl 2017-12-08T23:38:40Z smurfrobot quit (Remote host closed the connection) 2017-12-08T23:38:52Z smurfrobot joined #sbcl 2017-12-08T23:42:44Z stassats: redesigning extra-type annotations again, it's like the fifth time i'm redoing it all 2017-12-08T23:43:36Z stassats: but it resolves a couple of small performance regressions, reduces the core size by 128 KB, and paves the way for new annotations 2017-12-08T23:43:46Z stassats: like modifies-this-arg 2017-12-08T23:43:50Z nyef`: Cool. 2017-12-08T23:43:51Z emaczen` quit (Ping timeout: 240 seconds) 2017-12-08T23:43:54Z smurfrobot quit (Remote host closed the connection) 2017-12-08T23:44:27Z smurfrobot joined #sbcl 2017-12-08T23:44:33Z nyef`: I managed to get PPC safepoints to be more stable... But sb-sprof still doesn't work. 2017-12-08T23:45:43Z smurfrobot quit (Remote host closed the connection) 2017-12-08T23:49:45Z smurfrobot joined #sbcl 2017-12-08T23:49:53Z |3b| looked at 64bit windows unwind some more, not sure you can give it a function on 64bit, have to give it some special bytecode describing how to undo the stack ops in the function prolog for each function 2017-12-08T23:52:10Z |3b|: also not sure sbcl matches their expectations for stack modification in general, so might require changes to that as well as maintaining whatever windows API unwind metadata 2017-12-08T23:52:26Z nyef`: stassats: Does "bug fix: sb-safepoint builds are now a lot less prone to lockups and odd crashes (lp#1424031, lp#1268710)" sound about right for NEWS? 2017-12-08T23:52:38Z |3b|: epilog part of https://docs.microsoft.com/en-us/cpp/build/prolog-and-epilog didn't look like it matched the random function i disassembled for example 2017-12-08T23:52:41Z smurfrobot quit (Remote host closed the connection) 2017-12-08T23:53:23Z stassats: nyef`: sounds good 2017-12-08T23:53:34Z stassats: although interrupt-thread still locks up 2017-12-08T23:53:38Z stassats: on windows 2017-12-08T23:53:47Z dougk joined #sbcl 2017-12-08T23:54:02Z stassats: it doesn't wait for a c call to return 2017-12-08T23:54:32Z stassats: and i don't want to get into the state transitions to figure out how to at least wait 2017-12-08T23:55:04Z stassats: and figure out what happens when some other thread wants to GC while another is waiting to interrupt some other thread 2017-12-08T23:55:33Z nyef`: Is this sb-thruption? 2017-12-08T23:55:40Z stassats: yeah, wake_thread 2017-12-08T23:58:10Z nyef`: Umm... Wow. Old comment in kill_safely(): It says that gc_stop_the_world() takes the all_threads mutex. 2017-12-08T23:58:12Z stassats: i even had a patch for it sometime ago 2017-12-08T23:58:41Z dougk quit (Ping timeout: 268 seconds) 2017-12-09T00:05:05Z awolven joined #sbcl 2017-12-09T00:05:42Z nyef`: Hrm. 2017-12-09T00:06:08Z nyef`: Now, how do I load and run the tests for just one contrib, with SBCL_DYNDEBUG=all? 2017-12-09T00:06:32Z stassats: DONT_CLEAN_SBCL_CONTRIB=1 ./make-target-contrib.sh sb-sprof 2017-12-09T00:06:58Z stassats: but the sb-sprof test is really simple, just grab the file 2017-12-09T00:07:23Z nyef`: Thank you. 2017-12-09T00:08:02Z smurfrobot joined #sbcl 2017-12-09T00:09:19Z awolven quit (Ping timeout: 250 seconds) 2017-12-09T00:11:42Z smurfrobot quit (Remote host closed the connection) 2017-12-09T00:12:27Z nyef`: Hrm. It runs through to the point that it dumps a couple of tables to the output, and then it catches a couple of plausible faults, and then the third fault has an address of 0xfffffffd. 2017-12-09T00:13:15Z nyef`: No recent GC, nothing. Just suddenly *boom*. 2017-12-09T00:13:32Z stassats: check that fb7bbb14350e9a524417e1b81912ebf2f3b6845a is still correct 2017-12-09T00:21:29Z awolven joined #sbcl 2017-12-09T00:21:36Z emaczen joined #sbcl 2017-12-09T00:23:11Z nyef`: I have no idea if it is or not. 2017-12-09T00:25:51Z awolven quit (Remote host closed the connection) 2017-12-09T00:28:27Z stassats: try disabling walking one frame up 2017-12-09T00:30:39Z nyef`: So, the body of the UNLESS in sigprof-handler? 2017-12-09T00:31:12Z stassats: yeah 2017-12-09T00:31:27Z awolven joined #sbcl 2017-12-09T00:32:21Z nyef`: Changes the tables that are output, but the same fault pattern occurs. 2017-12-09T00:32:40Z stassats: ok, then foreign call detection isn't broken 2017-12-09T00:39:18Z dougk joined #sbcl 2017-12-09T00:43:23Z cromachina joined #sbcl 2017-12-09T00:45:56Z karswell quit (Remote host closed the connection) 2017-12-09T00:46:43Z karswell joined #sbcl 2017-12-09T00:47:55Z stassats: (coerce-to-values (specifier-type 'function)) => # 2017-12-09T00:47:58Z stassats: (coerce-to-values (specifier-type '(or function symbol))) => # 2017-12-09T00:47:58Z stassats: what? 2017-12-09T00:48:52Z stassats: because NIL is a symbol? ugh 2017-12-09T00:49:19Z stassats: i should disallow NIL from FUNCTION-DESIGNATOR 2017-12-09T00:51:16Z stassats: but that's too much work 2017-12-09T00:58:04Z awolven quit (Remote host closed the connection) 2017-12-09T01:10:17Z smurfrobot joined #sbcl 2017-12-09T01:14:08Z stassats: ok, i don't really care about that, my FUNCTION-DESIGNATOR didn't correctly intersect with FUNCTION 2017-12-09T01:16:02Z smurfrobot quit (Remote host closed the connection) 2017-12-09T01:22:21Z dougk quit (Ping timeout: 246 seconds) 2017-12-09T01:38:34Z dougk joined #sbcl 2017-12-09T01:58:38Z smurfrobot joined #sbcl 2017-12-09T02:11:56Z fortitude quit (Ping timeout: 276 seconds) 2017-12-09T02:22:07Z zulu_inuoe joined #sbcl 2017-12-09T02:24:33Z zulu_inuoe_ quit (Ping timeout: 248 seconds) 2017-12-09T02:27:11Z smurfrobot quit (Remote host closed the connection) 2017-12-09T03:16:42Z smurfrobot joined #sbcl 2017-12-09T03:58:28Z nyef`: Okay, PPC safepoints are definitely looking solid with that consing-inside-without-gcing test. I'll leave it going overnight, but I expect it'll still be running in the morning. Or, at least, that it won't be the safepoint stuff that kills it. (-: 2017-12-09T03:58:54Z nyef`: I'll do a rebase-and-push then. 2017-12-09T03:59:04Z stassats: how many threads does your PPC machine have? 2017-12-09T03:59:11Z nyef`: Not enough. 2017-12-09T03:59:32Z nyef`: Apparently, it's a single-core(!) 2017-12-09T04:00:14Z nyef`: (Because my G5s all died long ago.) 2017-12-09T04:01:03Z stassats: mine is 64, i could run using a couple threads overnight 2017-12-09T04:01:22Z stassats: can't run all 64, it's shared 2017-12-09T04:04:00Z nyef`: I'm not too worried about the safepoint logic proper at this point, that seems fairly solid. It's the precise-scavenge and PPC quirks to it that I'm worried about. 2017-12-09T04:04:10Z nyef`: And I think I've got them basically nailed down now. 2017-12-09T04:05:04Z stassats: need more tests, with callbacks, timers, interrupts, without-gcing, threads, semaphores, mutex, all going at the same time 2017-12-09T04:05:29Z stassats: foreign calls, kernel calls, margin calls 2017-12-09T04:05:41Z stylewarning: phone calls 2017-12-09T04:05:49Z nyef`: Heh. Taking stock of what needs to be done to make sure it's solid? 2017-12-09T04:06:21Z stassats: a random tester for threading issues 2017-12-09T04:07:50Z nyef`: Hrm. Maybe I'll just give it another hour, and if it's still going call it good enough. 2017-12-09T04:08:07Z stassats: some new changes? 2017-12-09T04:08:49Z nyef`: Two commits. One to make some debug output a little nicer, one to fix a blown invariant. 2017-12-09T04:09:33Z stassats: i wonder if tla+ can help 2017-12-09T04:09:56Z nyef`: ... I should know what that is, shouldn't I? 2017-12-09T04:27:13Z bkst quit (Ping timeout: 248 seconds) 2017-12-09T04:28:12Z nyef`: Is there some reasonable way to test a PPC darwin build, or do I just have to desk check darwin-specific bits carefully and hope for the best? 2017-12-09T04:28:42Z stassats: i think even fewer people care about that than the alpha build 2017-12-09T04:29:24Z nyef`: So... desk check? 2017-12-09T04:29:27Z smurfrobot quit (Remote host closed the connection) 2017-12-09T04:29:52Z stassats: at least you can run an up to date OS on alpha 2017-12-09T04:31:35Z nyef`: Yes... VMS 8.4. 2017-12-09T04:33:15Z nyef`: Oh, wait. My VMS license expired two and a half weeks ago. I should get that renewed. 2017-12-09T04:33:46Z stassats: when should we expect a port? 2017-12-09T04:34:19Z nyef`: I have no idea. 2017-12-09T04:34:41Z nyef`: It'd be amusing, but at the same time there'd be a lot of work involved. 2017-12-09T04:35:32Z nyef`: That test run is still going. I think I'm going to call it good. 2017-12-09T04:36:36Z nyef`: And pushed. 2017-12-09T04:37:32Z stassats: i could add safepoints to arm64 2017-12-09T04:38:38Z stassats: when i run out of easy things to do 2017-12-09T04:38:42Z karswell quit (Ping timeout: 246 seconds) 2017-12-09T04:38:49Z stassats: which should be at least a couple more days 2017-12-09T04:39:39Z nyef`: Hrm. No, I'm not firing up my SPARC to try and add safepoints there tomorrow. 2017-12-09T04:39:55Z nyef`: (Especially since SPARC isn't particularly well-maintained at this point, IIRC.) 2017-12-09T04:40:22Z smurfrobot joined #sbcl 2017-12-09T04:41:11Z nyef`: Also, I think that you'll find the platform-specific bits of safepoints to be fairly straightforward at this point. 2017-12-09T04:41:14Z stassats: it's ok 2017-12-09T04:41:20Z stassats: i build it from time to time 2017-12-09T04:41:27Z stassats: before a release, usually 2017-12-09T04:48:12Z nyef`: Okay, what else needs doing with safepoints at the moment? 2017-12-09T04:48:27Z nyef`: AFAIK, the basic mechanism is now stable across the board. 2017-12-09T04:49:32Z nyef`: Modulo some little detail with callbacks, but those aren't really important. 2017-12-09T04:49:59Z stassats: the details or the callbacks? 2017-12-09T04:50:16Z nyef`: The callbacks. "God is in the details." 2017-12-09T04:51:21Z stassats: is WITH_GC_AT_SAFEPOINTS_ONLY still alive? 2017-12-09T04:51:37Z nyef`: Yes. 2017-12-09T04:52:09Z nyef`: I've determined that it can be pushed to call_into_lisp, but haven't figured out how to do so for PPC yet. 2017-12-09T04:52:11Z bkst joined #sbcl 2017-12-09T05:00:12Z nyef`: Actually, I should do that push to call_into_lisp, at least for one platform, and make the ugly version conditional-compile out on that platform. 2017-12-09T05:00:55Z nyef`: Does any of the usual test suite cover thruptions? 2017-12-09T05:01:21Z stassats quit (Ping timeout: 248 seconds) 2017-12-09T05:05:38Z jdz quit (*.net *.split) 2017-12-09T05:05:38Z fe[nl]ix quit (*.net *.split) 2017-12-09T05:05:38Z Blkt quit (*.net *.split) 2017-12-09T05:05:38Z minion quit (*.net *.split) 2017-12-09T05:05:39Z stylewarning quit (*.net *.split) 2017-12-09T05:05:39Z alandipert quit (*.net *.split) 2017-12-09T05:05:39Z shaftoe quit (*.net *.split) 2017-12-09T05:05:39Z lonjil quit (*.net *.split) 2017-12-09T05:05:40Z Posterdati quit (*.net *.split) 2017-12-09T05:05:41Z mood quit (*.net *.split) 2017-12-09T05:05:41Z flip214 quit (*.net *.split) 2017-12-09T05:05:41Z jyc quit (*.net *.split) 2017-12-09T05:05:43Z scymtym quit (*.net *.split) 2017-12-09T05:05:43Z GreaseMonkey quit (*.net *.split) 2017-12-09T05:05:43Z adlai quit (*.net *.split) 2017-12-09T05:05:45Z abbe quit (*.net *.split) 2017-12-09T05:05:45Z leah2 quit (*.net *.split) 2017-12-09T05:05:45Z christoph_debian quit (*.net *.split) 2017-12-09T05:05:45Z angular_mike quit (*.net *.split) 2017-12-09T05:05:45Z corci quit (*.net *.split) 2017-12-09T05:05:45Z joshe quit (*.net *.split) 2017-12-09T05:05:46Z les quit (*.net *.split) 2017-12-09T05:05:46Z salva quit (*.net *.split) 2017-12-09T05:05:47Z easye quit (*.net *.split) 2017-12-09T05:05:47Z Colleen quit (*.net *.split) 2017-12-09T05:05:49Z MetaYan quit (*.net *.split) 2017-12-09T05:05:49Z irsol quit (*.net *.split) 2017-12-09T05:05:50Z jrm quit (*.net *.split) 2017-12-09T05:05:51Z myrkraverk quit (*.net *.split) 2017-12-09T05:05:51Z carvite quit (*.net *.split) 2017-12-09T05:05:52Z gendl quit (*.net *.split) 2017-12-09T05:05:52Z ave1 quit (*.net *.split) 2017-12-09T05:05:53Z _8hzp quit (*.net *.split) 2017-12-09T05:05:53Z _death quit (*.net *.split) 2017-12-09T05:05:54Z brucem quit (*.net *.split) 2017-12-09T05:05:54Z |3b| quit (*.net *.split) 2017-12-09T05:05:55Z cryptomarauder[m quit (*.net *.split) 2017-12-09T05:05:56Z cromachina quit (*.net *.split) 2017-12-09T05:05:57Z tonton quit (*.net *.split) 2017-12-09T05:05:57Z jackdaniel quit (*.net *.split) 2017-12-09T05:05:59Z xristos quit (*.net *.split) 2017-12-09T05:05:59Z malm quit (*.net *.split) 2017-12-09T05:05:59Z p_l quit (*.net *.split) 2017-12-09T05:05:59Z bkst quit (*.net *.split) 2017-12-09T05:06:00Z kini quit (*.net *.split) 2017-12-09T05:06:00Z Shinmera quit (*.net *.split) 2017-12-09T05:06:01Z nimiux quit (*.net *.split) 2017-12-09T05:06:01Z zulu_inuoe quit (*.net *.split) 2017-12-09T05:06:02Z specbot quit (*.net *.split) 2017-12-09T05:06:03Z DeadTrickster__ quit (*.net *.split) 2017-12-09T05:06:03Z libreman quit (*.net *.split) 2017-12-09T05:06:04Z dim quit (*.net *.split) 2017-12-09T05:06:04Z gko quit (*.net *.split) 2017-12-09T05:06:04Z pchrist quit (*.net *.split) 2017-12-09T05:06:04Z drmeister quit (*.net *.split) 2017-12-09T05:06:05Z foom quit (*.net *.split) 2017-12-09T05:06:06Z aeth quit (*.net *.split) 2017-12-09T05:06:06Z Lord_Nightmare quit (*.net *.split) 2017-12-09T05:06:06Z galdor quit (*.net *.split) 2017-12-09T05:06:06Z nicdev quit (*.net *.split) 2017-12-09T05:06:06Z smurfrobot quit (*.net *.split) 2017-12-09T05:06:06Z dougk quit (*.net *.split) 2017-12-09T05:06:07Z emaczen quit (*.net *.split) 2017-12-09T05:06:07Z oleo quit (*.net *.split) 2017-12-09T05:06:08Z Intensity quit (*.net *.split) 2017-12-09T05:06:10Z Kevslinger quit (*.net *.split) 2017-12-09T05:06:10Z White_Flame quit (*.net *.split) 2017-12-09T05:06:11Z dustinm` quit (*.net *.split) 2017-12-09T05:06:12Z Ionic quit (*.net *.split) 2017-12-09T05:06:13Z Bike quit (*.net *.split) 2017-12-09T05:06:13Z jibanes quit (*.net *.split) 2017-12-09T05:06:13Z DGASAU quit (*.net *.split) 2017-12-09T05:06:14Z dwts quit (*.net *.split) 2017-12-09T05:06:15Z pkhuong quit (*.net *.split) 2017-12-09T05:06:15Z gingerale quit (*.net *.split) 2017-12-09T05:06:16Z jack_rabbit quit (*.net *.split) 2017-12-09T05:06:17Z sigjuice quit (*.net *.split) 2017-12-09T05:06:18Z Aaryn quit (*.net *.split) 2017-12-09T05:06:18Z nyef` quit (*.net *.split) 2017-12-09T05:06:19Z jsnell quit (*.net *.split) 2017-12-09T05:06:19Z mrSpec quit (*.net *.split) 2017-12-09T05:13:53Z gingerale joined #sbcl 2017-12-09T05:13:53Z pkhuong joined #sbcl 2017-12-09T05:13:53Z dwts joined #sbcl 2017-12-09T05:13:53Z dustinm` joined #sbcl 2017-12-09T05:13:53Z Ionic joined #sbcl 2017-12-09T05:13:53Z White_Flame joined #sbcl 2017-12-09T05:13:53Z DGASAU joined #sbcl 2017-12-09T05:13:53Z jibanes joined #sbcl 2017-12-09T05:13:53Z Bike joined #sbcl 2017-12-09T05:13:53Z bkst joined #sbcl 2017-12-09T05:13:53Z cromachina joined #sbcl 2017-12-09T05:13:53Z scymtym joined #sbcl 2017-12-09T05:13:53Z abbe joined #sbcl 2017-12-09T05:13:53Z lonjil joined #sbcl 2017-12-09T05:13:53Z stylewarning joined #sbcl 2017-12-09T05:13:53Z alandipert joined #sbcl 2017-12-09T05:13:53Z shaftoe joined #sbcl 2017-12-09T05:13:53Z minion joined #sbcl 2017-12-09T05:13:53Z Blkt joined #sbcl 2017-12-09T05:13:53Z fe[nl]ix joined #sbcl 2017-12-09T05:13:53Z jdz joined #sbcl 2017-12-09T05:13:53Z leah2 joined #sbcl 2017-12-09T05:13:53Z angular_mike joined #sbcl 2017-12-09T05:13:53Z jyc joined #sbcl 2017-12-09T05:13:53Z flip214 joined #sbcl 2017-12-09T05:13:53Z mood joined #sbcl 2017-12-09T05:13:53Z Posterdati joined #sbcl 2017-12-09T05:13:53Z GreaseMonkey joined #sbcl 2017-12-09T05:13:53Z corci joined #sbcl 2017-12-09T05:13:53Z adlai joined #sbcl 2017-12-09T05:13:53Z salva joined #sbcl 2017-12-09T05:13:53Z les joined #sbcl 2017-12-09T05:13:53Z joshe joined #sbcl 2017-12-09T05:13:53Z jrm joined #sbcl 2017-12-09T05:13:53Z Colleen joined #sbcl 2017-12-09T05:13:53Z myrkraverk joined #sbcl 2017-12-09T05:13:53Z tonton joined #sbcl 2017-12-09T05:13:53Z easye joined #sbcl 2017-12-09T05:13:53Z _8hzp joined #sbcl 2017-12-09T05:13:53Z kini joined #sbcl 2017-12-09T05:13:53Z jackdaniel joined #sbcl 2017-12-09T05:13:53Z carvite joined #sbcl 2017-12-09T05:13:53Z Shinmera joined #sbcl 2017-12-09T05:13:53Z gendl joined #sbcl 2017-12-09T05:13:53Z irsol joined #sbcl 2017-12-09T05:13:53Z MetaYan joined #sbcl 2017-12-09T05:13:53Z ave1 joined #sbcl 2017-12-09T05:13:53Z _death joined #sbcl 2017-12-09T05:13:53Z |3b| joined #sbcl 2017-12-09T05:13:53Z brucem joined #sbcl 2017-12-09T05:13:53Z xristos joined #sbcl 2017-12-09T05:13:53Z nimiux joined #sbcl 2017-12-09T05:13:53Z malm joined #sbcl 2017-12-09T05:13:53Z p_l joined #sbcl 2017-12-09T05:14:38Z smurfrobot joined #sbcl 2017-12-09T05:14:38Z dougk joined #sbcl 2017-12-09T05:14:38Z oleo joined #sbcl 2017-12-09T05:14:38Z Intensity joined #sbcl 2017-12-09T05:15:05Z zulu_inuoe joined #sbcl 2017-12-09T05:15:05Z specbot joined #sbcl 2017-12-09T05:15:05Z DeadTrickster__ joined #sbcl 2017-12-09T05:15:05Z libreman joined #sbcl 2017-12-09T05:15:47Z christoph_debian joined #sbcl 2017-12-09T05:16:00Z jack_rabbit joined #sbcl 2017-12-09T05:16:00Z mrSpec joined #sbcl 2017-12-09T05:16:00Z Aaryn joined #sbcl 2017-12-09T05:16:00Z nyef` joined #sbcl 2017-12-09T05:16:00Z jsnell joined #sbcl 2017-12-09T05:16:12Z sigjuice joined #sbcl 2017-12-09T05:31:39Z aeth joined #sbcl 2017-12-09T05:32:17Z jack_rabbit_ joined #sbcl 2017-12-09T05:36:00Z jack_rabbit quit (Ping timeout: 248 seconds) 2017-12-09T05:39:53Z dim joined #sbcl 2017-12-09T05:39:53Z gko joined #sbcl 2017-12-09T05:39:53Z pchrist joined #sbcl 2017-12-09T05:39:53Z drmeister joined #sbcl 2017-12-09T05:39:53Z foom joined #sbcl 2017-12-09T05:39:53Z Lord_Nightmare joined #sbcl 2017-12-09T05:39:53Z galdor joined #sbcl 2017-12-09T05:39:53Z nicdev joined #sbcl 2017-12-09T05:40:03Z gko quit (Max SendQ exceeded) 2017-12-09T05:41:11Z gko_ joined #sbcl 2017-12-09T05:48:37Z gko_ quit (Excess Flood) 2017-12-09T05:49:44Z gko joined #sbcl 2017-12-09T05:52:11Z jack_rabbit_ is now known as jack_rabbit 2017-12-09T05:54:00Z Bike quit (Quit: Lost terminal) 2017-12-09T06:17:30Z shka joined #sbcl 2017-12-09T06:23:28Z smurfrobot quit (Remote host closed the connection) 2017-12-09T06:37:31Z smurfrobot joined #sbcl 2017-12-09T06:42:53Z BitPuffin|osx joined #sbcl 2017-12-09T06:44:48Z smurfrobot quit (Remote host closed the connection) 2017-12-09T07:33:21Z smurfrobot joined #sbcl 2017-12-09T07:37:54Z smurfrobot quit (Ping timeout: 246 seconds) 2017-12-09T07:42:30Z dustinm` quit (Quit: Leaving) 2017-12-09T07:53:04Z mrSpec left #sbcl 2017-12-09T07:53:44Z dustinm` joined #sbcl 2017-12-09T08:02:21Z smurfrobot joined #sbcl 2017-12-09T08:06:36Z smurfrobot quit (Ping timeout: 246 seconds) 2017-12-09T08:35:18Z dougk quit (Ping timeout: 246 seconds) 2017-12-09T08:48:57Z dougk joined #sbcl 2017-12-09T09:10:05Z cryptomarauder[m joined #sbcl 2017-12-09T09:15:23Z cryptomarauder[m quit (Remote host closed the connection) 2017-12-09T09:18:24Z cryptomarauder[m joined #sbcl 2017-12-09T09:24:53Z dougk quit (Ping timeout: 255 seconds) 2017-12-09T09:50:09Z smurfrobot joined #sbcl 2017-12-09T10:01:58Z smurfrobot quit (Remote host closed the connection) 2017-12-09T10:04:00Z smurfrobot joined #sbcl 2017-12-09T10:42:44Z zulu_inuoe_ joined #sbcl 2017-12-09T10:43:13Z zulu_inuoe quit (Ping timeout: 248 seconds) 2017-12-09T10:51:11Z jack_rabbit quit (Ping timeout: 248 seconds) 2017-12-09T11:00:04Z jack_rabbit joined #sbcl 2017-12-09T11:24:25Z scymtym quit (Remote host closed the connection) 2017-12-09T11:57:29Z scymtym joined #sbcl 2017-12-09T12:09:18Z scymtym_ joined #sbcl 2017-12-09T12:13:11Z scymtym quit (Ping timeout: 240 seconds) 2017-12-09T12:31:21Z Bike joined #sbcl 2017-12-09T12:46:47Z Kevslinger joined #sbcl 2017-12-09T13:21:12Z stassats joined #sbcl 2017-12-09T13:37:00Z stassats: "Enabling blocked gc signals to allow returning to Lisp without risking gc deadlocks. Since GC signals are only blocked in signal handlers when they are not safe to interrupt at all, this is a pretty severe occurrence." 2017-12-09T13:41:53Z stassats: double free or corruption (out): 0x00007ffff52102e0 *** 2017-12-09T13:42:12Z stassats: torturing sbcl using stack exhaustion 2017-12-09T13:45:53Z stassats: that was on linux, on darwin the signal emulator thread seems to die itself 2017-12-09T13:48:50Z awolven joined #sbcl 2017-12-09T13:52:30Z scymtym_: stassats: are you okay with making SLEEP respect deadlines for the price of one *DEADLINE* read on the fast path? 2017-12-09T13:52:54Z stassats: if a thread blows past all guards, maybe it should be forcibly unwound and an error signalled 2017-12-09T13:53:39Z stassats: scymtym_: i'm not all that familiar with deadlines 2017-12-09T13:54:18Z stassats: never used them, they do not appear useful to me at all 2017-12-09T13:56:36Z BitPuffin|osx quit (Ping timeout: 246 seconds) 2017-12-09T13:58:11Z scymtym_: they allow time-based, safe unwinds from certain points at which the program blocks like I/O or thread synchronization. SLEEP isn't currently one of those points, which makes deadlines a bit less useful. this change would allow (sb-sys:with-deadline (:seconds 1) … (sleep 10) …) to signal a DEADLINE-TIMEOUT. as i said, for the price of a *DEADLINE* (which has a known TLS index) read, even if there are no deadlines 2017-12-09T13:58:24Z awolven quit (Remote host closed the connection) 2017-12-09T13:58:39Z awolven joined #sbcl 2017-12-09T13:59:47Z stassats: well, sleep 0 will still incur a large context switch price 2017-12-09T14:00:01Z stassats: no memory access will compare with that 2017-12-09T14:00:25Z stassats: do note that sleep is transformed to nanosleep at ct 2017-12-09T14:00:27Z scymtym_: i expect it to be just noise, yeah. but i thought i would ask anyway in case i was missing something 2017-12-09T14:00:54Z scymtym_: i accounted for that and the cost would be incurred in the transformed variants as well 2017-12-09T14:01:27Z stassats: skip it with (sleep 0)? 2017-12-09T14:01:52Z stassats: that'll require wrapping in more functions 2017-12-09T14:02:03Z scymtym_: i can paste a sketch 2017-12-09T14:02:30Z nyef`: Well, the PPC consing-in-without-gcing test is still running. 2017-12-09T14:02:31Z scymtym_: technically, (sleep 0) would be required to signal a DEADLINE-TIMEOUT if the deadline expired before the call 2017-12-09T14:02:35Z dougk joined #sbcl 2017-12-09T14:03:08Z stassats: scymtym_: don't skip on (sleep 0) for now, keep it simple 2017-12-09T14:03:40Z scymtym_: ok 2017-12-09T14:07:09Z scymtym_: stassats: https://techfak.de/~jmoringe/0001-SLEEP-respects-deadlines.patch 2017-12-09T14:09:40Z awolven quit (Remote host closed the connection) 2017-12-09T14:10:13Z awolven joined #sbcl 2017-12-09T14:10:54Z stassats: win32 should probably receive the same treatment as nanosleep-double nanosleep-float 2017-12-09T14:14:34Z awolven quit (Ping timeout: 258 seconds) 2017-12-09T14:16:30Z scymtym_: at least the (and win32 sb-thread) variant should also use %NANOSLEEP. missed that previously 2017-12-09T14:17:15Z stassats: %nanosleep isn't present on windows 2017-12-09T14:17:23Z stassats: and it sleeps on mutexes 2017-12-09T14:17:39Z stassats: incidentally, so does darwin, but for different reasons 2017-12-09T14:19:12Z scymtym_: i added %NANOSLEEP is a function i added for "nanosleep with a loop if the number of seconds is too large". is there already a %NANOSLEEP elsewhere? 2017-12-09T14:19:30Z scymtym_: sorry, %NANOSLEEP is a function i added … 2017-12-09T14:20:49Z stassats: no, just nanosleep 2017-12-09T14:23:38Z stassats: catch_exception_raise writes a lot to the stack, even if the original thread isn't yet exhausted but close to it, a wp fault may trigger an unrecoverable stack exhaustion 2017-12-09T14:27:28Z stassats: a single fault uses around 1700 bytes 2017-12-09T14:31:51Z scymtym_: is a local-tail-self-call acceptable for restart-with-updated-parameters-style control flow or do we only want TAGBODY (LOOP) for that kind of thing 2017-12-09T14:32:45Z stassats: is it being expanded into user code? 2017-12-09T14:33:44Z scymtym_: not in the implementation of SLEEP, but that's a concern for WITH-DEADLINE 2017-12-09T14:36:14Z stassats: is it something similar to SB-KERNEL::RESTART-UNBOUND? 2017-12-09T14:38:45Z scymtym_: for SEEP with deadline support: yes, for DECODE-TIMEOUT and related timeout-updating: yes, for WITH-DEADLINE: no, since it is a macro 2017-12-09T14:40:27Z dougk quit (Ping timeout: 240 seconds) 2017-12-09T14:40:48Z stassats: i wonder if i can set thread_set_exception_ports to the same thread 2017-12-09T14:41:01Z stassats: or i need a watcher for the watcher 2017-12-09T14:42:04Z dougk joined #sbcl 2017-12-09T15:09:25Z nyef`: Urgh. I completely fail to understand what's going on with the darwin ppc C calling convention. 2017-12-09T15:20:01Z awolven joined #sbcl 2017-12-09T15:20:42Z stassats: catching exceptions for the same thread does something, but not something i want 2017-12-09T15:22:57Z awolven quit (Remote host closed the connection) 2017-12-09T15:25:24Z stassats: huh, why do i have three threads from the start 2017-12-09T15:26:35Z nyef`: Hrm. Do I break safepoints on PPC/Darwin or not? 2017-12-09T15:27:40Z stassats: i can account for two threads on darwin, one for exception handling, another the main thread 2017-12-09T15:27:58Z nyef` doesn't have time to try and set up an OSX Leopard system at this point. 2017-12-09T15:28:02Z stassats: but where does the second lisp one come from 2017-12-09T15:28:13Z stassats: which sits at do_pending_interrupt, what 2017-12-09T15:28:23Z nyef`: Thruptions? 2017-12-09T15:28:29Z stassats: no safepoints involved 2017-12-09T15:28:57Z nyef`: No idea then. 2017-12-09T15:29:19Z stassats: grepping for make-thread 2017-12-09T15:29:55Z stassats: (sb-thread:list-all-threads) shows one thread 2017-12-09T15:30:21Z nyef`: Is it really a lisp thread, then? 2017-12-09T15:30:58Z stassats: now i'm not seeing it anymore 2017-12-09T15:32:13Z stassats: now i can't attach lldb at all 2017-12-09T15:33:01Z awolven joined #sbcl 2017-12-09T15:35:17Z nyef`: Hrm. Well, *that* didn't work. 2017-12-09T15:35:30Z awolven quit (Remote host closed the connection) 2017-12-09T15:35:43Z nyef`: "Waiting for 5 (GC_SETTLED) -> 3 (GC_INVOKED) [1 holders]" 2017-12-09T15:37:17Z stassats: now i get thread_set_exception_ports failed with return_code 268435466 2017-12-09T15:39:37Z stassats: 268435466 is not any of the values it can return 2017-12-09T15:45:40Z stassats: i don't want to have two exception handling threads 2017-12-09T15:47:15Z stassats: oh, but i can't 2017-12-09T15:47:37Z stassats: i need to run an event loop, can't do that if it's processing a fault 2017-12-09T15:47:45Z stassats: ok, two threads it is, sigh 2017-12-09T15:48:00Z stassats: but who watches the watcher's watcher? 2017-12-09T15:52:49Z nyef`: It's watchers all the way down? 2017-12-09T15:53:05Z nyef`: (Somewhere in that mess there just *has* to be a Vampire Slayer.) 2017-12-09T15:54:54Z awolven joined #sbcl 2017-12-09T16:13:08Z dougk_ joined #sbcl 2017-12-09T16:13:41Z dougk quit (Ping timeout: 260 seconds) 2017-12-09T16:20:07Z stassats: taking a step back, can it be done in a more sane way? 2017-12-09T16:20:42Z stassats: performing all the stuff catch_exception_raise does in the target thread 2017-12-09T16:23:34Z nyef`: Desk checking says that I didn't screw up the C-side changes. Which means that I somehow screwed up the assembly-side changes or I'm misunderstanding what's going on entirely. 2017-12-09T16:27:22Z stassats: how do signals work with SIGSEGV in the stack? 2017-12-09T16:28:00Z nyef`: SIGSEGV doesn't get to stay in the stack? 2017-12-09T16:28:20Z nyef`: Isn't this what the altstack is for? 2017-12-09T16:28:29Z stassats: i guess, how can i emulate that? 2017-12-09T16:29:23Z stassats: actually, the fault may happen not on the sack, but the signal emulator can touch stack guards when handling it 2017-12-09T16:31:53Z nyef`: Can the signal emulator check for (and release) the stack guards if necessary? 2017-12-09T16:32:09Z stassats: it already does so, but only when the target thread is faulting there 2017-12-09T16:32:24Z stassats: the problem is the signal emulator thread faulting there while setting things up 2017-12-09T16:33:04Z stassats: for some reason it needs around 1700 bytes 2017-12-09T16:33:16Z nyef`: So do the bounds-check first? 2017-12-09T16:33:40Z stassats: it's not always the same size, for some reason 2017-12-09T16:33:59Z stassats: and i can't calculate it without hard coding an empirical value 2017-12-09T16:34:42Z stassats: just check each push_context and stack_allocate 2017-12-09T16:40:58Z stassats: how do we uses the altstack? 2017-12-09T16:41:02Z stassats: how does sigstack.ss_sp=((char *) thread)+dynamic_values_bytes; work? 2017-12-09T16:50:30Z stassats: when another memory fault hits the sigsegv signal handler it reuses the altstack? 2017-12-09T16:56:02Z nyef`: The kernel won't switch to the altstack if the stack pointer is already within its bounds. 2017-12-09T17:07:36Z scymtym_: Shinmera: in https://github.com/Shirakumo/trial/issues/14, do you have any context about why "SBCL is run without UTF-8 support" and the "LC_CTYPE=C sbcl …" in https://bugs.launchpad.net/sbcl/+bug/1737304 ? 2017-12-09T17:07:38Z stassats: i guess i need to emulate an altstack 2017-12-09T17:08:18Z Shinmera: scymtym_: No 2017-12-09T17:08:29Z scymtym_: Shinmera: ok, thanks 2017-12-09T17:08:35Z Shinmera: I have no idea who that is or why they tried to use Trial 2017-12-09T17:09:25Z stassats: what happens when we run out of the altstack? 2017-12-09T17:10:46Z scymtym_: Shinmera: i thought there might be some unmentioned cascading failure like SBCL initially not detecting the system locale correctly or trial requiring a certain setup 2017-12-09T17:11:18Z Shinmera: No, I'm pretty sure it's just that when QL scans the tree it comes across the files with unicode in their names and that doesn't decode well. 2017-12-09T17:11:26Z Shinmera: So nothing at all about Trial itself 2017-12-09T17:11:47Z nyef`: stassats: I think it winds up being a combination of colliding something else and the kernel noticing that the altstack isn't in use the next time a SIGSEGV comes in... 2017-12-09T17:11:50Z Shinmera: Or rather, nothing at all about Trial's code. 2017-12-09T17:12:38Z stassats: time to switch to something else 2017-12-09T17:12:55Z stassats: not that big of an issue, but would be nice to solve, maybe later 2017-12-09T17:13:19Z scymtym_: Shinmera: yeah, i'm wondering where the "C" locale (or "running without UTF-8 support") comes from 2017-12-09T17:32:31Z nyef`: Okay, I think that I'm actually satisfied with general workingness of SB-SAFEPOINT, with the exception of callbacks on non-threaded builds. 2017-12-09T17:33:16Z nyef`: Now, SB-SAFEPOINT-STRICTLY and SB-THRUPTION are another matter. I really haven't looked into them. But SB-SAFEPOINT looks mostly-good. 2017-12-09T17:51:41Z corci: Yippee, build fixed! 2017-12-09T17:51:41Z corci: Project sbcl-master » clisp,ubuntu_trusty_32bit build #2714: FIXED in 39 min: http://ci.cor-lab.de/job/sbcl-master/featureset=clisp,label=ubuntu_trusty_32bit/2714/ 2017-12-09T17:52:43Z scymtym_ quit (Ping timeout: 250 seconds) 2017-12-09T18:16:31Z dougk_ quit (Ping timeout: 248 seconds) 2017-12-09T18:20:54Z dougk joined #sbcl 2017-12-09T18:23:45Z fiddlerwoaroof joined #sbcl 2017-12-09T18:53:23Z dougk quit (Ping timeout: 250 seconds) 2017-12-09T18:59:58Z dougk joined #sbcl 2017-12-09T19:22:37Z awolven quit (Remote host closed the connection) 2017-12-09T19:23:12Z awolven joined #sbcl 2017-12-09T19:24:26Z awolven quit (Remote host closed the connection) 2017-12-09T19:24:42Z awolven joined #sbcl 2017-12-09T19:27:12Z awolven quit (Remote host closed the connection) 2017-12-09T19:31:28Z awolven joined #sbcl 2017-12-09T19:55:14Z stassats: :TRACE :ENCAPSULATE NIL broken on solaris 2017-12-09T20:05:38Z awolven quit (Remote host closed the connection) 2017-12-09T20:16:57Z smurfrobot quit (Remote host closed the connection) 2017-12-09T20:35:14Z smurfrobot joined #sbcl 2017-12-09T20:40:00Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-09T20:41:04Z dougk quit (Read error: Connection reset by peer) 2017-12-09T20:41:20Z dougk joined #sbcl 2017-12-09T20:50:15Z stassats: and darwin already allocates a 4MB altstack for each thread, which goes unused 2017-12-09T20:51:23Z scymtym joined #sbcl 2017-12-09T20:51:25Z stassats: which is actually more than the main stack, very lovely 2017-12-09T20:52:33Z stassats: 2MB for the control stack, 4MB for the altstack 2017-12-09T20:52:46Z stassats: 512KB for the altstack on linux 2017-12-09T20:56:02Z stassats: gotta love * Win32 doesn't have SIGSTKSZ, and we're not switching stacks anyway, * so define it arbitrarily */ #define SIGSTKSZ 1024 2017-12-09T20:56:11Z stassats: so, waste 1K just because 2017-12-09T20:57:35Z stassats: a thread takes up 8MB on darwin 2017-12-09T20:57:54Z stassats: half of it for the unused alt-stack 2017-12-09T20:59:25Z awolven joined #sbcl 2017-12-09T21:09:37Z awolven quit (Remote host closed the connection) 2017-12-09T21:10:13Z awolven joined #sbcl 2017-12-09T21:14:42Z awolven quit (Ping timeout: 258 seconds) 2017-12-09T21:36:21Z stassats: since we're handling exceptions in a separate thread we can be smarter about stack exhaustion and not use alt stack 2017-12-09T21:36:30Z stassats: even 512K sounds like too much waste 2017-12-09T21:37:54Z nyef`: Does SB-SAFEPOINT-STRICTLY require SB-THRUPTION in order for signals to get handled? 2017-12-09T21:38:12Z stassats: probably 2017-12-09T21:38:41Z stassats: what's with the name, thruption? 2017-12-09T21:40:27Z scymtym: thread interruption? 2017-12-09T21:41:01Z stassats: and other schemes interrupt some other entities? 2017-12-09T21:44:01Z nyef`: Lovely. sb-safepoint's sigint handler uses interrupt-thread. sb-safepoint-strictly runs the handler on another thread... 2017-12-09T21:44:28Z nyef`: ... there is precisely ONE reference to WAKE-THREAD in git. And it's not a definition. 2017-12-09T21:44:36Z stassats: yeah, that's why it deadlocks if it happens to interrupt something like malloc or pthread_create 2017-12-09T21:45:03Z nyef`: ... Because it's an alien routine. Ugh. 2017-12-09T21:45:35Z nyef`: Non-thruption wake-thread uses SIGPIPE... 2017-12-09T21:45:44Z stassats: i think it could queue interruptions for some other thread, though condition-notify may also deadlock 2017-12-09T21:46:33Z stassats: so, signalfd or something? 2017-12-09T21:48:31Z nyef`: And SIGPIPE is not synchronous, so it gets handled on a signal-handler thread. 2017-12-09T21:48:36Z nyef`: The circle is complete. 2017-12-09T21:49:22Z stassats: nobody cares about pclsring 2017-12-09T21:50:04Z stassats: out of process debuggers, anyone? 2017-12-09T21:50:15Z nyef`: Yes, please! 2017-12-09T21:53:48Z stassats: darwin signal emulation, do we really need to emulate signals for WP faults? 2017-12-09T21:54:16Z stassats: can run mprotect and adjust bits from the exception handler thread 2017-12-09T22:00:34Z stassats: sem_post is required to be async-signal-safe 2017-12-09T22:10:21Z nyef`: "Leftover thread (broken)"? 2017-12-09T22:10:35Z stassats: memory_fault_handler is confusingly indented for handle_safepoint_violation 2017-12-09T22:10:51Z stassats: nyef`: yeah, some test hasn't joined its threads 2017-12-09T22:11:49Z stassats: what's the point of thread_mutex_lock(&mach_exception_lock), nothing can enter that thread twice 2017-12-09T22:13:36Z stassats: at that rate i will end up with signals being handled better on darwin than on linux 2017-12-09T22:25:09Z stassats: calling gencgc_handle_wp_violation from catch_exception_raise seems to work nicely 2017-12-09T22:33:05Z stassats: that leaves do_pending_interrupt 2017-12-09T22:34:38Z stassats: which could be a function call, couldn't it? 2017-12-09T22:50:48Z stassats: really, why isn't it already? 2017-12-09T22:52:22Z stassats: just three more bytes than a break 2017-12-09T23:08:45Z stassats: (defun foo (x) (if (and (integerp x) (> x 0)) (foo (1- x)) (car x)) 1) (foo 63329) fails badly on darwin now 2017-12-09T23:15:34Z stassats: and (defun foo (x) (if (and (integerp x) (> x 0)) (foo (1- x)) (car x)) 1) (foo 63356) faults twice on linux, presumably in the kernel 2017-12-09T23:17:39Z stassats: so handling errors closes to the end of the stack is dangerous 2017-12-09T23:17:47Z stassats: close 2017-12-09T23:19:27Z jack_rabbit quit (Ping timeout: 248 seconds) 2017-12-09T23:21:09Z stassats: but error traps should also be function calls 2017-12-09T23:23:53Z nyef`: Mmm. We could do quite a bit in terms of making error traps call an assembly-routine which figures out most of the details by checking the return address in a chart of code locations. 2017-12-09T23:23:55Z SamSkulls joined #sbcl 2017-12-09T23:24:39Z stassats: we already have additional contexts attached to internal errors in the debug info 2017-12-09T23:24:46Z corci: Project sbcl-master-windows » Windows_7_64bit build #1547: FAILURE in 29 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_64bit/1547/ 2017-12-09T23:24:53Z awolven joined #sbcl 2017-12-09T23:26:39Z stassats: i hate the way debug-int is done 2017-12-09T23:26:53Z stassats: spaghetti on spaghetti, each time i touch it i have to unravel and unravel it 2017-12-09T23:27:11Z stassats: yak shaving alert 2017-12-09T23:27:52Z stassats: " Failure: type.pure.lisp / (TYPE-DERIVATION LOGICAL-OPERATIONS SCALING)" again, sigh 2017-12-09T23:28:10Z nyef`: I think that the worst thing about debug-int is that it was originally supposed to be a PUBLIC interface. 2017-12-09T23:28:19Z awolven quit (Remote host closed the connection) 2017-12-09T23:28:35Z stassats: 3608 lines 2017-12-09T23:28:38Z stassats: in debug-int.lisp 2017-12-09T23:28:56Z stassats: second largest file 2017-12-09T23:29:24Z stassats: late-type.lisp comes in at 4060 2017-12-09T23:29:30Z stassats: in code/, that is 2017-12-09T23:31:02Z stassats: where can't we really get away without signals: MMU, be it WP or SP (safepoints could be a call as well) 2017-12-09T23:31:20Z stassats: stop-the-world where it uses signals 2017-12-09T23:31:49Z stassats: SIGCHLD can use sigwait 2017-12-09T23:33:19Z jack_rabbit joined #sbcl 2017-12-09T23:34:31Z awolven joined #sbcl 2017-12-09T23:50:26Z jibanes quit (Ping timeout: 260 seconds) 2017-12-09T23:52:03Z jibanes joined #sbcl 2017-12-10T00:04:01Z stassats quit (Ping timeout: 240 seconds) 2017-12-10T00:06:15Z stassats joined #sbcl 2017-12-10T00:07:47Z dougk_ joined #sbcl 2017-12-10T00:11:26Z dougk quit (Ping timeout: 276 seconds) 2017-12-10T00:26:42Z awolven quit (Remote host closed the connection) 2017-12-10T00:26:57Z smurfrobot joined #sbcl 2017-12-10T00:27:24Z awolven joined #sbcl 2017-12-10T00:31:05Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-10T00:31:50Z awolven quit (Ping timeout: 255 seconds) 2017-12-10T00:32:30Z awolven joined #sbcl 2017-12-10T00:33:37Z cromachina quit (Read error: Connection reset by peer) 2017-12-10T00:50:15Z cromachina joined #sbcl 2017-12-10T00:55:25Z _death: https://gist.github.com/death/ebd8b46772c23ef27311e46f15c2051d what am I doing wrong? (the second label doesn't look right) 2017-12-10T00:58:07Z stassats quit (Ping timeout: 248 seconds) 2017-12-10T01:00:12Z awolven quit (Remote host closed the connection) 2017-12-10T01:00:55Z awolven joined #sbcl 2017-12-10T01:02:59Z nyef`: _death: What looks wrong about it? 2017-12-10T01:03:21Z stassats joined #sbcl 2017-12-10T01:03:36Z awolven quit (Remote host closed the connection) 2017-12-10T01:03:49Z stassats: now getting a warning for (defun foo (x) (let ((m "abc")) (print (delete x m)) (setf m 10))) 2017-12-10T01:03:52Z awolven joined #sbcl 2017-12-10T01:03:55Z _death: nyef: maybe I'm missing something.. why isn't the second label emitted after the nop? 2017-12-10T01:04:03Z stassats: need to cook up the* and then expand (setf svref) into it and the ticket can be closed 2017-12-10T01:04:06Z nyef`: Ahh. 2017-12-10T01:04:40Z nyef`: Actually, have a look at the byte stream. 2017-12-10T01:05:15Z _death: nyef: the bytes are #(235 1 144 144 235 0 144 144) .. so you can see that the second relative jump has offset 0 2017-12-10T01:05:23Z nyef`: Right. 2017-12-10T01:06:11Z nyef`: Why would it mis-assemble like that? 2017-12-10T01:08:43Z nyef`: ... Looking at some of my own hacks, maybe something to do with back-patches? 2017-12-10T01:09:52Z nyef`: In a file from 2006: "We need to call process-back-patches once per fixup after the first, due to a nasty assembler bug. We need to fix that sometime." 2017-12-10T01:10:47Z nyef`: (loop while (some #'sb-assem::back-patch-p (sb-assem::segment-annotations segment)) do (sb-assem::process-back-patches segment)) 2017-12-10T01:11:15Z nyef`: This is after finalizing the segment. 2017-12-10T01:13:16Z _death: doesn't seem to help, but I'm digging as well 2017-12-10T01:21:40Z nyef`: Hrm, yeah, that seems to make things worse, somehow. 2017-12-10T01:22:16Z nyef`: ... I give up? 2017-12-10T01:24:40Z _death: hehe ok, I'm still on it 2017-12-10T01:28:59Z nyef`: You might INSPECT the segment pre- and post- finalization. 2017-12-10T01:29:08Z nyef`: See if there's anything suspicious there. 2017-12-10T01:29:37Z _death: already doing that.. the label annotation is correct 2017-12-10T01:31:49Z _death: (I mean before finalization) 2017-12-10T01:34:30Z _death: but indeed there is still a back-patch left over 2017-12-10T01:35:28Z nyef`: Increase the number of loop repeats and see what happens? 2017-12-10T01:35:32Z _death: calling process-back-patches twice instead of once before compact-segment-buffer (in finalize) "solves" it 2017-12-10T01:36:45Z _death: even if I increase the repeat count to 10.. so I'm guessing that process-back-patches just terminates too early 2017-12-10T01:55:55Z _death: I think (setf next (cdr prev)) should be (when prev (setf next (cdr prev))) 2017-12-10T02:05:44Z awolven quit (Remote host closed the connection) 2017-12-10T02:06:15Z awolven joined #sbcl 2017-12-10T02:15:51Z _death: well, I built and ran sbcl tests with my change and it gives https://gist.github.com/death/456e78c97c26e6cbdad5fc1ec06c50e5 .. this is bf6a7a so I'll need to merge with HEAD and do it again.. tomorrow 2017-12-10T02:16:35Z awolven quit (Remote host closed the connection) 2017-12-10T02:16:47Z _death: doubt the run-program tests are related, don't know what code/data-separation test is 2017-12-10T02:18:19Z awolven joined #sbcl 2017-12-10T02:21:46Z nyef`: _death: Yeah, that all looks fine. Update to HEAD and install /bin/ed and you should get a good test run. 2017-12-10T02:28:27Z smurfrobot joined #sbcl 2017-12-10T02:32:31Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-10T02:38:32Z awolven quit (Remote host closed the connection) 2017-12-10T02:39:36Z _death: apparent success (reached end of run-tests.sh normally) 2017-12-10T02:57:42Z _death: anyway, here's the commit: https://github.com/death/sbcl/commit/a07ad9d65805c63e33e5376c9cda97d6962b8900 now it's time to sleep 2017-12-10T03:14:22Z stassats: trying to make (setf (sbit #*10101 0) x) say "Destructive function (SETF SBIT) called on constant data." 2017-12-10T03:14:33Z stassats: now it says that and "Destructive function (SETF AREF) called on constant data." at the same time 2017-12-10T03:19:38Z stassats: to truly make it better i ought to be adding the modifying bit to types, not casts 2017-12-10T03:21:36Z stassats: and i will get it wrong with intersections and unions 2017-12-10T03:34:26Z stassats: better push it before i start to regret it the way it's done 2017-12-10T03:37:05Z stassats: i have redone attaching extra information to function types 5 times or so, i guess i'll have to redo it a couple more times before i get it right 2017-12-10T04:12:02Z smurfrobot joined #sbcl 2017-12-10T04:12:47Z stassats quit (Ping timeout: 248 seconds) 2017-12-10T04:16:33Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-10T04:20:48Z smurfrobot joined #sbcl 2017-12-10T04:20:48Z smurfrobot quit (Remote host closed the connection) 2017-12-10T04:21:28Z smurfrobot joined #sbcl 2017-12-10T04:25:35Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-10T05:25:14Z smurfrobot joined #sbcl 2017-12-10T05:29:44Z smurfrobot quit (Ping timeout: 255 seconds) 2017-12-10T05:30:17Z smurfrobot joined #sbcl 2017-12-10T05:34:21Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-10T06:17:52Z Bike quit (Quit: Lost terminal) 2017-12-10T06:24:07Z smurfrobot joined #sbcl 2017-12-10T06:28:51Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-10T06:29:50Z smurfrobot joined #sbcl 2017-12-10T06:36:47Z smurfrobot quit (Ping timeout: 255 seconds) 2017-12-10T07:08:16Z smurfrobot joined #sbcl 2017-12-10T07:12:41Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-10T07:30:22Z smurfrobot joined #sbcl 2017-12-10T07:34:50Z smurfrobot quit (Ping timeout: 255 seconds) 2017-12-10T08:05:53Z smurfrobot joined #sbcl 2017-12-10T08:10:39Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-10T08:37:39Z aeth quit (Ping timeout: 246 seconds) 2017-12-10T08:39:27Z aeth joined #sbcl 2017-12-10T08:43:09Z smurfrobot joined #sbcl 2017-12-10T08:47:27Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-10T09:23:44Z flip214 quit (Read error: Connection reset by peer) 2017-12-10T09:23:52Z flip214 joined #sbcl 2017-12-10T09:23:52Z flip214 quit (Changing host) 2017-12-10T09:23:52Z flip214 joined #sbcl 2017-12-10T10:39:05Z scymtym quit (Ping timeout: 240 seconds) 2017-12-10T11:06:53Z scymtym joined #sbcl 2017-12-10T11:17:06Z scymtym_ joined #sbcl 2017-12-10T11:20:57Z scymtym quit (Ping timeout: 250 seconds) 2017-12-10T11:21:22Z BitPuffin|osx joined #sbcl 2017-12-10T12:12:27Z karswell joined #sbcl 2017-12-10T12:14:56Z karswell quit (Remote host closed the connection) 2017-12-10T12:15:44Z karswell joined #sbcl 2017-12-10T12:45:03Z Bike joined #sbcl 2017-12-10T12:50:38Z stassats joined #sbcl 2017-12-10T13:24:27Z awolven joined #sbcl 2017-12-10T13:28:08Z awolven quit (Remote host closed the connection) 2017-12-10T13:29:30Z rgrau joined #sbcl 2017-12-10T13:40:57Z attila_lendvai joined #sbcl 2017-12-10T13:52:10Z smurfrobot joined #sbcl 2017-12-10T14:11:31Z awolven joined #sbcl 2017-12-10T14:14:01Z awolven quit (Remote host closed the connection) 2017-12-10T14:15:13Z awolven joined #sbcl 2017-12-10T14:16:31Z nyef` quit (Ping timeout: 248 seconds) 2017-12-10T14:18:49Z awolven quit (Remote host closed the connection) 2017-12-10T14:19:32Z awolven joined #sbcl 2017-12-10T14:23:53Z awolven quit (Ping timeout: 255 seconds) 2017-12-10T14:29:57Z corci: Yippee, build fixed! 2017-12-10T14:29:57Z corci: Project sbcl-master-windows » Windows_7_64bit build #1549: FIXED in 29 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_64bit/1549/ 2017-12-10T14:36:42Z josemanuel joined #sbcl 2017-12-10T15:52:33Z stassats quit (Ping timeout: 248 seconds) 2017-12-10T16:07:51Z corci: Yippee, build fixed! 2017-12-10T16:07:52Z corci: Project sbcl-master » safepoints,ubuntu_trusty_32bit build #2717: FIXED in 23 min: http://ci.cor-lab.de/job/sbcl-master/featureset=safepoints,label=ubuntu_trusty_32bit/2717/ 2017-12-10T16:07:58Z corci: Yippee, build fixed! 2017-12-10T16:07:58Z corci: Project sbcl-master » without-threads,ubuntu_trusty_64bit build #2717: FIXED in 23 min: http://ci.cor-lab.de/job/sbcl-master/featureset=without-threads,label=ubuntu_trusty_64bit/2717/ 2017-12-10T16:10:02Z scymtym_: there will be about 8 more of those :( 2017-12-10T16:18:21Z dougk_ quit (Ping timeout: 240 seconds) 2017-12-10T16:24:34Z corci: Yippee, build fixed! 2017-12-10T16:24:34Z corci: Project sbcl-master » clisp,ubuntu_trusty_32bit build #2717: FIXED in 39 min: http://ci.cor-lab.de/job/sbcl-master/featureset=clisp,label=ubuntu_trusty_32bit/2717/ 2017-12-10T16:25:22Z dougk joined #sbcl 2017-12-10T16:30:12Z dougk quit (Ping timeout: 268 seconds) 2017-12-10T16:31:18Z DeadTrickster joined #sbcl 2017-12-10T16:32:33Z DeadTrickster__ quit (Ping timeout: 248 seconds) 2017-12-10T16:33:12Z corci: Yippee, build fixed! 2017-12-10T16:33:13Z corci: Project sbcl-master » ccl,ubuntu_trusty_32bit build #2717: FIXED in 48 min: http://ci.cor-lab.de/job/sbcl-master/featureset=ccl,label=ubuntu_trusty_32bit/2717/ 2017-12-10T16:35:34Z corci: Yippee, build fixed! 2017-12-10T16:35:34Z corci: Project sbcl-master » without-unicode,ubuntu_trusty_32bit build #2717: FIXED in 50 min: http://ci.cor-lab.de/job/sbcl-master/featureset=without-unicode,label=ubuntu_trusty_32bit/2717/ 2017-12-10T16:35:43Z DeadTrickster quit (Ping timeout: 248 seconds) 2017-12-10T16:37:50Z DeadTrickster joined #sbcl 2017-12-10T16:39:01Z corci: Yippee, build fixed! 2017-12-10T16:39:01Z corci: Project sbcl-master » without-threads,ubuntu_trusty_32bit build #2717: FIXED in 54 min: http://ci.cor-lab.de/job/sbcl-master/featureset=without-threads,label=ubuntu_trusty_32bit/2717/ 2017-12-10T16:52:54Z corci: Yippee, build fixed! 2017-12-10T16:52:55Z corci: Project sbcl-master » fancy,ubuntu_trusty_64bit build #2717: FIXED in 1 hr 8 min: http://ci.cor-lab.de/job/sbcl-master/featureset=fancy,label=ubuntu_trusty_64bit/2717/ 2017-12-10T17:02:19Z awolven joined #sbcl 2017-12-10T17:04:52Z awolven quit (Remote host closed the connection) 2017-12-10T17:08:14Z dougk joined #sbcl 2017-12-10T17:14:17Z awolven joined #sbcl 2017-12-10T17:14:22Z corci: Project sbcl-master » without-unicode,ubuntu_trusty_64bit build #2717: FAILURE in 1 hr 29 min: http://ci.cor-lab.de/job/sbcl-master/featureset=without-unicode,label=ubuntu_trusty_64bit/2717/ 2017-12-10T17:22:27Z dougk quit (Ping timeout: 240 seconds) 2017-12-10T17:26:11Z scymtym_: ^ memory fault in SYMBOL-VALUE-IN-THREAD 2017-12-10T17:31:44Z corci: Yippee, build fixed! 2017-12-10T17:31:45Z corci: Project sbcl-master » safepoints,ubuntu_trusty_64bit build #2717: FIXED in 1 hr 46 min: http://ci.cor-lab.de/job/sbcl-master/featureset=safepoints,label=ubuntu_trusty_64bit/2717/ 2017-12-10T17:47:31Z awolven quit (Remote host closed the connection) 2017-12-10T17:47:59Z awolven joined #sbcl 2017-12-10T17:48:00Z attila_lendvai quit (Quit: Leaving.) 2017-12-10T17:49:09Z dougk joined #sbcl 2017-12-10T17:55:17Z scymtym_ quit (Ping timeout: 250 seconds) 2017-12-10T18:05:56Z awolven quit (Remote host closed the connection) 2017-12-10T18:06:26Z BitPuffin|osx quit (Ping timeout: 255 seconds) 2017-12-10T18:06:29Z awolven joined #sbcl 2017-12-10T18:08:43Z leah2 quit (Ping timeout: 250 seconds) 2017-12-10T18:10:56Z awolven quit (Ping timeout: 255 seconds) 2017-12-10T18:11:42Z awolven joined #sbcl 2017-12-10T18:12:13Z leah2 joined #sbcl 2017-12-10T18:47:42Z dougk quit (Ping timeout: 246 seconds) 2017-12-10T18:53:56Z nyef` joined #sbcl 2017-12-10T19:00:03Z DeadTrickster_ joined #sbcl 2017-12-10T19:00:03Z stassats joined #sbcl 2017-12-10T19:01:45Z stassats: what is that test even testing? 2017-12-10T19:01:52Z nyef`: Hello stassats. 2017-12-10T19:02:01Z easye quit (Remote host closed the connection) 2017-12-10T19:02:03Z stassats: nyef`: safepoints on arm64 2017-12-10T19:02:27Z nyef`: Hmm. 2017-12-10T19:02:32Z scymtym joined #sbcl 2017-12-10T19:02:43Z stassats: seem to work too 2017-12-10T19:02:44Z nyef`: I've got a bunch of commentary updates for safepoint.c that I was going to ask you to review. 2017-12-10T19:03:14Z stassats: how can %thread-sap fault? 2017-12-10T19:03:44Z DeadTrickster quit (Ping timeout: 276 seconds) 2017-12-10T19:04:18Z stassats: it's touching all_threads without grabbing a lock? 2017-12-10T19:04:44Z minion quit (Read error: No route to host) 2017-12-10T19:04:48Z specbot quit (Read error: No route to host) 2017-12-10T19:06:17Z nyef`: stassats: I'm thinking to commit this: http://repo.or.cz/sbcl/nyef.git/commitdiff/07e7e3e7dcec271b9d5ed67cf4dfc00da3653f42 2017-12-10T19:06:22Z stassats: and a thread dies while it's doing so? 2017-12-10T19:06:31Z specbot joined #sbcl 2017-12-10T19:07:10Z minion joined #sbcl 2017-12-10T19:07:24Z nyef`: Is there anything that I should add/remove/change on it before I do so? 2017-12-10T19:07:40Z stassats: "waiting for post-allocation safepoint trap." only for that trap? 2017-12-10T19:07:44Z stassats: how can it tell? 2017-12-10T19:08:02Z karswell quit (Read error: Connection reset by peer) 2017-12-10T19:08:42Z karswell joined #sbcl 2017-12-10T19:09:56Z nyef`: Because there is one, and it's the next safepoint trap for whichever thread actually triggered the GC. 2017-12-10T19:10:03Z stassats: what happens if we're gcing and a foreign thread makes a callback? 2017-12-10T19:10:18Z stassats: safepoint or not 2017-12-10T19:10:45Z stassats: nyef`: but other threads do not know that? 2017-12-10T19:11:18Z nyef`: Other threads will know that they aren't eligable to run the GC, and will wait for GC_MESSAGE (see thread_in_lisp_raised()). 2017-12-10T19:11:22Z Chream joined #sbcl 2017-12-10T19:11:32Z stassats: symbol-value-in-thread really can't deal with the thread dying, can it? 2017-12-10T19:11:37Z nyef`: thread.c / init_new_thread() includes a wait for GC_NONE. 2017-12-10T19:11:41Z stassats: what is really the purpose of symbol-value-in-thread? debugging? 2017-12-10T19:12:05Z stassats: nyef`: why does it need to wait for that safepoint? 2017-12-10T19:12:24Z stassats: if it ask for gc, it's already safe? 2017-12-10T19:14:06Z nyef`: I have no idea if it's necessary to wait or not. This is probably one of those situations where it was set up in the gnarly early days of pseduo-atomic (or earlier!) and hasn't been seriously examined since. 2017-12-10T19:18:28Z nyef`: Honestly, I have a couple of designs that would allow us to eliminate PA around allocation entirely. "Oh, noes, someone tripped an interrupt in the middle of an allocation sequence, so we have this potentially-uninitialized object of known size and location on the heap." 2017-12-10T19:19:54Z stassats: it only matters if it runs the gc in the interrupt 2017-12-10T19:20:04Z stassats: otherwise it's just a bunch of unreferenced conses 2017-12-10T19:20:48Z nyef`: Mmm. And there's little reason why we couldn't fix up the GC so that it knows how to deal with an allocation-in-process. 2017-12-10T19:21:34Z stassats: bumping the allocation pointer is also not atomic 2017-12-10T19:22:19Z nyef`: Anyway, I'm trying to be done with GC issues for a while. 2017-12-10T19:22:55Z stassats: can we make symbol-value-in-thread be immune to thread death, i.e. prevent the thread from dying in the first place 2017-12-10T19:22:58Z Chream quit (Remote host closed the connection) 2017-12-10T19:24:08Z stassats: grabbing *all-threads-lock*? 2017-12-10T19:24:30Z nyef`: ... is the all-threads-lock shared between lisp and C, or are there two locks with confuzzlingly similar names? 2017-12-10T19:24:31Z Chream joined #sbcl 2017-12-10T19:24:40Z stassats: the latter 2017-12-10T19:25:33Z stassats: but why does the test fail? there's no threads dying 2017-12-10T19:25:48Z stassats: oh, but there is, ok 2017-12-10T19:26:29Z stassats: ok, grabbing *all-threads-lock* in symbol-value-in-thread, what are we risking to deadlock? 2017-12-10T19:27:10Z stassats: but grabbing *all-threads-lock* still doesn't work, really need to grab all_threads_lock 2017-12-10T19:27:47Z stassats: uh, both? 2017-12-10T19:28:41Z stassats: (with-*all-threads-lock* (sap-value (with-all_threads-lock (find-thread-sap)) offset)) 2017-12-10T19:28:49Z stassats: two locks, what can deadlock here? 2017-12-10T19:31:13Z stassats: ok, back to safepoints, why is undo_init_new_thread like that? 2017-12-10T19:31:45Z stassats: not setting set_thread_state(th, STATE_DEAD); on safepoints 2017-12-10T19:32:03Z nyef`: I have no idea. 2017-12-10T19:34:35Z stassats: ok, i'll implement (with-*all-threads-lock* (sap-value (with-all_threads-lock (find-thread-sap)) offset)) first and thing about dead locks later 2017-12-10T19:36:32Z stassats: or why not keep the sap for the thread in the thread struct? then it'll only need to lock *all-threads-lock* 2017-12-10T19:37:59Z stassats: that'll require either more vops or calling into c each time a new thread is made 2017-12-10T19:38:27Z stassats: ok, i'll just translate %thread-sap into c and make it safe 2017-12-10T19:39:12Z stassats: and %symbol-value-in-thread already grabs with-all-threads-lock, so just need to change %thread-sap, that's easy 2017-12-10T19:40:46Z stassats: to answer "set_thread_state(th, STATE_DEAD); on safepoints", safepoints have no thread state at all 2017-12-10T19:43:46Z nyef`: ... Hunh. So why aren't the old thread state constants conditioned out in the header? 2017-12-10T19:44:36Z stassats: but the semaphores are 2017-12-10T19:44:59Z stassats: maybe the state slot is used for something else 2017-12-10T19:46:40Z stassats: ok, i think it's actually simpler to stash the thread sap at thread creating time 2017-12-10T19:49:00Z stassats: thread->os-thread, what would that be, thread->thread? 2017-12-10T19:49:10Z stassats: three different threads, very nice 2017-12-10T19:50:23Z stassats: primitive-thread? 2017-12-10T20:04:28Z stassats: why does set-symbol-value-in-thread pin VALUE? 2017-12-10T20:04:47Z stassats: (setf sap-ref-lispobj) does not work properly or something? 2017-12-10T20:05:13Z josemanuel quit (Quit: leaving) 2017-12-10T20:07:16Z stassats: seems to use a descriptor-reg everywhere 2017-12-10T20:10:37Z Chream quit (Remote host closed the connection) 2017-12-10T20:20:05Z karswell_ joined #sbcl 2017-12-10T20:21:05Z karswell quit (Read error: Connection reset by peer) 2017-12-10T20:25:09Z stassats: ok, i think attach_os_thread is not safe to perform during GCing 2017-12-10T20:26:05Z stassats: lacking WITH_GC_AT_SAFEPOINTS_ONLY() around a funcall 2017-12-10T20:31:37Z dougk joined #sbcl 2017-12-10T20:36:49Z dougk quit (Ping timeout: 248 seconds) 2017-12-10T20:47:50Z corci: Project sbcl-master » without-threads,ubuntu_trusty_64bit build #2718: FAILURE in 8 min 26 sec: http://ci.cor-lab.de/job/sbcl-master/featureset=without-threads,label=ubuntu_trusty_64bit/2718/ 2017-12-10T20:50:22Z stassats: my bad 2017-12-10T21:18:01Z whoman quit (Ping timeout: 240 seconds) 2017-12-10T21:26:35Z corci: Yippee, build fixed! 2017-12-10T21:26:35Z corci: Project sbcl-master » ccl,ubuntu_trusty_64bit build #2719: FIXED in 32 min: http://ci.cor-lab.de/job/sbcl-master/featureset=ccl,label=ubuntu_trusty_64bit/2719/ 2017-12-10T21:55:59Z dougk joined #sbcl 2017-12-10T22:01:35Z dougk quit (Ping timeout: 248 seconds) 2017-12-10T22:04:31Z corci: Project sbcl-master-windows » Windows_7_64bit build #1555: FAILURE in 29 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_64bit/1555/ 2017-12-10T22:06:30Z stassats: darn, type.pure.lisp / (TYPE-DERIVATION LOGICAL-OPERATIONS SCALING) didn't become more robust 2017-12-10T22:06:42Z stassats: i can't really reproduce it locally 2017-12-10T22:07:53Z stassats: it should account for scheduling, maybe the vm is being throttled? 2017-12-10T22:08:27Z stassats: marking as fails-on, can't really deal with it 2017-12-10T22:10:09Z stassats: ok, will turn some more knobs first 2017-12-10T22:11:31Z corci: Yippee, build fixed! 2017-12-10T22:11:32Z corci: Project sbcl-master » without-unicode,ubuntu_trusty_64bit build #2719: FIXED in 1 hr 17 min: http://ci.cor-lab.de/job/sbcl-master/featureset=without-unicode,label=ubuntu_trusty_64bit/2719/ 2017-12-10T22:32:19Z whoman joined #sbcl 2017-12-10T22:32:22Z whoman quit (Remote host closed the connection) 2017-12-10T22:44:40Z corci: Yippee, build fixed! 2017-12-10T22:44:41Z corci: Project sbcl-master-windows » Windows_7_64bit build #1556: FIXED in 29 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_64bit/1556/ 2017-12-10T22:45:42Z stassats: and i hope it stays that way 2017-12-10T23:13:26Z nyef`: Wow. Okay, I'm mostly awake again. 2017-12-10T23:14:22Z nyef`: stassats: Barring any specific change requests, I'm probably going to commit that commentary change along with a NEWS update at some point this evening. 2017-12-10T23:14:39Z jack_rabbit quit (Read error: Connection reset by peer) 2017-12-10T23:14:43Z stassats: ok 2017-12-10T23:34:45Z jack_rabbit joined #sbcl 2017-12-10T23:59:45Z stassats: i think i see how i can use just one OS locking primitive per thread 2017-12-11T00:00:20Z nyef`: Should I merge what I have before you start? 2017-12-11T00:00:48Z stassats: i need a queue which registers waiting threads, releasing a mutex will wake that thread using semaphore-signal/pthread_cond_signal/whatever it has 2017-12-11T00:00:59Z stassats: nyef`: i doubt i'll finish it this year 2017-12-11T00:02:04Z stassats: i need to brush up on the literature to avoid any mistakes 2017-12-11T00:02:31Z stassats: i think futex is doing that under the hood already 2017-12-11T00:09:20Z stassats: and i think i'll start out of tree first 2017-12-11T00:12:12Z stassats: it can be portable 2017-12-11T00:12:48Z stassats: just needs atomic operations and calling to C 2017-12-11T00:32:36Z pkhuong: stassats: right, that's futexes. emulating without OS support is painful... you can do *some* things with a waitable event per thread and enqueueing threads atomically 2017-12-11T00:33:14Z pkhuong: significantly slower than an unfair spinlock, or even than futex, in the uncontended case 2017-12-11T00:34:21Z stassats: couldn't just not enqueue itself in the uncontended case? 2017-12-11T00:35:10Z pkhuong: there's extra overhead to tell the following thread to enqueue 2017-12-11T00:35:20Z pkhuong: in a way that doesn't lose wake ups 2017-12-11T00:35:47Z pkhuong: I'm semi interested in a hybrid of the above and the current exponential sleep fallback 2017-12-11T00:36:17Z pkhuong: so lost wake ups are "just" bad performance. but bad performance == unusable on windows 2017-12-11T00:37:21Z nyef`: We're not looking to resurrect lutexes, are we? 2017-12-11T00:37:51Z pkhuong: some of the overhead in queue locks comes from strict FIFO, esp when waiters can cancel their wait 2017-12-11T00:37:57Z stassats: my main goal = stop wasting battery while looping in a spinlock 2017-12-11T00:38:14Z pkhuong: so a relaxed model can probably get away with something faster 2017-12-11T00:38:50Z pkhuong: also, instead of heap allocated mutex/condvar, we could have fixed size table of them 2017-12-11T00:38:57Z pkhuong: and address pseudorandomly in there 2017-12-11T00:39:03Z stassats: nyef`: i don't remember how lutexes operated 2017-12-11T00:39:44Z stassats: pkhuong: like futexes? 2017-12-11T00:39:46Z pkhuong: extra contention, but futexes have a similar pattern anyway 2017-12-11T00:42:47Z stassats: i'm already using os synchronization primitives where i need, but it'd be nice to expose them to everyone in a proper way 2017-12-11T00:43:50Z pkhuong: I think event per thread work better with lock-free primitives 2017-12-11T00:44:01Z stassats: probably saved a kilowatt-hour by now by switching from sb-thread:condition-wait to mac's dispatch thingies 2017-12-11T00:44:06Z pkhuong: in that they're easier to use efficiently without adding even more races 2017-12-11T00:45:49Z pkhuong: #concurrencykit (ok, mostly me) was thinking about implementing that portably fwiw. we still don't have anything usable, but also no one's been clamouring for it 2017-12-11T00:54:04Z stassats: each hash-table has a lock, so using small locks would be beneficial there 2017-12-11T00:57:35Z jibanes quit (Ping timeout: 240 seconds) 2017-12-11T00:59:23Z jibanes joined #sbcl 2017-12-11T01:05:43Z shka quit (Read error: Connection reset by peer) 2017-12-11T01:05:58Z shka joined #sbcl 2017-12-11T01:15:53Z stassats: we could actually lock anything with a widetag 2017-12-11T01:16:46Z nyef`: Can we come up with a hash table design that doesn't need a lock? 2017-12-11T01:44:32Z Ionic quit (Ping timeout: 255 seconds) 2017-12-11T01:45:34Z Ionic joined #sbcl 2017-12-11T01:46:39Z nyef`: stassats: Why not push WITH_GC_AT_SAFEPOINTS_ONLY into funcallN directly, instead of this faffing around finding all of the call sites? 2017-12-11T01:49:41Z shka quit (Ping timeout: 240 seconds) 2017-12-11T01:52:04Z shka joined #sbcl 2017-12-11T01:54:56Z shka quit (Excess Flood) 2017-12-11T01:56:30Z shka joined #sbcl 2017-12-11T01:57:27Z stassats: nyef`: yes, but i want you to do it 2017-12-11T01:59:18Z nyef`: Heh. 2017-12-11T02:00:02Z nyef`: Should I be supplying commit IDs when I change a bug status to Fix Committed? 2017-12-11T02:00:23Z stassats: i do, easier to figure things out later 2017-12-11T02:00:27Z whoman joined #sbcl 2017-12-11T02:00:32Z stassats: nobody else does 2017-12-11T02:00:41Z stassats: i rarely actually use it 2017-12-11T02:01:17Z stassats: rarely do i need the hash, that is 2017-12-11T02:01:39Z nyef`: Mmm. But for those rare occasions, it's *really* helpful, I'm sure. (-: 2017-12-11T02:01:45Z whoman: it mellows me out 2017-12-11T02:01:57Z whoman: =P 2017-12-11T02:02:42Z stassats: it doesn't hurt 2017-12-11T02:02:53Z whoman: like a marsh. if i take over the sbcl main() by writing my own, could i somehow call back to update the repl? 2017-12-11T02:03:15Z stassats: whoman: i don't follow 2017-12-11T02:03:37Z whoman: that is, basically to have my own made sbcl binary or core with which i could set slime to run 2017-12-11T02:04:03Z whoman: so i am wondering if sbcl has some internal api for doing a toplevel 2017-12-11T02:05:00Z stassats: so you're not really rewriting main() 2017-12-11T02:05:16Z stassats: just use the whatever default value for save-lisp-and-die is 2017-12-11T02:12:38Z whoman: well, i would like some C stuff to happen before and after sbcl 2017-12-11T02:12:40Z whoman: for gui 2017-12-11T02:13:55Z stassats: there's no "after" sbcl 2017-12-11T02:14:31Z whoman: well around it. so just before then 2017-12-11T02:14:52Z stassats: what's before? 2017-12-11T02:15:09Z stassats: and why before? 2017-12-11T02:18:34Z whoman: because the C stuff has event loop and i want to use slime .. 2017-12-11T02:19:10Z stassats: that doesn't explain anything 2017-12-11T02:19:30Z stassats: and you are aware that slime can uses threads 2017-12-11T02:19:42Z whoman: well sbcl doesnt respond in slime when there is an event loop happening until it returns, and 2017-12-11T02:20:15Z whoman: like (make-and-run-window ..) but i cant really work on the app if i have to stop and start it eh 2017-12-11T02:20:15Z jack_rabbit quit (Ping timeout: 248 seconds) 2017-12-11T02:20:34Z nyef`: It sounds like you're trying to force a solution to fit the problem that you have, rather than to find a solution that already fits the problem that you have. 2017-12-11T02:20:45Z whoman: i am starting to feel it is that way 2017-12-11T02:21:31Z nyef`: So, slime stops responding while your app is running, and you'd prefer it to continue responding. The first question is *why* does slime stop responding? 2017-12-11T02:21:34Z stassats: just use... threads, which is what slime does by default 2017-12-11T02:21:58Z stassats: provided you have threads 2017-12-11T02:22:37Z nyef`: I'm no longer familiar with slime but... could it be as simple as spawning your application in a separate thread instead of running it directly from the repl? 2017-12-11T02:22:56Z nyef`: Alternately, what about adding a check for slime events into your app main loop? 2017-12-11T02:23:03Z whoman: hmm, well.. the app stops responding because it calls a C function that make graphics to start, which does not return until the window is closed 2017-12-11T02:23:19Z whoman: nyef`, that may be possible.. like swank ? 2017-12-11T02:23:23Z stassats: gui usually like to run on the main thread, so it's running slime in a separate thread, which it already does anyway 2017-12-11T02:23:42Z whoman: slime or swank ? 2017-12-11T02:24:05Z whoman: @stassats it is my understanding that slime is emacs side and swank is cl side 2017-12-11T02:24:15Z nyef`: Seriously, I'm not familiar with slime. I gave up on it years ago. 2017-12-11T02:24:25Z whoman: aha. any particular reason ? 2017-12-11T02:24:31Z stassats: well, i'm the maintainer of slime 2017-12-11T02:24:42Z whoman: oh :3 2017-12-11T02:25:28Z stassats: just use threads, slime, no slime, you want threads 2017-12-11T02:25:29Z nyef`: I gave up on it because it broke, I couldn't fix it, and I had a job to do. And it's simply never been worth trying again since. 2017-12-11T02:25:57Z stassats: i gave up on improving slime some years ago, not because of slime, but because of emacs 2017-12-11T02:26:19Z whoman: 1114-=-] 2017-12-11T02:26:41Z whoman: oops, that was from my other keyboard 2017-12-11T02:27:20Z stassats: nyef`: i would give up on lisp without slime 2017-12-11T02:27:47Z stassats: however bad emacs is 2017-12-11T02:29:36Z nyef`: I think that we can do far, far better than emacs+slime, though quite possibly not using gnumacs. 2017-12-11T02:30:25Z stassats: i've been trying for years with a couple of attempts 2017-12-11T02:30:34Z stassats: all ended "efficient guis are hard" 2017-12-11T02:32:40Z stassats: https://webkit.org/blog/6161/locking-in-webkit/ looks like something useful 2017-12-11T02:32:50Z stassats: basically the scheme we discussed 2017-12-11T02:33:04Z stassats: i think java does something similar as well 2017-12-11T02:33:50Z jack_rabbit joined #sbcl 2017-12-11T02:35:00Z corci: Project sbcl-master » without-threads,ubuntu_trusty_32bit build #2719: FAILURE in 5 hr 40 min: http://ci.cor-lab.de/job/sbcl-master/featureset=without-threads,label=ubuntu_trusty_32bit/2719/ 2017-12-11T02:35:54Z stassats: ::: Running (SLEEP :PRETTY-MUCH-FOREVER) 2017-12-11T02:35:54Z Colleen: Unknown command. Possible matches: 8, say, mop, login, time, tell, roll, help, deny, clhs, 2017-12-11T02:36:14Z stassats: yeah, that's an apt description, it slept forever 2017-12-11T02:38:07Z stassats: Timer # failed to interrupt thread #. 2017-12-11T02:38:14Z stassats: it's a single threaded build, huh 2017-12-11T02:39:15Z whoman: o_O 2017-12-11T02:40:10Z stassats: reproducible, which is nice 2017-12-11T02:40:57Z karswell_ quit (Read error: No route to host) 2017-12-11T02:40:58Z stassats: something's really cooked 2017-12-11T02:41:14Z karswell_ joined #sbcl 2017-12-11T02:41:35Z shka quit (Remote host closed the connection) 2017-12-11T02:41:58Z dougk joined #sbcl 2017-12-11T02:42:00Z shka joined #sbcl 2017-12-11T02:42:13Z nyef`: stassats: :sb-wtimer? 2017-12-11T02:42:30Z stassats: NOTE: Relocating [0x9000000:0xa804000] into [0x8ee8000:0xa6ec000] 2017-12-11T02:42:47Z nyef`: Hrm. 2017-12-11T02:42:50Z nyef`: Have fun. 2017-12-11T02:43:43Z stassats: after ./run-sbcl.sh --dynamic-space-size 3821 2017-12-11T02:44:04Z stassats: a separate issue, ok 2017-12-11T02:46:41Z stassats: i should just bisect 2017-12-11T02:46:51Z stassats: (with-timeout 0.01 (sleep 0.3)) is broken 2017-12-11T02:47:44Z stassats: oh i think i know what i broke 2017-12-11T02:53:07Z stassats: it's silly that (interrupt-thread self) involves signals 2017-12-11T02:58:53Z stassats: corci: have a botsnack 2017-12-11T02:58:53Z corci: stassats did you mean me? Unknown command 'have' 2017-12-11T02:58:54Z corci: Use '!jenkins help' to get help! 2017-12-11T02:59:03Z stassats: minion: have a botsnack 2017-12-11T02:59:03Z minion: yes 2017-12-11T03:00:40Z stassats: corci: botsnack 2017-12-11T03:00:59Z stassats: ok, google is lying to me 2017-12-11T03:01:55Z stassats: is there really any reason for interrupt-thread to kill itself with a signal? 2017-12-11T03:02:42Z stassats: or for run-timer to use interrupt-thread for the current thread? 2017-12-11T03:02:51Z nyef`: If it's coming from an interrupt-handler, would the signal be blocked until the handler returns? 2017-12-11T03:05:05Z dougk quit (Remote host closed the connection) 2017-12-11T03:08:31Z stassats: supposedly they are unblocked 2017-12-11T03:08:35Z stassats: since it works 2017-12-11T03:08:57Z whoman: nyef` what are you coding with right now, btw ? 2017-12-11T03:09:00Z stassats: your you mean it's queued and invoked after it returns? 2017-12-11T03:09:26Z stassats: still, what's the point 2017-12-11T03:10:12Z stassats: interrupt-thread or run-timer could mention any of this if it were intended 2017-12-11T03:10:23Z stassats: but i'm asking too much 2017-12-11T03:12:08Z stassats: but that's indeed what happens 2017-12-11T03:12:14Z stassats: (with-timeout 0.01 (sleep 0.3)) 2017-12-11T03:12:15Z stassats: 0: (SB-IMPL::RUN-TIMER #) 2017-12-11T03:12:15Z stassats: 0: SB-IMPL::RUN-TIMER returned NIL 2017-12-11T03:12:17Z stassats: debugger invoked on a TIMEOUT: Timeout occurred. 2017-12-11T03:13:15Z stassats: i guess we'll want to avoid blocking run-expired-timers in the handler, makes sense 2017-12-11T03:13:35Z nyef`: whoman: emacs. On the work front, it's all edit, run the test suite, run the build, start the server, fire off a request, repeat. A bad change to the process, in retrospect, but it's what I have for the moment. On the private front, it's been mostly C work recently. 2017-12-11T03:13:36Z stassats: since it's with-scheduler-lock 2017-12-11T03:14:28Z stassats: this is a non trivial conclusion that could be trivially explained in a small comment 2017-12-11T03:15:34Z nyef`: (On the private front, it's been the curse of the SBCL maintainers, really: We like using Lisp, so we end up hacking in C instead.) 2017-12-11T03:16:57Z stassats: adding such a comment before i forget 2017-12-11T03:18:44Z nyef`: Forget what? 2017-12-11T03:19:15Z stassats: why run-timer interrupts the current thread 2017-12-11T03:20:50Z stassats: and it's not the first time i've asked that question 2017-12-11T03:43:31Z nyef`: So much stuff is considered by the people who design and maintain a given feature, and so much of it simply doesn't get recorded, and thus gets forgotten. 2017-12-11T03:43:54Z stassats: was it considered? 2017-12-11T03:44:01Z stassats: some things are accidental 2017-12-11T03:44:24Z nyef`: Yes, that's the other side of it. Some stuff simply isn't considered properly. 2017-12-11T03:45:06Z nyef`: And when things aren't understood properly, bugs don't get fixed, merely driven to become more subtle. /-: 2017-12-11T03:50:56Z whoman: nyef`, ah interesting=) 2017-12-11T03:54:15Z nyef`: whoman: And on the rare occasion where I'm actually doing something in Lisp for myself, I just use rlwrap, reload the system I'm working on whenever I have a change to apply, and continue on. 2017-12-11T04:04:32Z whoman: makes sense. i dont need the live dev as much as i think i do 2017-12-11T04:04:37Z shka quit (Read error: Connection reset by peer) 2017-12-11T04:04:55Z shka joined #sbcl 2017-12-11T04:08:40Z nyef`: I'd love to have the live dev back, honestly, but not at the price of dealing with slime again. 2017-12-11T04:08:58Z stassats: what's so bad about dealing with slime? 2017-12-11T04:10:01Z BitPuffin|osx joined #sbcl 2017-12-11T04:15:08Z nyef`: I got burned far too badly by it. 2017-12-11T04:15:44Z stassats: and yet you have debugged sb-safepoint 2017-12-11T04:16:00Z stassats: can't be worse than that, can it? 2017-12-11T04:16:35Z nyef`: I have a reasonable expectation that, now that it's fixed, sb-safepoint won't re-break. Also, I don't depend on sb-safepoint. 2017-12-11T04:17:21Z stassats: the only slime breakage i've had to deal lately was caused by sbcl changes 2017-12-11T04:17:42Z nyef`: "error in process filter" still annoys me, years later. 2017-12-11T04:19:14Z stassats: all the cool kids seem to be using sly these days, whatever that is 2017-12-11T04:19:28Z stassats: so slime is calm and unchanging with occasional fixes 2017-12-11T04:19:33Z whoman: nah slime reigns. clim-listener is coming up tho 2017-12-11T04:19:34Z nyef`: ... I think it's a barrel maker? 2017-12-11T04:19:58Z stassats: visited the sly repo and my commit is at the top "huh?" 2017-12-11T04:20:17Z stassats: turns out, they cherry-pick fixes from slime 2017-12-11T04:20:34Z nyef`: Mmm. The main thing that I want to see fixed in SBCL this month is lp#1734771, since it breaks clim-tos. 2017-12-11T04:20:44Z stassats: lp 1734771 2017-12-11T04:20:44Z specbot: https://bugs.launchpad.net/bugs/1734771 2017-12-11T04:20:53Z stassats: this year? 2017-12-11T04:21:03Z nyef`: This *month*. 2017-12-11T04:21:34Z nyef`: I have what looks like a fix, but I don't have the experience with PCL to know if it's a *good* fix. 2017-12-11T04:21:53Z stassats: i'd try that sly thing, but it's still using emacs, so what's the point 2017-12-11T04:21:59Z nyef`: Heh. 2017-12-11T04:22:22Z whoman: whats so bad about dealing with emacs? 2017-12-11T04:22:51Z stassats: it's stuck in the 80s 2017-12-11T04:23:01Z nyef`: ... 80s at BEST. 2017-12-11T04:23:23Z whoman: ah. so atom/vscode/etc ? 2017-12-11T04:23:36Z stassats: just no 2017-12-11T04:23:41Z whoman: isnt CL stuck somewhere around there anyway 2017-12-11T04:23:55Z nyef`: I've been meaning to give hemlock a try. 2017-12-11T04:24:12Z nyef`: I don't really want to write my own editor, but I suspect that I may end up doing so. 2017-12-11T04:24:19Z whoman: clim-listener and second climacs use the same 'core' 2017-12-11T04:24:40Z whoman: have you tried them ? 2017-12-11T04:24:55Z stassats: and mcclim is stuck in.. i don't know where it's stuck 2017-12-11T04:25:08Z nyef`: Yeah, I don't know what's the what with mcclim either. 2017-12-11T04:25:09Z whoman: i don't see where else i would be able to find paredit kind of functionality outside of emacs 2017-12-11T04:25:29Z stassats: anywhere? 2017-12-11T04:25:31Z whoman: i dont know. (ql:quickload :clim-listener) (clim-listener:run-listener) and see 2017-12-11T04:25:37Z stassats: even vscode has paredit 2017-12-11T04:25:49Z whoman: i thought you said just no to vscode 2017-12-11T04:26:39Z nyef`: whoman: I probably hold the (dubious) record for most bugs filed against mcclim's listener. 2017-12-11T04:26:52Z whoman: what program are you using to read+write irc ?... i dont really see any problem with any editor unless it causes a problem especially. for eg. in my case, i cant run a lot of new editors because of limited resources so they are too slow and bulky. 2017-12-11T04:26:54Z stassats: that i did, but it still has paredit 2017-12-11T04:27:06Z whoman: nyef`, heh ah =) 2017-12-11T04:27:25Z whoman: well, times change. i dont know if any or a lot of work has been done since when that was 2017-12-11T04:28:28Z nyef`: The last batch was a month ago. 2017-12-11T04:28:35Z whoman: hmm. if i was mousing around more, i would prefer something more graphical. 2017-12-11T04:28:36Z stassats: writing programs in emacs is passable, but not running an IDE 2017-12-11T04:29:10Z nyef`: Nineteen of the issues on the first page of the tracker are by me. 2017-12-11T04:29:20Z whoman: x_x 2017-12-11T04:29:31Z stassats is writing from emacs right now, from ERC 2017-12-11T04:29:39Z shka_ joined #sbcl 2017-12-11T04:29:51Z shka quit (Ping timeout: 268 seconds) 2017-12-11T04:30:20Z nyef`: And it looks like there are six others further back. 2017-12-11T04:30:23Z whoman: ive got no complaints about it, i guess =) 2017-12-11T04:31:01Z whoman: computers themselves are not very intuitive. i dont think keyboards themselves are all that optimal 2017-12-11T04:32:33Z nyef`: ... the last computer to have intuition in its UI was probably the Amiga. 2017-12-11T04:32:38Z stassats: if you have no complaints about your tools then you're not using them enough 2017-12-11T04:33:42Z whoman: nah. i complain about my bike all the time because it sucks and keeps trying to get me killed 2017-12-11T04:33:59Z whoman: always doing random stuff on its own at the worst times 2017-12-11T04:34:10Z whoman: especially in traffic, up a hill, with chicks nearby, etc 2017-12-11T04:35:06Z whoman: the last bike i had zero complaints, except that i could feel the bumps, which was trivial to compensate. so i've tried editors.. but i would complain a lot more at the least 2017-12-11T04:35:07Z nyef`: The main problems that I have with my bike are that the rear rack is bent, the saddle could do with replacing, I could do with a third battery, and I could do with some way to carry the batteries more securely. 2017-12-11T04:35:15Z whoman: tree views taking up most of the space like whats that for ~_~ 2017-12-11T04:35:47Z whoman: ah ebike! cool. its getting cold and i lost the handlebar covers 2017-12-11T04:36:01Z whoman: '(normal bike) 2017-12-11T04:36:19Z nyef`: Tree views taking up most of the space? I'm thinking firewood... (-: 2017-12-11T04:36:52Z whoman: heh. ^_^ but here is the thing about the bike as a tool... if it was me as a rider, causing the problems, well i could just do differently or not do those things 2017-12-11T04:36:53Z nyef`: It's actually a conversion. I got a GeoOrbital wheel. 2017-12-11T04:37:38Z shka_ quit (Ping timeout: 258 seconds) 2017-12-11T04:37:55Z nyef`: Here's the thing about the bike as a tool: If there's something wrong with it, provided that the frame isn't busted, it can be fixed, and very possibly by oneself. 2017-12-11T04:38:24Z whoman: but when the chain pops off when im pedaling up a hill and i almost faceplant into the bars (my realtime recovery from as spectator i bet looks hilarious, like flinstones..) then its kinda the bike's fault more so. i cant really predict which pedaling is going to be russian roulette 2017-12-11T04:38:31Z whoman: yes that also 2017-12-11T04:39:32Z stassats: you could just fix it, you know 2017-12-11T04:39:45Z whoman: the bikes i have no complaints about, well, they were garbage too. one of them had no breaks or gears and the bars were loose, but i had zero complains. because i could modify how i rode it, and even sometimes complimented those errors as features. idk maybe i just like riding emacs and it suits my compensation style is what im getting at 2017-12-11T04:39:52Z nyef`: Hrm. Sounds like your chain might be too long, or your derailers might need adjusting, or your chain and/or cogwheel and/or rear cartridge/sprocket set need replacing. 2017-12-11T04:40:03Z whoman: in an ultimate view, everything is imperfect 2017-12-11T04:40:20Z nyef`: "Perfection is imperfect, because it leaves no room for growth." 2017-12-11T04:40:39Z whoman: nyef`, it only started when the temperature dropped. i keep the one set of gear down to 2 from 3 (out of 3) and it seems to happen a lot less 2017-12-11T04:40:45Z whoman: hehe 2017-12-11T04:40:56Z karswell_ quit (Remote host closed the connection) 2017-12-11T04:41:10Z stassats: three gears? that's worse than emacs 2017-12-11T04:41:48Z karswell_ joined #sbcl 2017-12-11T04:41:49Z whoman: lol. well there is 3 on the one side and .. 7 on the other 2017-12-11T04:41:56Z whoman: idk 21 of em 2017-12-11T04:42:06Z nyef`: Oh, it's a 3x7? 2017-12-11T04:42:16Z shka_ joined #sbcl 2017-12-11T04:42:17Z whoman: just 2 wheels actually 2017-12-11T04:42:32Z stassats: i have 2x11 2017-12-11T04:43:11Z nyef`: Mine's a 3x6, but I have the parts to change up to a 3x7 once my current chain wears out. And I'm planning to change my downtube friction shifters for brifters at that point. 2017-12-11T04:43:41Z whoman: agh yeah no it was all rusted when i got it. long story, landlord gave it to me from previous place's garage. rode it for a bit. passed out from beer at friends house, left it outside oops. month later i see it at my buddy's bike shop. tell him its mine etc but he already fixed it up so i had to pay for it but it ran okay. just can ride handless atm =( 2017-12-11T04:44:08Z whoman: my front suspension never works right, ive got to learn how to oil them or loosen them up 2017-12-11T04:44:24Z whoman: its a real cheap bike, but it would be somewhat helpful 2017-12-11T04:45:23Z whoman: mntn bike for the terrain. i dont want to be a car 2017-12-11T04:47:41Z nyef`: I prefer a road bike to a mountain bike, but to each their own. 2017-12-11T04:48:56Z stassats: depends on the surface 2017-12-11T04:50:02Z whoman: i have a road bike now, ccm, i rode it home it is beautiful and soundless and ultra light. back tire flat tho 2017-12-11T04:50:08Z whoman: i grew up on cheap heavy mountains =) 2017-12-11T04:50:15Z nyef`: Yes. I'm not too fond of the one dirt road that I have to deal with. 2017-12-11T04:50:35Z whoman: on this road bike i will need to get comfortable with the handlebars, where the brakes are i guess more like holding aircraft joystick 2017-12-11T04:51:08Z whoman: the tires are so skinny its great. i would really want to get road tires for mountain bike 2017-12-11T04:51:23Z nyef`: Is it always the back tire that goes flat on that bike, or is it more of an equal-opportunity thing? 2017-12-11T04:51:44Z whoman: not sure, both were flat when i got it, the back one didnt hold the air when i got them pumped =) 2017-12-11T04:52:22Z stassats: you know, they could be replaced 2017-12-11T04:52:28Z whoman: for mountain bike i would get road tires i meant, not skinny ones. the bumps of treads is too much, not necessary, and it holds snow which is lame. 2017-12-11T04:52:43Z nyef`: Mmm. New tubes are easy enough to get and install. But a tendency to blow out the back (or front) tire on a regular basis is a bit trickier. 2017-12-11T04:52:52Z whoman: yes when i get money next month i am fixing the back tire. i didnt throw the bike out or anything, its ready to go.. just wiating 2017-12-11T04:53:19Z shka_ quit (Read error: Connection reset by peer) 2017-12-11T04:53:29Z stassats: nyef`: there's more weight over the rear tire 2017-12-11T04:56:35Z nyef`: ... Heh. Hasn't been the case for me for ages. My bike is massively front-loaded, which is occasionally problematic. 2017-12-11T04:57:00Z nyef`: I guess it's a good thing that the electric wheel has a solid tire. (-: 2017-12-11T04:57:36Z shka_ joined #sbcl 2017-12-11T04:58:35Z whoman: hm =) i could save up for a scooter or something. 2017-12-11T05:01:07Z nyef`: (Massively front-loaded because I carry so much stuff in the front panniers and then put my backpack in the basket, leaving the (damaged) rear rack comparatively empty.) 2017-12-11T05:02:27Z shka_ quit (Ping timeout: 240 seconds) 2017-12-11T05:02:50Z whoman: hmm add more weight to back somehow? =) 2017-12-11T05:03:04Z karswell_ quit (Read error: Connection reset by peer) 2017-12-11T05:04:43Z shka_ joined #sbcl 2017-12-11T05:05:25Z nyef`: Sure. Step one, replace the back rack. 2017-12-11T05:06:07Z nyef`: Also repair the two panniers that said rack has sent into the spokes of the back wheel. 2017-12-11T05:10:57Z shka_ quit (Ping timeout: 248 seconds) 2017-12-11T05:11:23Z whoman: o_o 2017-12-11T05:12:31Z stassats quit (Ping timeout: 248 seconds) 2017-12-11T05:13:19Z shka_ joined #sbcl 2017-12-11T05:22:07Z shka_ quit (Ping timeout: 250 seconds) 2017-12-11T05:25:07Z shka_ joined #sbcl 2017-12-11T05:32:47Z shka joined #sbcl 2017-12-11T05:33:27Z shka_ quit (Ping timeout: 240 seconds) 2017-12-11T05:59:36Z whoman quit (Read error: Connection reset by peer) 2017-12-11T06:03:07Z whoman joined #sbcl 2017-12-11T06:05:01Z oleo quit (Quit: Leaving) 2017-12-11T07:35:08Z angavrilov joined #sbcl 2017-12-11T07:47:16Z SamSkulls quit (Ping timeout: 260 seconds) 2017-12-11T08:02:49Z easye joined #sbcl 2017-12-11T08:20:17Z rgrau quit (Ping timeout: 255 seconds) 2017-12-11T08:59:20Z shka quit (Ping timeout: 268 seconds) 2017-12-11T09:49:08Z otwieracz joined #sbcl 2017-12-11T09:49:09Z otwieracz: Hi! 2017-12-11T09:49:56Z otwieracz: I've got SBCL `saved-lisp-and-died` binary which is memleaking - this might be due to CFFI, but not sure. Do you have any advices how to debug it? 2017-12-11T09:55:13Z mrSpec joined #sbcl 2017-12-11T10:23:05Z awolven quit (Read error: Connection reset by peer) 2017-12-11T10:23:41Z awolven joined #sbcl 2017-12-11T10:31:51Z tcr joined #sbcl 2017-12-11T10:40:13Z schweers joined #sbcl 2017-12-11T10:41:29Z schweers: I have code which passes double-floats and '(unsigned-byte 64) values to helper functions and recieves them back. After reading about block compilation in the CMUCL manual I wanted to try it, but SBCL (which I use) removed support. So I put my helper functions into a LABELS form and put both DECLARE forms and defuns (which have preceding toplevel DECLAIM forms) into the LABELS form. I still get efficiency notes like th 2017-12-11T10:41:29Z schweers: unsigned word to integer coercion (cost 20) to "" 2017-12-11T10:41:34Z schweers: Am I doing something wrong? 2017-12-11T11:29:05Z m00natic joined #sbcl 2017-12-11T11:52:09Z stassats joined #sbcl 2017-12-11T11:52:37Z stassats: schweers: since your getting notes, then yes, you're doing something wrong 2017-12-11T11:52:51Z stassats: but instead of moving your functions into labels you could've just declared them inline 2017-12-11T11:54:19Z stassats: and rule #1 of asking for help with code: show the code! 2017-12-11T12:13:12Z schweers quit (Remote host closed the connection) 2017-12-11T12:13:23Z corci: Yippee, build fixed! 2017-12-11T12:13:23Z corci: Project sbcl-master » without-threads,ubuntu_trusty_64bit build #2721: FIXED in 22 min: http://ci.cor-lab.de/job/sbcl-master/featureset=without-threads,label=ubuntu_trusty_64bit/2721/ 2017-12-11T12:23:44Z attila_lendvai joined #sbcl 2017-12-11T12:25:01Z DeadTrickster_ quit (Remote host closed the connection) 2017-12-11T12:41:08Z stassats` joined #sbcl 2017-12-11T12:45:21Z corci: Yippee, build fixed! 2017-12-11T12:45:22Z corci: Project sbcl-master » without-threads,ubuntu_trusty_32bit build #2721: FIXED in 54 min: http://ci.cor-lab.de/job/sbcl-master/featureset=without-threads,label=ubuntu_trusty_32bit/2721/ 2017-12-11T13:04:48Z corci: Yippee, build fixed! 2017-12-11T13:04:49Z corci: Project sbcl-master » without-unicode,ubuntu_trusty_64bit build #2721: FIXED in 1 hr 14 min: http://ci.cor-lab.de/job/sbcl-master/featureset=without-unicode,label=ubuntu_trusty_64bit/2721/ 2017-12-11T13:09:00Z rgrau joined #sbcl 2017-12-11T13:25:10Z stassats: if the GC is invoked from an interrupt handler, the deferrables are blocked, but after exiting from GC they become unblocked 2017-12-11T13:26:31Z stassats: (sb-thread:interrupt-thread sb-thread:*current-thread* (lambda () (sb-ext:gc) (alien-funcall (extern-alien "check_deferrables_blocked_or_lose" (function (values) int)) 0))) 2017-12-11T13:32:30Z rgrau quit (Read error: Connection reset by peer) 2017-12-11T13:39:46Z stassats: (sb-sys:without-interrupts (sb-sys:with-local-interrupts)) is enough 2017-12-11T13:39:52Z stassats: so basically grabbing a mutex 2017-12-11T13:41:37Z stassats: since *unblock-deferrables-on-enabling-interrupts-p* is T inside interrupt-thread 2017-12-11T13:49:55Z fortitude joined #sbcl 2017-12-11T13:51:04Z rgrau joined #sbcl 2017-12-11T14:24:35Z stassats quit (Read error: Connection reset by peer) 2017-12-11T14:36:43Z cromachina quit (Read error: Connection reset by peer) 2017-12-11T14:41:28Z oleo joined #sbcl 2017-12-11T14:43:56Z oleo quit (Remote host closed the connection) 2017-12-11T14:45:18Z oleo joined #sbcl 2017-12-11T14:47:59Z awolven quit (Ping timeout: 255 seconds) 2017-12-11T14:48:15Z whoman quit (Read error: Connection reset by peer) 2017-12-11T14:49:39Z whoman joined #sbcl 2017-12-11T15:13:04Z stassats` quit (Ping timeout: 248 seconds) 2017-12-11T15:22:02Z attila_lendvai quit (Ping timeout: 260 seconds) 2017-12-11T15:23:07Z rumbler31 joined #sbcl 2017-12-11T15:31:37Z Bike is now known as Bicyclidine 2017-12-11T15:44:28Z Jesin joined #sbcl 2017-12-11T15:58:22Z stassats joined #sbcl 2017-12-11T15:58:33Z Jesin quit (Quit: Leaving) 2017-12-11T16:03:11Z stassats: all_signals_blocked_p is pretty slow 2017-12-11T16:04:01Z stassats: and check_deferrables_unblocked_or_lose is slow as a result 2017-12-11T16:05:17Z awolven joined #sbcl 2017-12-11T16:05:51Z nyef`: Mmm. It has to do things bitwise instead of wordwise, doesn't it? 2017-12-11T16:06:03Z stassats: yeah 2017-12-11T16:06:29Z stassats: maybe add a way to disable all these invariant checks 2017-12-11T16:06:32Z nyef`: It's "too bad" that we have to defer signals, then, isn't it? 2017-12-11T16:07:28Z stassats: removing the check from sb-unix::unblock-deferrable-signals makes it twice as fast on darwin 2017-12-11T16:08:25Z stassats: and about three times on linux 2017-12-11T16:10:47Z stassats: all_signals_blocked_p calls sigismember on all signals twice, and it's a full call 2017-12-11T16:12:25Z stassats: we know which signals we want to test, could avoid calling that sigismember twice and call only on the signals that are of interest 2017-12-11T16:13:33Z stassats: NSIG on darwin is 32, so it's 64 calls to sigismember 2017-12-11T16:13:57Z Bike joined #sbcl 2017-12-11T16:14:36Z stassats: 32 on linux as well 2017-12-11T16:15:56Z stassats: we have 13 defferrable signlas, so it's possible to reduce from 64 to 13 calls 2017-12-11T16:16:22Z stassats: but i'd rather have a mode to disable these checks and live dangerously 2017-12-11T16:17:37Z stassats: not bothering with sigmasks could be even better, just using *interrupts-enabled* 2017-12-11T16:25:29Z Jesin joined #sbcl 2017-12-11T16:25:47Z eudoxia joined #sbcl 2017-12-11T16:36:15Z stassats quit (Ping timeout: 248 seconds) 2017-12-11T16:38:05Z stassats joined #sbcl 2017-12-11T16:39:07Z stassats: i think i'm going the wrong way about dealing with reblocking interrupts in with-interrupts 2017-12-11T16:40:20Z stassats: since i'm running code without interrupts, why is grab-mutex enabling them? 2017-12-11T16:41:26Z stassats: even if temporarily, defeats the whole purpose of having disabled interrupts in signal handlers 2017-12-11T16:47:36Z stassats: and without-interrupts doesn't use signal masks, so it's all really convoluted 2017-12-11T16:48:40Z stassats: parts of the system are protected using sigmasks, parts using without-interrupts 2017-12-11T16:48:44Z stassats: some with both 2017-12-11T16:53:51Z awolven quit (Remote host closed the connection) 2017-12-11T16:55:06Z nyef`: Why do we defer signals that we don't handle in Lisp? Why do we not defer signals that a user declares to handle in Lisp? 2017-12-11T16:56:51Z stassats quit (Ping timeout: 240 seconds) 2017-12-11T16:59:02Z smurfrobot quit (Remote host closed the connection) 2017-12-11T17:02:27Z rgrau quit (Ping timeout: 240 seconds) 2017-12-11T17:17:57Z whoman quit (Ping timeout: 240 seconds) 2017-12-11T17:22:47Z attila_lendvai joined #sbcl 2017-12-11T17:22:47Z attila_lendvai quit (Changing host) 2017-12-11T17:22:47Z attila_lendvai joined #sbcl 2017-12-11T17:31:33Z smurfrobot joined #sbcl 2017-12-11T17:31:46Z dougk joined #sbcl 2017-12-11T17:52:35Z smurfrobot quit (Remote host closed the connection) 2017-12-11T18:00:08Z tcr quit (Ping timeout: 255 seconds) 2017-12-11T18:05:36Z m00natic quit (Remote host closed the connection) 2017-12-11T18:06:19Z BitPuffin|osx quit (Ping timeout: 268 seconds) 2017-12-11T18:15:15Z shka joined #sbcl 2017-12-11T18:19:37Z smurfrobot joined #sbcl 2017-12-11T18:20:21Z stassats joined #sbcl 2017-12-11T18:32:06Z stassats: can't interrupt a thread that holds a mutex and grab that mutex again, right? 2017-12-11T18:32:20Z stassats: that's why with-system-mutex uses without-interrupts 2017-12-11T18:32:51Z stassats: yet some mutexes enable interrupts locally 2017-12-11T18:34:49Z smurfrobot quit (Remote host closed the connection) 2017-12-11T18:35:50Z stassats: ok, there's some *allow-with-interrupts* 2017-12-11T18:38:02Z stassats: i guess i'll just go back to restoring the signal mask after unblock-deferrable-signals 2017-12-11T18:47:54Z corci: Yippee, build fixed! 2017-12-11T18:47:55Z corci: Project sbcl-master » without-threads,ubuntu_trusty_32bit build #2723: FIXED in 53 min: http://ci.cor-lab.de/job/sbcl-master/featureset=without-threads,label=ubuntu_trusty_32bit/2723/ 2017-12-11T18:51:41Z stassats quit (Ping timeout: 260 seconds) 2017-12-11T18:52:22Z stassats joined #sbcl 2017-12-11T19:07:20Z corci: Yippee, build fixed! 2017-12-11T19:07:21Z corci: Project sbcl-master » without-unicode,ubuntu_trusty_64bit build #2723: FIXED in 1 hr 13 min: http://ci.cor-lab.de/job/sbcl-master/featureset=without-unicode,label=ubuntu_trusty_64bit/2723/ 2017-12-11T19:13:39Z corci: Project sbcl-master-windows » Windows_7_32bit build #1562: FAILURE in 28 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_32bit/1562/ 2017-12-11T19:14:00Z stassats: good and bad news 2017-12-11T19:16:15Z whoman joined #sbcl 2017-12-11T19:16:19Z jackdaniel: yay, good news! 2017-12-11T19:16:30Z jackdaniel: s/yay/Yippee/ 2017-12-11T19:18:16Z stassats: apparently failed in ::: Running (:TWO-THREADS-RUNNING-GC) 2017-12-11T19:18:23Z stassats: just died 2017-12-11T19:18:45Z nyef`: That's... not good. 2017-12-11T19:18:48Z nyef`: Death, or deadlock? 2017-12-11T19:18:58Z stassats: death 2017-12-11T19:19:13Z nyef`: Death, or cake? 2017-12-11T19:20:06Z smurfrobot joined #sbcl 2017-12-11T19:20:25Z nyef`: The reason I was worried is that quite a bit of the safepoint logic deals with the possibility of multiple threads trying to run GC simultaneously. 2017-12-11T19:20:48Z nyef`: The whole GC_QUIET and GC_SETTLED thing. 2017-12-11T19:21:02Z nyef`: The various checks for gc_state.collector. 2017-12-11T19:22:02Z stassats: and there's no indication what happened, no assertion failures, maybe the ci doesn't capture them 2017-12-11T19:22:22Z nyef`: Too many output channels. /-: 2017-12-11T19:24:05Z stassats: it's just two threads doing (sb-ext:gc) and (sb-ext:gc :full t) 2017-12-11T19:24:35Z stassats: i'll try running that locally with more iterations 2017-12-11T19:25:04Z stassats` joined #sbcl 2017-12-11T19:25:13Z nyef`: So, one gets the lock and stops the world, the other is-or-isn't in WITHOUT-GCING... That should work, shouldn't it? 2017-12-11T19:25:44Z nyef`: Okay, yes, you're looking at mostly operating at GC_NONE or GC_INVOKED, without a stop at GC_QUIET. 2017-12-11T19:26:21Z stassats: and the parent thread is spinning 2017-12-11T19:26:32Z stassats: so, three threads 2017-12-11T19:26:46Z stassats: why is it spinning, no idea 2017-12-11T19:26:59Z nyef`: Actually spinning, not locked somewhere? 2017-12-11T19:27:08Z stassats: sleep 1 2017-12-11T19:27:16Z stassats: could just use join-thread 2017-12-11T19:27:49Z nyef`: What the heck? 2017-12-11T19:29:19Z stassats: they also print a lot, but the test dies without printing anything 2017-12-11T19:30:03Z nyef`: Some sort of resource exhaustion, maybe? 2017-12-11T19:31:07Z stassats: not exactly without printing 2017-12-11T19:31:12Z stassats: but \\\\// 2017-12-11T19:32:04Z stassats: fails pretty early 2017-12-11T19:33:37Z nyef`: qshow and dyndebug time? 2017-12-11T19:33:51Z stassats: reproduce first time 2017-12-11T19:36:49Z nyef`: Fair enough. 2017-12-11T19:38:18Z nyef`: Hrm. Either join-thread, or using semaphores instead of a damned busy-wait? 2017-12-11T19:44:31Z stassats: running using two cores, can't reproduce, will try with a single core 2017-12-11T19:48:27Z scymtym: (ql:quickload :fishpack) seems like another good regalloc benchmark (and it causes NIL is not of type SC) 2017-12-11T19:48:38Z smurfrobot quit (Remote host closed the connection) 2017-12-11T19:54:24Z stassats: giving up on reproducing the windows failure 2017-12-11T20:10:06Z scymtym: SB-REGALLOC::INIT-LIVE-TNS has a comment about TNs being "live" despite having no reads or writes. this is tested for with (if (tn-offset tn). i can imagine SB-REGALLOC::OPTIMIZED-EMIT-SAVES-BLOCK needing a similar test in the DO-LIVE-TNS loop where the error originates 2017-12-11T20:11:08Z stassats: reduced to (defun sepx4 (n) (declare (type sb-vm:word n)) (print (log (float n))) (nth-value 33 (x . #.(make-list 28)))) 2017-12-11T20:11:51Z stassats: nth-value uses unused tns 2017-12-11T20:13:42Z stassats: which is a new thing, not everything has learned to ignore it yet 2017-12-11T20:18:01Z scymtym: stassats: how new? happens in 1.4.1 as well 2017-12-11T20:18:23Z stassats: older than that 2017-12-11T20:18:39Z stassats: gtn is probably the place to ignore them 2017-12-11T20:18:48Z scymtym: plausible explanation, then. except i wonder why xach didn't report it before 2017-12-11T20:19:10Z scymtym: or maybe this fishpack thing changed 2017-12-11T20:19:45Z stassats: or life, rather 2017-12-11T20:25:39Z stassats: have a fix, compiling and testing 2017-12-11T20:30:25Z stassats quit (Ping timeout: 248 seconds) 2017-12-11T20:31:02Z eudoxia quit (Quit: Leaving) 2017-12-11T20:34:39Z jack_rabbit quit (Ping timeout: 248 seconds) 2017-12-11T20:34:53Z stassats joined #sbcl 2017-12-11T20:40:29Z awolven joined #sbcl 2017-12-11T20:44:51Z awolven quit (Ping timeout: 240 seconds) 2017-12-11T20:47:40Z jack_rabbit joined #sbcl 2017-12-11T20:49:05Z smurfrobot joined #sbcl 2017-12-11T20:53:32Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-11T20:57:08Z awolven joined #sbcl 2017-12-11T21:04:23Z oleo quit (Read error: Connection reset by peer) 2017-12-11T21:12:57Z stassats quit (Ping timeout: 240 seconds) 2017-12-11T21:17:05Z stassats`: and fixed 2017-12-11T21:20:32Z oleo joined #sbcl 2017-12-11T21:36:48Z DeadTrickster joined #sbcl 2017-12-11T21:42:50Z attila_lendvai quit (Ping timeout: 260 seconds) 2017-12-11T22:01:25Z ccl-logbot joined #sbcl 2017-12-11T22:01:25Z 2017-12-11T22:01:25Z names: ccl-logbot ym attila_lendvai swflint copec __rumbler31 DeadTrickster oleo jack_rabbit stassats` whoman shka dougk Jesin Bike fortitude mrSpec otwieracz easye angavrilov Ionic jibanes minion specbot scymtym nyef` leah2 Bicyclidine flip214 aeth fiddlerwoaroof Kevslinger zulu_inuoe_ cryptomarauder[m dustinm` gko nicdev galdor Lord_Nightmare foom drmeister pchrist dim sigjuice jsnell Aaryn christoph_debian libreman Intensity p_l malm nimiux xristos brucem |3b| 2017-12-11T22:01:25Z names: _death ave1 MetaYan irsol gendl Shinmera carvite jackdaniel kini _8hzp tonton myrkraverk Colleen jrm joshe les salva adlai corci GreaseMonkey Posterdati mood jyc angular_mike jdz fe[nl]ix Blkt shaftoe alandipert stylewarning lonjil abbe bkst DGASAU White_Flame gingerale pkhuong dwts 2017-12-11T22:05:10Z jdz quit (Ping timeout: 264 seconds) 2017-12-11T22:06:55Z jdz joined #sbcl 2017-12-11T22:23:21Z eschatologist joined #sbcl 2017-12-11T22:23:38Z eschatologist quit (*.net *.split) 2017-12-11T22:32:46Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-11T22:50:45Z attila_lendvai joined #sbcl 2017-12-11T22:50:45Z attila_lendvai quit (Changing host) 2017-12-11T22:50:45Z attila_lendvai joined #sbcl 2017-12-11T22:51:17Z smurfrobot joined #sbcl 2017-12-11T22:55:24Z smurfrobot quit (Ping timeout: 246 seconds) 2017-12-11T22:57:37Z __rumbler31 quit (Ping timeout: 248 seconds) 2017-12-11T23:03:28Z awolven joined #sbcl 2017-12-11T23:03:39Z awolven quit (Remote host closed the connection) 2017-12-11T23:17:29Z Bike quit (Ping timeout: 260 seconds) 2017-12-11T23:26:16Z Jesin quit (Quit: Leaving) 2017-12-11T23:30:03Z cromachina joined #sbcl 2017-12-11T23:44:40Z Bicyclidine is now known as Bike 2017-12-11T23:48:22Z attila_lendvai quit (Ping timeout: 260 seconds) 2017-12-11T23:56:57Z lonjil2 joined #sbcl 2017-12-11T23:57:36Z lonjil quit (Ping timeout: 258 seconds) 2017-12-12T00:16:37Z stassats`: _GNU_SOURCE has sigorset and sigandset 2017-12-12T00:19:30Z stassats`: how do i grovel sigset_t? it's "Integral or structure type" 2017-12-12T00:21:16Z stassats`: i can grovel sizeof sigset_t and use a byte array in with-alien 2017-12-12T00:47:10Z stassats`: and darwin has #defines for sigismember, that's why linux is slowed down more 2017-12-12T00:52:57Z smurfrobot joined #sbcl 2017-12-12T00:57:37Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-12T01:22:33Z stassats`: actually, (signed 256) works as an alien type 2017-12-12T01:27:23Z eschatol_ joined #sbcl 2017-12-12T01:48:19Z nyef`: On all endiannesses as appropriate? 2017-12-12T01:49:08Z nyef`: (Because I can think of two perfectly reasonable and mutually incompatible interpretations for that on certain architectures.) 2017-12-12T01:51:27Z nyef`: ... And a third which embodies the "NUXI" problem. 2017-12-12T01:59:11Z stassats`: it really does not care 2017-12-12T01:59:33Z stassats`: it's just a size, nothing more 2017-12-12T01:59:49Z stassats`: can't use it as an integer 2017-12-12T02:01:35Z nyef`: Ah, okay then. 2017-12-12T02:05:27Z stassats`: and windows does something else with signals 2017-12-12T02:08:08Z stassats`: which means i can't quickly finish it 2017-12-12T02:08:11Z nyef`: Windows, at least when I was doing the original porting, didn't have signals at all. 2017-12-12T02:08:26Z stassats`: it has _sbcl_pthread_sigmask 2017-12-12T02:08:39Z stassats`: which does self->blocked_signal_set |= *set; 2017-12-12T02:09:29Z nyef`: Either windows now supports signals, or there's a lot of cruft in there that can be gotten rid of, possibly both. 2017-12-12T02:10:15Z stassats`: pthreads_win32 emulates signals 2017-12-12T02:10:19Z stassats`: why oh why 2017-12-12T02:10:57Z nyef`: At a guess? Minimum disruption to existing SBCL code. 2017-12-12T02:11:17Z nyef`: Certainly that's the approach I tried to take in the original port. 2017-12-12T02:11:22Z stassats`: which is not the case, there's a whole target-exceptions file 2017-12-12T02:11:34Z stassats`: which copies many things from target-signals 2017-12-12T02:12:12Z nyef`: Different maintainers with different ideas? 2017-12-12T02:15:06Z stassats`: it's succeeded in becoming unmaintainable, now i have to worry at which of the five levels of abstractions things are broken 2017-12-12T02:16:02Z stassats`: pthread_kill is done pthread_np_add_pending_signal and then futex_interrupt 2017-12-12T02:16:11Z stassats`: that's not really interrupting anything 2017-12-12T02:16:39Z stassats`: the win32 port doesn't do interrupts, but pretends that it does 2017-12-12T02:16:47Z stassats`: sometimes it does deliver them 2017-12-12T02:18:03Z stassats`: how can i make it better if every time i look at it i keep thinking "it's all wrong, it's all wrong" 2017-12-12T02:21:22Z whoman quit (Read error: Connection reset by peer) 2017-12-12T02:22:13Z stassats`: when is this ersatz pthread_kill even used 2017-12-12T02:22:21Z whoman joined #sbcl 2017-12-12T02:24:38Z stassats`: i like "For win64 we'll HAVE to rewrite it." 2017-12-12T02:25:44Z nyef`: Heh. 2017-12-12T02:25:57Z nyef`: I *know* that I didn't write that. (-: 2017-12-12T02:28:50Z stassats`: i should start be removing the unused bits 2017-12-12T02:29:51Z stassats`: i also like /* FIXME shouldn't be used. */ 2017-12-12T02:29:51Z eschatologist joined #sbcl 2017-12-12T02:30:08Z stassats`: what does it mean? "check that it's unused and remove"? or "leave it be, but don't use it?" 2017-12-12T02:30:23Z eschatol_ quit (Quit: Textual IRC Client: www.textualapp.com) 2017-12-12T02:32:11Z stassats`: what i'd like to see ideally, using the win32 APIs, not wrapping things in pthread_, anything that has to be invoked should just use arch_something, like for everything else 2017-12-12T02:35:48Z nyef`: Heh. "Right now just enough to get through second genesis." 2017-12-12T02:36:40Z nyef`: Yeah, part of this mess is based on streams still using file descriptors, which are (badly) faked up by msvcrt. 2017-12-12T02:39:11Z stassats`: i think i can delete the pthread_win32.c file and then add the bits that are missing 2017-12-12T02:40:00Z stassats`: but do i want to bother? 2017-12-12T02:40:27Z nyef`: Probably a good bit of the initial compatibility cruft is from the year-plus delay in getting the original port merged due to the x86 D flag thing. Had that not basically killed all forward progress, I might have cleaned up a lot of the mess that we had at the time. 2017-12-12T02:42:32Z nyef`: The rest, though... We've had at least two other windows-focused maintainers, and I have no idea what they've done. 2017-12-12T02:43:08Z stassats`: i'm the windows unfocused maintainer 2017-12-12T02:47:35Z stassats` quit (Ping timeout: 240 seconds) 2017-12-12T02:50:30Z nyef`: Probably better that way, less tunnel vision from being focused on a single platform. 2017-12-12T02:52:13Z stassats joined #sbcl 2017-12-12T02:53:49Z stassats: darwin+safepoints fails due to SIGRTMIN 2017-12-12T02:54:30Z smurfrobot joined #sbcl 2017-12-12T02:55:56Z stassats: /* Probably-wrong Win32 hack */ return 0; 2017-12-12T02:57:31Z stassats: which is https://bugs.launchpad.net/sbcl/+bug/1382811 2017-12-12T02:58:15Z stassats: after dealing with SIGRTMIN darwin-os.c:272:3: error: Completely untested. Go ahead! Remove this line, try your luck! 2017-12-12T02:58:35Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-12T02:59:48Z stassats: if install_handler returns 0 on win32, does it mean i can rip out the signal emulation bits? 2017-12-12T03:04:40Z tonton quit (Ping timeout: 268 seconds) 2017-12-12T03:05:35Z stassats quit (Ping timeout: 240 seconds) 2017-12-12T03:06:08Z tonton joined #sbcl 2017-12-12T03:09:13Z awolven joined #sbcl 2017-12-12T03:14:14Z awolven quit (Ping timeout: 276 seconds) 2017-12-12T03:18:38Z rpg joined #sbcl 2017-12-12T03:41:46Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-12-12T04:00:10Z rpg joined #sbcl 2017-12-12T04:31:26Z rpg quit (Quit: Textual IRC Client: www.textualapp.com) 2017-12-12T04:36:22Z awolven joined #sbcl 2017-12-12T04:40:30Z awolven quit (Ping timeout: 246 seconds) 2017-12-12T04:49:46Z Bike quit (Quit: Lost terminal) 2017-12-12T04:56:01Z smurfrobot joined #sbcl 2017-12-12T04:58:26Z BitPuffin|osx joined #sbcl 2017-12-12T05:00:27Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-12T06:06:38Z Kevslinger quit (Quit: Connection closed for inactivity) 2017-12-12T06:18:22Z awolven joined #sbcl 2017-12-12T06:22:45Z awolven quit (Ping timeout: 250 seconds) 2017-12-12T07:00:53Z jack_rabbit quit (Read error: Connection reset by peer) 2017-12-12T07:07:06Z oleo quit (Quit: Leaving) 2017-12-12T07:22:52Z jack_rabbit joined #sbcl 2017-12-12T07:34:14Z myrkraverk quit (Ping timeout: 276 seconds) 2017-12-12T07:34:16Z myrkraverk_ joined #sbcl 2017-12-12T07:36:22Z myrkraverk_ is now known as myrkraverk 2017-12-12T08:07:27Z jack_rabbit quit (Ping timeout: 248 seconds) 2017-12-12T08:07:41Z tcr joined #sbcl 2017-12-12T08:09:21Z smurfrobot joined #sbcl 2017-12-12T08:20:34Z jack_rabbit joined #sbcl 2017-12-12T08:24:03Z smurfrobot quit (Remote host closed the connection) 2017-12-12T08:24:56Z smurfrobot joined #sbcl 2017-12-12T08:37:30Z smurfrobot quit (Remote host closed the connection) 2017-12-12T08:42:00Z jyc quit (Ping timeout: 258 seconds) 2017-12-12T08:42:15Z awolven joined #sbcl 2017-12-12T08:44:23Z jyc joined #sbcl 2017-12-12T08:46:31Z awolven quit (Ping timeout: 240 seconds) 2017-12-12T09:15:14Z corci quit 2017-12-12T10:14:24Z smurfrobot joined #sbcl 2017-12-12T10:32:57Z smurfrobot quit (Remote host closed the connection) 2017-12-12T10:49:31Z BitPuffin|osx quit (Ping timeout: 260 seconds) 2017-12-12T10:57:35Z smurfrobot joined #sbcl 2017-12-12T11:04:20Z awolven joined #sbcl 2017-12-12T11:06:59Z m00natic joined #sbcl 2017-12-12T11:09:02Z awolven quit (Ping timeout: 255 seconds) 2017-12-12T11:10:57Z attila_lendvai joined #sbcl 2017-12-12T11:10:57Z attila_lendvai quit (Changing host) 2017-12-12T11:10:57Z attila_lendvai joined #sbcl 2017-12-12T11:11:39Z smurfrobot quit (Remote host closed the connection) 2017-12-12T11:23:18Z smurfrobot joined #sbcl 2017-12-12T11:40:12Z smurfrobot quit (Remote host closed the connection) 2017-12-12T11:42:29Z smurfrobot joined #sbcl 2017-12-12T11:50:09Z Bike joined #sbcl 2017-12-12T12:08:55Z smurfrobot quit (Remote host closed the connection) 2017-12-12T12:10:07Z smurfrobot joined #sbcl 2017-12-12T12:32:46Z smurfrobot quit (Remote host closed the connection) 2017-12-12T12:43:53Z awolven joined #sbcl 2017-12-12T12:48:29Z awolven quit (Ping timeout: 255 seconds) 2017-12-12T13:08:48Z jack_rabbit quit (Ping timeout: 248 seconds) 2017-12-12T13:13:09Z Kevslinger joined #sbcl 2017-12-12T13:22:21Z jack_rabbit joined #sbcl 2017-12-12T13:57:48Z awolven joined #sbcl 2017-12-12T14:02:05Z Bike_ joined #sbcl 2017-12-12T14:02:10Z Bike_ is now known as Bicyclidine 2017-12-12T14:51:25Z cromachina quit (Read error: Connection reset by peer) 2017-12-12T14:52:22Z stassats joined #sbcl 2017-12-12T15:00:47Z oleo2 joined #sbcl 2017-12-12T15:02:11Z oleo joined #sbcl 2017-12-12T15:17:47Z oleo2 quit (Remote host closed the connection) 2017-12-12T15:18:22Z oleo2 joined #sbcl 2017-12-12T15:23:32Z oleo2 quit (Quit: Leaving) 2017-12-12T15:38:53Z rumbler31 joined #sbcl 2017-12-12T15:47:22Z attila_lendvai quit (Ping timeout: 260 seconds) 2017-12-12T15:49:07Z attila_lendvai joined #sbcl 2017-12-12T15:49:07Z attila_lendvai quit (Changing host) 2017-12-12T15:49:07Z attila_lendvai joined #sbcl 2017-12-12T16:01:13Z eudoxia joined #sbcl 2017-12-12T16:05:32Z smurfrobot joined #sbcl 2017-12-12T16:20:47Z fortitude: stassats: as I understand it, windows itself does not have a way to deliver signals to threads (because it doesn't really have signals) 2017-12-12T16:21:14Z fortitude: people sometimes try to do SuspendThread, SetThreadContext, ResumeThread to do it, but that doesn't work because of windows bugs and race conditions 2017-12-12T16:22:08Z fortitude: I saw notes that said sbcl emulates it by using safepoints to check for "signals" that have been saved for delivery, but I don't know if that's accurate anymore 2017-12-12T16:24:31Z stassats: fortitude: we emulate signals 2017-12-12T16:24:39Z stassats: correction, we pretend to emulate signals 2017-12-12T16:25:23Z stassats: and safepoints and thruption is not that thing, there's a whole another emulation layer 2017-12-12T16:25:53Z stassats: but they only get delivered if something checks for them or something is waiting on a lock 2017-12-12T16:26:14Z stassats: from reading the code, don't know if it's used and works 2017-12-12T16:26:30Z Xach joined #sbcl 2017-12-12T16:27:07Z stassats: considering that interrupt-thread is not reliable, probably not 2017-12-12T16:28:45Z Xach: Hi friends. Does http://report.quicklisp.org/2017-12-12/failure-report/f2cl.html#fishpack look like it is a sbcl error or something to be fixed in f2cl? 2017-12-12T16:29:00Z stassats: it is, was fixed yesterday 2017-12-12T16:30:21Z stassats: f2cl produces enormous functions 2017-12-12T16:30:24Z Xach: ok 2017-12-12T16:30:38Z stassats: like with 33 return values 2017-12-12T16:30:39Z Xach: thanks! 2017-12-12T16:30:44Z Xach: completely normal 2017-12-12T16:31:20Z Xach: http://report.quicklisp.org/2017-12-12/failure-report/femlisp.html#femlisp <-- this is a bug in femlisp though, right? 2017-12-12T16:32:37Z stassats: without looking at the code, it likely is 2017-12-12T16:33:26Z fortitude: stassats: check_pending_thruptions() seems to be checking the same bit set by pthread_kill on windows; are thruptions really not involved in signal emulation? 2017-12-12T16:34:10Z stassats: fortitude: they are somehow separate 2017-12-12T16:34:15Z stassats: probably both used at the same time 2017-12-12T16:34:35Z stassats: a mess, in other words 2017-12-12T16:38:36Z BitPuffin|osx joined #sbcl 2017-12-12T16:39:17Z stassats: Xach: http://git.savannah.nongnu.org/cgit/femlisp.git/tree/src/parallel/multiprocessing.lisp#n520 says double-float 2017-12-12T16:39:27Z stassats: http://git.savannah.nongnu.org/cgit/femlisp.git/tree/src/parallel/multiprocessing.lisp#n652 uses single floats 2017-12-12T16:46:33Z Xach: thanks for looking 2017-12-12T17:02:16Z nyef`: fortitude: My understanding is that pthread_kill() on windows is used for INTERRUPT-THREAD, and basically nothing else. 2017-12-12T17:02:29Z nyef`: I could easily be wrong about this, however. 2017-12-12T17:06:40Z fortitude: nyef`: looks like it's used to deliver a SIG_STOP_FOR_GC in gc_stop_the_world(), but that's essentially just interrupt-thread 2017-12-12T17:07:05Z nyef`: There's two versions of gc_stop_the_world(), one for safepoints and one for non-safepoints. 2017-12-12T17:07:07Z Jesin joined #sbcl 2017-12-12T17:07:07Z stassats: but windows doesn't use signals for stop-the-world 2017-12-12T17:10:00Z fortitude: augh right, that's tripped me up before 2017-12-12T17:13:26Z fortitude: nyef`: I think you're right, INTERRUPT-THREAD seems to be the only use on windows 2017-12-12T17:18:59Z smurfrobot quit (Remote host closed the connection) 2017-12-12T17:36:53Z stassats: it is satisfying to remove unused code 2017-12-12T17:38:17Z nyef`: I'm beginning to wonder how much of interrupt.c really needs to exist on windows. 2017-12-12T17:38:48Z eudoxia quit (Quit: Leaving) 2017-12-12T17:41:38Z stassats: 497 lines removed 2017-12-12T17:43:14Z stassats: is !! really that better than != 0? 2017-12-12T17:44:07Z oleo2 joined #sbcl 2017-12-12T17:44:30Z stassats: deleting some unused fiber support 2017-12-12T17:44:47Z stassats: and some other unused stuff 2017-12-12T17:46:00Z rumbler31 quit (Remote host closed the connection) 2017-12-12T17:46:01Z stassats: deleting the signal emulation would be good too, just need to repurpose whatever it does to something simpler 2017-12-12T17:51:03Z oleo2 quit (Quit: Leaving) 2017-12-12T17:56:18Z stassats: grovel-headers doesn't like sigset_t 2017-12-12T17:57:17Z stassats: cause it's trying to determine whether it's signed or not 2017-12-12T17:57:26Z stassats: i guess i can printf directly, since i don't care about that 2017-12-12T18:00:49Z nyef`: Do you care if it's signed... or just it's sizeof()? 2017-12-12T18:00:54Z stassats: sigset_t is 1024 byte on linux? huh 2017-12-12T18:01:01Z nyef`: Err... its sizeof(), sorry. 2017-12-12T18:01:33Z m00natic quit (Read error: Connection reset by peer) 2017-12-12T18:03:45Z stassats: so anywhere sigset_t is used in the signal handler machinery it takes up 1K on the stack? 2017-12-12T18:06:30Z stassats: looking at the functions where sigset_t is used, i don't see any 1024 stack allocations 2017-12-12T18:09:54Z stassats: it's 128 there 2017-12-12T18:10:27Z stassats: oh, it's 1024 bits 2017-12-12T18:19:43Z stassats: on win32, wait in grab-mutex, C-c it, it interrupts => continue, interrupt again => nothing happens 2017-12-12T18:20:10Z stassats: until i free the mutex from the other thread 2017-12-12T18:20:27Z nyef`: Possibly because it's been interrupted once? 2017-12-12T18:20:42Z stassats: what's the difference? 2017-12-12T18:21:07Z stassats: i know it's broken, but why 2017-12-12T18:21:24Z stassats: it should actually be using that signal emulation thingy 2017-12-12T18:21:32Z stassats: so it's no good 2017-12-12T18:21:58Z nyef`: I mean, it's possibly a windows api thing either a limitation or it's not being used quite right. 2017-12-12T18:22:01Z stassats: the only place it actually works -- waiting on the "futex", and it doesn't even work there 2017-12-12T18:37:57Z nyef`: There's an InterlockedExchangePointer(). Does it ever get put back? 2017-12-12T18:42:06Z nyef`: Hrm. I think I'm out of my depth here for the moment. 2017-12-12T19:09:31Z awolven quit 2017-12-12T19:19:57Z stassats: i'm still not convinced that gcing inside signal handlers should enable interrupts 2017-12-12T19:20:13Z stassats: but i don't have a better solution than just reenabling them afterwards 2017-12-12T19:22:22Z stassats: huuh what 2017-12-12T19:22:51Z stassats: there a test that checks for what i just fixed, :deferrables-unblocked-by-lock 2017-12-12T19:23:18Z stassats: what the hell 2017-12-12T19:23:33Z rumbler31 joined #sbcl 2017-12-12T19:26:53Z smurfrobot joined #sbcl 2017-12-12T19:27:06Z stassats: how is this the desirable behavior? 2017-12-12T19:27:29Z stassats: deferrables-blocked (with-mutex) deferrables-unblocked 2017-12-12T19:29:39Z stassats: i guess the test is just testing that they are unblocked within grab-mutex, not after 2017-12-12T19:30:04Z stassats: no way to test inside grab-mutex, so just removing the test 2017-12-12T19:32:36Z stassats: and i think run-timer should disallow reenabling interrupts 2017-12-12T19:35:38Z attila_lendvai quit (Quit: Leaving.) 2017-12-12T19:42:08Z eudoxia joined #sbcl 2017-12-12T19:42:16Z stassats: otherwise it may deadlock, run-timers causes a gc, which enables interrupts, gets interrupted while holding *schedule-timer*, but tries to grab it 2017-12-12T19:47:52Z attila_lendvai joined #sbcl 2017-12-12T19:47:52Z attila_lendvai quit (Changing host) 2017-12-12T19:47:52Z attila_lendvai joined #sbcl 2017-12-12T19:53:16Z attila_lendvai quit (Quit: Leaving.) 2017-12-12T20:00:19Z tcr quit (Ping timeout: 268 seconds) 2017-12-12T20:03:29Z smurfrobot quit (Remote host closed the connection) 2017-12-12T20:05:43Z stassats: but i need a test case for that 2017-12-12T20:06:56Z eudoxia quit (Quit: Leaving) 2017-12-12T20:10:51Z attila_lendvai joined #sbcl 2017-12-12T20:10:51Z attila_lendvai quit (Changing host) 2017-12-12T20:10:51Z attila_lendvai joined #sbcl 2017-12-12T20:21:52Z attila_lendvai quit (Quit: Leaving.) 2017-12-12T20:26:42Z attila_lendvai joined #sbcl 2017-12-12T20:26:42Z attila_lendvai quit (Changing host) 2017-12-12T20:26:42Z attila_lendvai joined #sbcl 2017-12-12T20:31:06Z attila_lendvai quit (Ping timeout: 260 seconds) 2017-12-12T20:33:27Z zulu_inuoe joined #sbcl 2017-12-12T20:34:40Z sigjuice quit (Ping timeout: 248 seconds) 2017-12-12T20:34:46Z GreaseMonkey quit (Remote host closed the connection) 2017-12-12T20:35:13Z jsnell quit (Ping timeout: 248 seconds) 2017-12-12T20:35:44Z jack_rabbit quit (Ping timeout: 248 seconds) 2017-12-12T20:35:46Z zulu_inuoe_ quit (Ping timeout: 248 seconds) 2017-12-12T20:35:46Z Aaryn quit (Ping timeout: 248 seconds) 2017-12-12T20:35:47Z mrSpec quit (Ping timeout: 248 seconds) 2017-12-12T20:38:10Z Aaryn joined #sbcl 2017-12-12T20:39:04Z greaser|q joined #sbcl 2017-12-12T20:39:10Z mrSpec joined #sbcl 2017-12-12T20:39:33Z mrSpec is now known as Guest20567 2017-12-12T20:39:54Z sigjuice joined #sbcl 2017-12-12T20:41:03Z jack_rabbit joined #sbcl 2017-12-12T20:42:35Z jsnell joined #sbcl 2017-12-12T20:42:35Z jack_rabbit quit (Max SendQ exceeded) 2017-12-12T20:43:00Z stassats: "2005-09-19 394) ;; FIXME: a temporary compatibility workaround for CLX" 2017-12-12T20:43:19Z jack_rabbit joined #sbcl 2017-12-12T20:43:45Z smurfrobot joined #sbcl 2017-12-12T20:53:37Z nyef`: "temporary, adj: permanent." 2017-12-12T20:55:10Z stassats: can't come up with a good test case for breaking timers, need to involve outside interrupts 2017-12-12T20:55:59Z stassats: i think i just can preemptively fix it, it's clearly broken 2017-12-12T20:56:05Z stassats: but would be nice to have a test case 2017-12-12T20:56:55Z stassats: i may be able to break it on 32-bit 2017-12-12T20:57:00Z stassats: by using bignum times 2017-12-12T21:01:47Z Guest20567 quit (Changing host) 2017-12-12T21:01:47Z Guest20567 joined #sbcl 2017-12-12T21:02:31Z Guest20567 left #sbcl 2017-12-12T21:02:34Z stassats: ok, it might actually be safe, looks like without-interrupts doesn't allow with-interrupts inside it 2017-12-12T21:02:47Z stassats: so tricky to follow 2017-12-12T21:06:37Z smurfrobot quit (Remote host closed the connection) 2017-12-12T21:09:07Z DeadTrickster quit (Remote host closed the connection) 2017-12-12T21:23:13Z shka quit (Ping timeout: 250 seconds) 2017-12-12T21:26:08Z smurfrobot joined #sbcl 2017-12-12T21:47:44Z attila_lendvai joined #sbcl 2017-12-12T21:47:44Z attila_lendvai quit (Changing host) 2017-12-12T21:47:44Z attila_lendvai joined #sbcl 2017-12-12T21:54:59Z smurfrobot quit (Remote host closed the connection) 2017-12-12T22:00:53Z DeadTrickster joined #sbcl 2017-12-12T22:09:30Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-12T22:10:06Z DeadTrickster joined #sbcl 2017-12-12T22:57:03Z smurfrobot joined #sbcl 2017-12-12T22:57:06Z Jesin quit (Quit: Leaving) 2017-12-12T22:58:42Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-12T22:59:21Z attila_lendvai joined #sbcl 2017-12-12T22:59:21Z attila_lendvai quit (Changing host) 2017-12-12T22:59:21Z attila_lendvai joined #sbcl 2017-12-12T23:06:03Z stassats: (with-alien ((x int 10)) x) works when compiled, doesn't work when interpreted 2017-12-12T23:07:53Z nyef`: I'm... unsurprised, given how much of the alien machinery is implemented in the compiler. 2017-12-12T23:08:33Z stassats: but, did you know that some alien tests fail without an interpreter? 2017-12-12T23:10:09Z Bicyclidine quit (Ping timeout: 260 seconds) 2017-12-12T23:10:21Z nyef`: ... Wha? 2017-12-12T23:12:19Z stassats: https://bugs.launchpad.net/sbcl/+bug/734259 2017-12-12T23:13:08Z stassats: and i had already performed analysis of (with-alien ((x int 10)) x) in https://bugs.launchpad.net/sbcl/+bug/992362 2017-12-12T23:13:11Z stassats: five years ago 2017-12-12T23:15:16Z stassats: i can fix (with-alien ((x int 10)) x) but not with (setf x 10) 2017-12-12T23:15:21Z stassats: since it involves a function 2017-12-12T23:15:28Z smurfrobot quit (Remote host closed the connection) 2017-12-12T23:15:37Z stassats: and if X is actually 10 and not a pointer, i can't work with that 2017-12-12T23:16:25Z stassats: the last failing test on sb-fasteval 2017-12-12T23:16:30Z stassats: i guess i'll just compile that bit 2017-12-12T23:18:29Z nyef`: Yeah, I might be able to do something in that direction, but probably not this week. 2017-12-12T23:21:48Z Xach left #sbcl 2017-12-12T23:22:24Z stassats: how can i skip the whole file and still report it as skipped 2017-12-12T23:23:14Z stassats: i can make a dummy test 2017-12-12T23:27:25Z stassats: and the last failing sb-fasteval test 2017-12-12T23:27:38Z stassats: i didn't fix it, but at least it'll not get reported as sb-fasteval's fault 2017-12-12T23:27:39Z smurfrobot joined #sbcl 2017-12-12T23:30:48Z stassats: sb-alien isn't very good when compiled either 2017-12-12T23:31:10Z stassats: it should use primitive types and representation selection to be better 2017-12-12T23:31:22Z stassats: representation selection isn't very good either 2017-12-12T23:33:35Z smurfrobot quit (Remote host closed the connection) 2017-12-12T23:37:42Z stassats: the whole CI board should be passing now 2017-12-12T23:49:12Z karlosz_ joined #sbcl 2017-12-12T23:50:28Z karlosz_ quit (Client Quit) 2017-12-12T23:50:45Z karlosz_ joined #sbcl 2017-12-12T23:53:20Z karlosz_ is now known as karlosz 2017-12-13T00:13:15Z rumbler31 quit (Remote host closed the connection) 2017-12-13T00:21:31Z stassats: ::: Running (SLEEP :PRETTY-MUCH-FOREVER) strikes again 2017-12-13T00:21:31Z Colleen: Unknown command. Possible matches: 8, set, say, mop, get, login, time, tell, roll, help, 2017-12-13T00:21:54Z stassats: shush 2017-12-13T00:49:27Z BitPuffin|osx quit (Ping timeout: 240 seconds) 2017-12-13T01:01:10Z attila_lendvai quit (Quit: Leaving.) 2017-12-13T01:28:47Z stassats: (defun foo (x &rest rest) (declare (optimize (speed 2) (debug 1))) (if x (foo nil 1 2 3) (length rest))) conses 2017-12-13T01:28:55Z stassats: doesn't with (declare (optimize (speed 1) (debug 1))) 2017-12-13T01:29:11Z aeth quit (Read error: Connection reset by peer) 2017-12-13T01:30:11Z aeth joined #sbcl 2017-12-13T01:31:16Z dougk_ joined #sbcl 2017-12-13T01:31:26Z dougk_: stassats: are you there? 2017-12-13T01:31:37Z stassats: yes 2017-12-13T01:31:54Z dougk_: i've got new failures in http://www.cliki.net/Portable-Threads which we use 2017-12-13T01:32:34Z dougk_: i suspect you've done a ton of stuff with threads lately. The error is Unhandled SB-THREAD:INTERRUPT-THREAD-ERROR in thread # has exited. 2017-12-13T01:32:56Z dougk_: i can bisect if you'd like 2017-12-13T01:33:07Z stassats: i hope you're not using sb-safepoint 2017-12-13T01:33:12Z dougk_: of course not 2017-12-13T01:33:38Z stassats: do you have a test case? 2017-12-13T01:33:50Z dougk_: it's in the test suite afaict. let me confirm. 2017-12-13T01:33:53Z jibanes quit (Ping timeout: 248 seconds) 2017-12-13T01:34:14Z dougk_: i.e. I believe that although we also have failures of our own, they are similar to a failure in its test suite 2017-12-13T01:35:41Z jibanes joined #sbcl 2017-12-13T01:37:08Z smurfrobot joined #sbcl 2017-12-13T01:37:12Z dougk_: yes, confirmed that the test in hibernate/awaken-thread-tests in the upstream repo fails. 2017-12-13T01:39:23Z stassats: doesn't fail here, running in a loop now 2017-12-13T01:40:19Z dougk_: ok let me see if i can find a culprit 2017-12-13T01:41:14Z stassats: don't think we have touched thread interruptions lately 2017-12-13T01:42:43Z nyef`: I'm fairly certain that my recent changes are safepoint-specific. 2017-12-13T01:43:35Z dougk__ joined #sbcl 2017-12-13T01:44:22Z dougk_ quit (Read error: Connection reset by peer) 2017-12-13T01:47:32Z smurfrobot quit (Remote host closed the connection) 2017-12-13T01:47:50Z smurfrobot joined #sbcl 2017-12-13T01:49:04Z stassats: i think the test is broken, and what has changed, i actually made it signal "Interrupt thread failed" 2017-12-13T01:49:23Z stassats: it stopped being signalled for some time, due to type mismatches 2017-12-13T01:51:31Z stassats: (sb-thread:interrupt-thread (sb-thread:make-thread (lambda ())) (lambda ())) now reliably fails 2017-12-13T01:51:58Z stassats: (again) 2017-12-13T01:53:09Z stassats: oh my, another reason it didn't fail before, even if calling to wake-thread 2017-12-13T01:53:14Z stassats: SB-THREAD::WAKE-THREAD returned 4294967295 2017-12-13T01:53:19Z stassats: (when (minusp (wake-thread os-thread)) (error 'interrupt-thread-error :thread thread)) 2017-12-13T01:53:33Z stassats: 4294967295 is #xFFFFFFFF 2017-12-13T01:53:40Z stassats: another wrong type 2017-12-13T01:57:28Z smurfrobot quit (Remote host closed the connection) 2017-12-13T01:58:55Z stassats: dougk__: i've fixed interrupt-thread error detection, but the test is still bogus 2017-12-13T01:59:15Z dougk__: based on that i wouldn't be surprised if we wrote an internal test that is equally bogus 2017-12-13T01:59:17Z stassats: basically, if you have to catch SB-THREAD:INTERRUPT-THREAD-ERROR 2017-12-13T01:59:20Z dougk__: right 2017-12-13T01:59:37Z cromachina joined #sbcl 2017-12-13T02:00:24Z stassats: but i did catch the "long" "int" mismatch, so it wasn't all to naught 2017-12-13T02:04:26Z stassats: oh no, what, set_pseudo_atomic_atomic: pseudo atomic bits is 7954765. 2017-12-13T02:06:15Z stassats: dougk__: btw, something's wrong with relocation on x86 2017-12-13T02:06:17Z stassats: NOTE: Relocating [0x9000000:0xa8cb000] into [0x8eca000:0xa795000] 2017-12-13T02:06:17Z stassats: CORRUPTION WARNING in SBCL pid 11846(tid 0xf7d65700): 2017-12-13T02:06:18Z stassats: Memory fault at 0x49 (pc=0x8ee0c97, sp=0x850ceb4) 2017-12-13T02:06:36Z dougk__: oh wow. 2017-12-13T02:06:49Z stassats: sbcl-32 --lose-on-corruption --dynamic-space-size 3821 2017-12-13T02:07:35Z stassats: dies somewhere in SB-IMPL::RESTART-LISP 2017-12-13T02:08:31Z dougk__: i'll bring that to the top of my stack 2017-12-13T02:08:40Z stassats: dying at call DWORD PTR [eax+0x5] 2017-12-13T02:08:57Z stassats: eax 0x44 2017-12-13T02:13:23Z stassats: naturally, i can't reproduce (sleep :pretty-much-forever) 2017-12-13T02:16:18Z stassats: (- #x9000000 #x8eca000) => 1269760, but p $ds $1 = 43 2017-12-13T02:20:05Z dougk__: looks like I broke heap relocation somewhere recently. that dynamic-space-size was fine as of my aug9 commit which enabled :heap-relocation for x86 2017-12-13T02:21:04Z stassats: it looks like the ds shift isn't applied, i examine 0x9015ee8 from ds:0x9015ee8, an it's x44 indeed 2017-12-13T02:22:46Z stassats: does it relocate by changing the data segment? 2017-12-13T02:23:52Z dougk__: segment register? no 2017-12-13T02:25:06Z stassats: i guess that would break the c code 2017-12-13T02:29:51Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-13T02:30:17Z DeadTrickster joined #sbcl 2017-12-13T02:33:27Z stassats: it's not HEAD, though, rebuilding 2017-12-13T02:33:41Z dougk__: I think it's the "relocate spaces independently" change 2017-12-13T02:34:22Z dougk__: which makes no sense considering there is no immobile space... 2017-12-13T02:42:03Z smurfrobot joined #sbcl 2017-12-13T02:47:20Z karlosz quit (Ping timeout: 272 seconds) 2017-12-13T02:56:25Z smurfrobot quit (Remote host closed the connection) 2017-12-13T03:04:30Z stassats quit (Ping timeout: 246 seconds) 2017-12-13T04:28:48Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-13T04:29:13Z DeadTrickster joined #sbcl 2017-12-13T04:32:56Z Bike quit (Quit: Lost terminal) 2017-12-13T05:19:42Z cromachina quit (Read error: Connection reset by peer) 2017-12-13T05:20:52Z cromachina_ joined #sbcl 2017-12-13T05:22:03Z cro__ joined #sbcl 2017-12-13T05:22:21Z zulu_inuoe_ joined #sbcl 2017-12-13T05:25:11Z zulu_inuoe quit (Ping timeout: 268 seconds) 2017-12-13T05:25:53Z cromachina_ quit (Ping timeout: 248 seconds) 2017-12-13T05:45:15Z dougk__ quit (Read error: Connection reset by peer) 2017-12-13T05:45:32Z dougk_ joined #sbcl 2017-12-13T05:52:07Z smurfrobot joined #sbcl 2017-12-13T05:54:39Z jack_rabbit quit (Ping timeout: 248 seconds) 2017-12-13T06:00:12Z smurfrobot quit (Remote host closed the connection) 2017-12-13T06:07:54Z jack_rabbit joined #sbcl 2017-12-13T06:16:52Z smurfrobot joined #sbcl 2017-12-13T06:35:39Z bugrum joined #sbcl 2017-12-13T06:37:31Z shka joined #sbcl 2017-12-13T06:38:59Z smurfrobot quit (Remote host closed the connection) 2017-12-13T06:43:24Z dougk_ quit (Read error: Connection reset by peer) 2017-12-13T06:43:40Z dougk_ joined #sbcl 2017-12-13T06:53:13Z bugrum quit (Remote host closed the connection) 2017-12-13T07:04:14Z oleo quit (Quit: Leaving) 2017-12-13T07:31:45Z greaser|q quit (Changing host) 2017-12-13T07:31:45Z greaser|q joined #sbcl 2017-12-13T07:31:50Z greaser|q is now known as GreaseMonkey 2017-12-13T07:37:31Z dougk__ joined #sbcl 2017-12-13T07:41:45Z dougk_ quit (Ping timeout: 264 seconds) 2017-12-13T08:08:35Z tcr joined #sbcl 2017-12-13T08:09:42Z dougk__ quit (Ping timeout: 272 seconds) 2017-12-13T08:12:14Z otwieracz left #sbcl 2017-12-13T10:05:36Z stassats joined #sbcl 2017-12-13T10:06:55Z stassats: hmm, win32 has suddenly started experiencing more failures around with-timeout 2017-12-13T10:07:14Z stassats: can't reproduced locally, don't see how my changes may have affected it 2017-12-13T10:14:23Z stassats: with-timer is supposed to use wtimer and thruptions 2017-12-13T10:14:41Z stassats: and sleep is sleeping on cv or something similar 2017-12-13T10:15:01Z stassats: if anything could be interruptible on win32, it's sleep 2017-12-13T10:28:32Z stassats: don't think consing in (defun foo (x &rest rest) (declare (optimize (speed 3) (debug 1))) (if x (foo nil 1) (car rest))) can be easily fixed 2017-12-13T10:28:49Z stassats: map-allocated-objects is suffering from it, maybe i should just lower SPEED there 2017-12-13T10:34:10Z smurfrobot joined #sbcl 2017-12-13T10:34:54Z smurfrobot quit (Remote host closed the connection) 2017-12-13T10:55:47Z White_Flame quit (Ping timeout: 255 seconds) 2017-12-13T10:57:21Z White_Flame joined #sbcl 2017-12-13T11:02:36Z White_Flame quit (Ping timeout: 260 seconds) 2017-12-13T11:37:26Z White_Flame joined #sbcl 2017-12-13T12:37:50Z attila_lendvai joined #sbcl 2017-12-13T12:37:50Z attila_lendvai quit (Changing host) 2017-12-13T12:37:50Z attila_lendvai joined #sbcl 2017-12-13T12:54:53Z stassats: reliably hanging on the CI, but i can't reproduce 2017-12-13T13:14:00Z foom2 joined #sbcl 2017-12-13T13:17:17Z foom quit (Ping timeout: 255 seconds) 2017-12-13T13:38:11Z m00natic joined #sbcl 2017-12-13T13:54:29Z dougk_ joined #sbcl 2017-12-13T13:59:36Z attila_lendvai quit (Quit: Leaving.) 2017-12-13T14:02:13Z Bike joined #sbcl 2017-12-13T14:36:40Z nyef`: stassats: Different windows versions between the CI box and your system, maybe? 2017-12-13T14:48:16Z oleo joined #sbcl 2017-12-13T14:54:10Z sjl joined #sbcl 2017-12-13T15:10:58Z smurfrobot joined #sbcl 2017-12-13T15:12:28Z Jesin joined #sbcl 2017-12-13T15:16:27Z cro__ quit (Read error: Connection reset by peer) 2017-12-13T15:18:07Z smurfrobot quit (Remote host closed the connection) 2017-12-13T15:23:20Z nyef`: Why does code/debug.lisp STACK-ALLOCATED-P pin its parameter? 2017-12-13T15:25:46Z attila_lendvai joined #sbcl 2017-12-13T15:25:46Z attila_lendvai quit (Changing host) 2017-12-13T15:25:46Z attila_lendvai joined #sbcl 2017-12-13T15:32:10Z nyef`: ... Ah, it's from nikodemus. 2017-12-13T15:32:26Z nyef`: ... Why is this a stack-bounds check rather than a heap-bounds check? 2017-12-13T15:44:21Z dougk_ quit (Ping timeout: 260 seconds) 2017-12-13T15:47:24Z BitPuffin|osx joined #sbcl 2017-12-13T15:48:36Z eudoxia joined #sbcl 2017-12-13T16:00:20Z attila_lendvai quit (Quit: Leaving.) 2017-12-13T16:00:54Z smurfrobot joined #sbcl 2017-12-13T16:03:24Z scymtym quit (Ping timeout: 258 seconds) 2017-12-13T16:08:28Z smurfrobot quit (Remote host closed the connection) 2017-12-13T16:10:22Z karswell_ joined #sbcl 2017-12-13T16:13:46Z Jesin quit (Quit: Leaving) 2017-12-13T16:17:37Z stassats: nyef`: "better safe than moved" 2017-12-13T16:18:19Z karswell_ is now known as karswell 2017-12-13T16:19:10Z stassats: movable stacks, anyone 2017-12-13T16:20:34Z rpg joined #sbcl 2017-12-13T16:26:41Z scymtym joined #sbcl 2017-12-13T16:27:30Z White_Flame quit (Ping timeout: 272 seconds) 2017-12-13T16:30:05Z nyef`: ... Seriously? 2017-12-13T16:30:13Z stassats: no 2017-12-13T16:30:42Z nyef`: Right. I think that my next main focus area is probably going to be the debugger. 2017-12-13T16:30:56Z stassats: out of process? 2017-12-13T16:31:01Z stassats: out of thread? 2017-12-13T16:31:16Z nyef`: As much as I'd like to? Probably not to start with. 2017-12-13T16:31:21Z dougk_ joined #sbcl 2017-12-13T16:32:19Z attila_lendvai joined #sbcl 2017-12-13T16:32:20Z attila_lendvai quit (Changing host) 2017-12-13T16:32:20Z attila_lendvai joined #sbcl 2017-12-13T16:35:42Z attila_lendvai quit (Client Quit) 2017-12-13T16:35:45Z BitPuffin|osx quit (Ping timeout: 264 seconds) 2017-12-13T16:37:41Z Jesin joined #sbcl 2017-12-13T16:54:11Z dougk_ quit (Ping timeout: 256 seconds) 2017-12-13T17:05:26Z corci joined #sbcl 2017-12-13T17:18:10Z DeadTrickster quit (Ping timeout: 272 seconds) 2017-12-13T17:19:09Z milanj joined #sbcl 2017-12-13T17:32:54Z smurfrobot joined #sbcl 2017-12-13T17:32:56Z smurfrobot quit (Remote host closed the connection) 2017-12-13T17:33:09Z smurfrobot joined #sbcl 2017-12-13T17:41:19Z stassats: nyef`: start where then? 2017-12-13T17:48:43Z josemanuel joined #sbcl 2017-12-13T17:51:58Z dougk_ joined #sbcl 2017-12-13T17:56:08Z smurfrobot quit (Remote host closed the connection) 2017-12-13T18:00:25Z dougk_ quit (Remote host closed the connection) 2017-12-13T18:10:28Z dougk_ joined #sbcl 2017-12-13T18:16:50Z dougk__ joined #sbcl 2017-12-13T18:20:19Z dougk_ quit (Ping timeout: 256 seconds) 2017-12-13T18:21:32Z smurfrobot joined #sbcl 2017-12-13T18:27:29Z Jesin quit (Quit: Leaving) 2017-12-13T18:29:47Z Jesin joined #sbcl 2017-12-13T18:32:54Z tcr quit (Ping timeout: 272 seconds) 2017-12-13T18:43:26Z smurfrobot quit (Remote host closed the connection) 2017-12-13T18:59:18Z dougk_ joined #sbcl 2017-12-13T18:59:30Z dougk__ quit (Ping timeout: 272 seconds) 2017-12-13T19:00:00Z rumbler31 joined #sbcl 2017-12-13T19:09:37Z stassats: still can't make with-timeout to hang on win32 2017-12-13T19:09:57Z dougk_ quit (Ping timeout: 263 seconds) 2017-12-13T19:10:52Z stassats: yet it does hang somewhat reliably on the CI 2017-12-13T19:11:04Z stassats: i need to look through the code and think hard then 2017-12-13T19:14:13Z scymtym: stassats: anything i can try on the slave (while i still have easy access to it)? 2017-12-13T19:15:05Z corci: Project sbcl-master » default,MAC_OS_mavericks_64bit build #2727: FAILURE in 8 hr 52 min: http://ci.cor-lab.de/job/sbcl-master/featureset=default,label=MAC_OS_mavericks_64bit/2727/ 2017-12-13T19:15:06Z corci: Project sbcl-master » fasteval,MAC_OS_mavericks_64bit build #2727: FAILURE in 8 hr 52 min: http://ci.cor-lab.de/job/sbcl-master/featureset=fasteval,label=MAC_OS_mavericks_64bit/2727/ 2017-12-13T19:15:07Z corci: Project sbcl-master » without-unicode,MAC_OS_mavericks_64bit build #2727: FAILURE in 8 hr 52 min: http://ci.cor-lab.de/job/sbcl-master/featureset=without-unicode,label=MAC_OS_mavericks_64bit/2727/ 2017-12-13T19:15:11Z stassats: don't really know what to try, getting a backtrace, but i don't think you can easily run windbg 2017-12-13T19:15:23Z stassats: gdb has never worked for me on windows 2017-12-13T19:15:46Z scymtym: ok 2017-12-13T19:15:55Z stassats: scymtym: i think the win32 build is stuck because there's a running sbcl.exe it can't delete 2017-12-13T19:16:39Z stassats: darwin-x86-64 hangs at ::: Running (:DEADLOCK-DETECTION :INTERRUPTS) 2017-12-13T19:17:07Z stassats: and ::: Running (:FUNCALLABLE-INSTANCES) 2017-12-13T19:17:41Z scymtym: stassats: i "fixed" that, but only an hour or so ago. and your analysis is correct. the fact that the process is not killed seems like a jenkins bug to me 2017-12-13T19:20:33Z stassats: scymtym: how many cores do the windows machines have? 2017-12-13T19:20:45Z stassats: what kind of virtualization do they use? 2017-12-13T19:21:20Z stassats: oh joy, ::: Running (:DEADLOCK-DETECTION :INTERRUPTS) hangs locally on darwin 2017-12-13T19:21:24Z stassats: at least i can reproduce something 2017-12-13T19:23:43Z stassats: quite reliably, could even bisect 2017-12-13T19:25:58Z scymtym: stassats: the vms are windows 7 on qemu/kvm with two guest CPUs 2017-12-13T19:26:28Z stassats: i'm running w10 on virtualbox with one/two cores 2017-12-13T19:26:38Z stassats: busy and not busy 2017-12-13T19:27:44Z nyef`: I might have a Windows 7 that I can get at... on about the 24th? 2017-12-13T19:27:57Z scymtym: load should be low on the windows vms, high on the linux vms 2017-12-13T19:28:31Z stassats: maybe i'm not at HEAD 2017-12-13T19:28:42Z stassats: since these hangs are new 2017-12-13T19:31:43Z rpg quit (Ping timeout: 256 seconds) 2017-12-13T19:33:56Z stassats: built HEAD, can hang :semaphore :wait-forever 2017-12-13T19:33:59Z stassats: i'm in business 2017-12-13T19:35:43Z stassats: that means it's a recent regression, maybe my signal blocking/unblocking changes 2017-12-13T19:36:52Z stassats: oh i think i did wrong, i was saving the mask, but not restoring it 2017-12-13T19:38:45Z stassats: yeah, really wrong, oops 2017-12-13T19:40:23Z stassats: though shouldn't be hanging stuff, but still not doing what i had intended 2017-12-13T19:49:18Z shka quit (Quit: Konversation terminated!) 2017-12-13T19:57:23Z shka joined #sbcl 2017-12-13T20:09:16Z dougk_ joined #sbcl 2017-12-13T20:12:34Z rgrau joined #sbcl 2017-12-13T20:14:35Z dougk_ quit (Ping timeout: 240 seconds) 2017-12-13T20:14:36Z dougk__ joined #sbcl 2017-12-13T20:24:26Z stassats: ok, maybe my signal mask change is entirely broken 2017-12-13T20:27:38Z stassats: or are things just inconsistent? 2017-12-13T20:28:33Z stassats: sa.sa_mask = blockable_sigset 2017-12-13T20:28:52Z stassats: but with-interrupts unblocks the defferrable, not blockable 2017-12-13T20:29:34Z stassats: unless something unblocks the gc signals first elswhere 2017-12-13T20:31:16Z stassats: ok, they are unblocked in interrupt_handle_now 2017-12-13T20:31:34Z stassats: ok, i think i'm in the clear 2017-12-13T20:33:46Z stassats: yet :deadlock-detection :interrupts still hangs 2017-12-13T20:34:22Z nyef`: Different cause, or did you bisect to this? 2017-12-13T20:35:39Z stassats: there was no other changes to which could've affected interrupt-thread 2017-12-13T20:37:38Z stassats: though it's weird, i couldn't save the mask before unblock_deferrable_signals and reapply it after 2017-12-13T20:37:49Z stassats: something about partially unblocked signals 2017-12-13T20:41:08Z stassats: and it doesn't really explain why it hangs 2017-12-13T20:42:44Z eudoxia quit (Quit: Leaving) 2017-12-13T20:42:52Z stassats: ok, i think there's some kind of a race in the test 2017-12-13T20:43:36Z specbot quit (*.net *.split) 2017-12-13T20:43:36Z Posterdati quit (*.net *.split) 2017-12-13T20:43:36Z mood quit (*.net *.split) 2017-12-13T20:43:52Z DeadTrickster joined #sbcl 2017-12-13T20:44:03Z Posterdati joined #sbcl 2017-12-13T20:44:12Z specbot joined #sbcl 2017-12-13T20:44:12Z mood joined #sbcl 2017-12-13T20:45:32Z stassats: i may have broken with-interrupts somewhere else, not just there 2017-12-13T20:46:18Z stassats: yeah, ugh, what was i thinking 2017-12-13T20:48:52Z stassats: thanks to the CI 2017-12-13T20:49:04Z stassats: or it would've been really embarrassing 2017-12-13T20:49:37Z stassats: maybe i'm relying on the CI and not thinking clearly, more safety measures doesn't mean things become safer 2017-12-13T20:55:09Z scymtym quit (Ping timeout: 246 seconds) 2017-12-13T20:56:13Z stassats: the darwin problem is gone, waiting on windows and relaying it back to the CI 2017-12-13T20:58:03Z leah2 quit (Ping timeout: 250 seconds) 2017-12-13T20:58:48Z shka quit (Remote host closed the connection) 2017-12-13T21:01:01Z stassats: but i wasted more time than if i had applied just a little bit more thought 2017-12-13T21:12:09Z copec quit (Quit: checkity check out.) 2017-12-13T21:12:31Z copec joined #sbcl 2017-12-13T21:12:47Z copec quit (Remote host closed the connection) 2017-12-13T21:12:52Z leah2 joined #sbcl 2017-12-13T21:13:27Z copec joined #sbcl 2017-12-13T21:14:30Z scymtym joined #sbcl 2017-12-13T21:18:27Z Jesin quit (Ping timeout: 240 seconds) 2017-12-13T21:24:44Z Jesin joined #sbcl 2017-12-13T21:41:37Z Jesin quit (Ping timeout: 255 seconds) 2017-12-13T21:44:34Z corci: Yippee, build fixed! 2017-12-13T21:44:35Z corci: Project sbcl-master-windows » Windows_7_32bit build #1580: FIXED in 29 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_32bit/1580/ 2017-12-13T21:44:39Z dougk__: stassats: crossbuild-runner fails on all backends, missing sb!unix::sigset-t 2017-12-13T21:45:02Z stassats: there should be no sigset-t anymore 2017-12-13T21:45:07Z corci: Yippee, build fixed! 2017-12-13T21:45:07Z corci: Project sbcl-master-windows » Windows_7_64bit build #1580: FIXED in 29 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_64bit/1580/ 2017-12-13T21:49:11Z dougk__: ok, updating to tip of tree fixes that 2017-12-13T22:05:35Z dougk__ quit (Ping timeout: 240 seconds) 2017-12-13T22:06:13Z Jesin joined #sbcl 2017-12-13T22:16:02Z dougk_ joined #sbcl 2017-12-13T22:27:34Z shka joined #sbcl 2017-12-13T22:35:53Z rgrau quit (Read error: Connection reset by peer) 2017-12-13T22:37:27Z smurfrobot joined #sbcl 2017-12-13T22:42:21Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-13T22:50:05Z smurfrobot joined #sbcl 2017-12-13T22:58:22Z Bike quit (Quit: Page closed) 2017-12-13T23:00:49Z sjl quit (Ping timeout: 256 seconds) 2017-12-13T23:17:54Z shka quit (Ping timeout: 272 seconds) 2017-12-13T23:31:32Z Jesin quit (Quit: Leaving) 2017-12-13T23:38:10Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-13T23:40:33Z dougk_ quit (Ping timeout: 264 seconds) 2017-12-13T23:46:28Z smurfrobot joined #sbcl 2017-12-13T23:46:51Z Bike joined #sbcl 2017-12-13T23:50:46Z smurfrobot quit (Ping timeout: 255 seconds) 2017-12-13T23:52:43Z smurfrobot joined #sbcl 2017-12-13T23:54:43Z rgrau joined #sbcl 2017-12-13T23:56:20Z smurfrobot quit (Remote host closed the connection) 2017-12-13T23:57:16Z milanj quit (Ping timeout: 260 seconds) 2017-12-14T00:05:38Z smurfrobot joined #sbcl 2017-12-14T00:06:55Z smurfrobot quit (Remote host closed the connection) 2017-12-14T00:33:15Z smurfrobot joined #sbcl 2017-12-14T00:34:52Z smurfrobot quit (Remote host closed the connection) 2017-12-14T00:42:05Z smurfrobot joined #sbcl 2017-12-14T00:43:17Z smurfrobot quit (Remote host closed the connection) 2017-12-14T00:46:23Z smurfrobot joined #sbcl 2017-12-14T00:47:43Z smurfrobot quit (Remote host closed the connection) 2017-12-14T00:55:09Z DeadTrickster_ joined #sbcl 2017-12-14T00:59:10Z DeadTrickster quit (Ping timeout: 255 seconds) 2017-12-14T01:03:33Z smurfrobot joined #sbcl 2017-12-14T01:08:23Z DeadTrickster__ joined #sbcl 2017-12-14T01:09:55Z jack_rabbit quit (Read error: Connection reset by peer) 2017-12-14T01:10:16Z DeadTrickster joined #sbcl 2017-12-14T01:11:16Z DeadTrickster_ quit (Ping timeout: 272 seconds) 2017-12-14T01:12:48Z DeadTrickster__ quit (Ping timeout: 240 seconds) 2017-12-14T01:16:39Z smurfrobot quit (Remote host closed the connection) 2017-12-14T01:26:02Z zulu_inuoe joined #sbcl 2017-12-14T01:26:19Z jack_rabbit joined #sbcl 2017-12-14T01:28:10Z smurfrobot joined #sbcl 2017-12-14T01:28:57Z rumbler31 quit (Ping timeout: 240 seconds) 2017-12-14T01:29:00Z zulu_inuoe_ quit (Ping timeout: 272 seconds) 2017-12-14T01:29:25Z smurfrobot quit (Remote host closed the connection) 2017-12-14T01:37:40Z stassats: well, nested dxes are broken 2017-12-14T01:39:28Z smurfrobot joined #sbcl 2017-12-14T01:40:19Z m00natic quit (Remote host closed the connection) 2017-12-14T01:44:50Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-14T01:49:21Z dougk_ joined #sbcl 2017-12-14T01:51:15Z cromachina joined #sbcl 2017-12-14T01:53:39Z stassats quit (Ping timeout: 256 seconds) 2017-12-14T01:54:39Z smurfrobot joined #sbcl 2017-12-14T02:12:57Z dougk__ joined #sbcl 2017-12-14T02:13:40Z dougk_ quit (Read error: Connection reset by peer) 2017-12-14T02:14:45Z dougk__ quit (Read error: Connection reset by peer) 2017-12-14T02:15:21Z dougk_ joined #sbcl 2017-12-14T02:17:40Z smurfrobot quit (Remote host closed the connection) 2017-12-14T02:31:33Z attila_lendvai joined #sbcl 2017-12-14T02:32:39Z leah2 quit (*.net *.split) 2017-12-14T02:32:39Z karswell quit (*.net *.split) 2017-12-14T02:32:40Z jibanes quit (*.net *.split) 2017-12-14T02:32:40Z copec quit (*.net *.split) 2017-12-14T02:36:24Z leah2 joined #sbcl 2017-12-14T02:36:24Z karswell joined #sbcl 2017-12-14T02:36:24Z jibanes joined #sbcl 2017-12-14T02:36:25Z copec joined #sbcl 2017-12-14T02:36:25Z attila_lendvai is now known as Guest28583 2017-12-14T02:36:57Z bkst quit (Ping timeout: 240 seconds) 2017-12-14T02:36:58Z leah2 quit (Max SendQ exceeded) 2017-12-14T02:37:59Z bkst joined #sbcl 2017-12-14T02:38:58Z leah2 joined #sbcl 2017-12-14T02:46:03Z dougk__ joined #sbcl 2017-12-14T02:46:11Z dougk_ quit (Remote host closed the connection) 2017-12-14T02:53:52Z dougk__ quit (Ping timeout: 272 seconds) 2017-12-14T03:04:49Z Guest28583 quit (Quit: Leaving.) 2017-12-14T03:08:55Z smurfrobot joined #sbcl 2017-12-14T03:12:22Z dougk_ joined #sbcl 2017-12-14T03:17:18Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-14T03:19:30Z dougk_ quit (Read error: Connection reset by peer) 2017-12-14T03:19:45Z dougk_ joined #sbcl 2017-12-14T03:28:32Z smurfrobot joined #sbcl 2017-12-14T03:29:53Z nyef`: Heh. "nested dxes are broken"? This is Very Not A Surprise. 2017-12-14T03:30:07Z nyef`: DX is broken. I've known this for a while now. 2017-12-14T03:31:27Z karswell_ joined #sbcl 2017-12-14T03:33:23Z smurfrobot quit (Ping timeout: 256 seconds) 2017-12-14T03:33:59Z smurfrobot joined #sbcl 2017-12-14T03:34:48Z smurfrobot quit (Remote host closed the connection) 2017-12-14T03:35:04Z smurfrobot joined #sbcl 2017-12-14T03:35:09Z karswell quit (Ping timeout: 264 seconds) 2017-12-14T03:35:48Z rgrau quit (Ping timeout: 240 seconds) 2017-12-14T03:36:18Z smurfrobot quit (Remote host closed the connection) 2017-12-14T03:41:50Z smurfrobot joined #sbcl 2017-12-14T03:46:33Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-14T03:57:19Z smurfrobot joined #sbcl 2017-12-14T04:02:07Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-14T04:15:52Z alandipert quit (Remote host closed the connection) 2017-12-14T04:17:07Z karswell_ quit (Remote host closed the connection) 2017-12-14T04:18:24Z smurfrobot joined #sbcl 2017-12-14T04:18:29Z karswell_ joined #sbcl 2017-12-14T04:25:43Z Bike quit (Quit: Lost terminal) 2017-12-14T04:33:21Z alandipert joined #sbcl 2017-12-14T04:36:30Z smurfrobot quit (Remote host closed the connection) 2017-12-14T04:56:53Z alandipert quit (Quit: Ping timeout (120 seconds)) 2017-12-14T04:57:20Z alandipert joined #sbcl 2017-12-14T05:00:02Z zulu_inuoe quit (Read error: Connection reset by peer) 2017-12-14T05:19:08Z dougk_ quit (Ping timeout: 240 seconds) 2017-12-14T05:37:45Z pfdietz joined #sbcl 2017-12-14T05:40:49Z pfdietz: New failing tests for it though. 2017-12-14T05:49:47Z smurfrobot joined #sbcl 2017-12-14T05:51:55Z SamSkulls joined #sbcl 2017-12-14T05:54:21Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-14T05:59:55Z smurfrobot joined #sbcl 2017-12-14T06:04:08Z SamSkulls quit (Quit: ERC (IRC client for Emacs 27.0.50)) 2017-12-14T06:04:41Z smurfrobot quit (Ping timeout: 256 seconds) 2017-12-14T06:07:01Z oleo quit (Quit: Leaving) 2017-12-14T06:20:02Z smurfrobot joined #sbcl 2017-12-14T06:28:33Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-14T06:30:05Z smurfrobot joined #sbcl 2017-12-14T06:34:08Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-14T06:50:19Z smurfrobot joined #sbcl 2017-12-14T06:55:10Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-14T07:00:30Z smurfrobot joined #sbcl 2017-12-14T07:05:09Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-14T07:06:19Z smurfrobot joined #sbcl 2017-12-14T07:11:00Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-14T07:25:43Z scymtym quit (Ping timeout: 256 seconds) 2017-12-14T07:26:27Z smurfrobot joined #sbcl 2017-12-14T07:31:29Z sigjuice quit (Quit: ZNC - http://znc.in) 2017-12-14T07:31:33Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-14T07:31:54Z sigjuice joined #sbcl 2017-12-14T07:36:55Z shka joined #sbcl 2017-12-14T07:46:47Z smurfrobot joined #sbcl 2017-12-14T07:51:27Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-14T08:10:28Z tcr joined #sbcl 2017-12-14T08:32:11Z karswell_ quit (Remote host closed the connection) 2017-12-14T08:33:02Z karswell_ joined #sbcl 2017-12-14T08:44:21Z scymtym joined #sbcl 2017-12-14T08:48:18Z smurfrobot joined #sbcl 2017-12-14T08:52:47Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-14T08:58:28Z smurfrobot joined #sbcl 2017-12-14T09:02:48Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-14T09:08:43Z smurfrobot joined #sbcl 2017-12-14T09:13:23Z smurfrobot quit (Ping timeout: 256 seconds) 2017-12-14T09:18:45Z smurfrobot joined #sbcl 2017-12-14T09:23:27Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-14T09:29:36Z smurfrobot joined #sbcl 2017-12-14T09:33:48Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-14T09:39:47Z smurfrobot joined #sbcl 2017-12-14T09:44:45Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-14T09:59:50Z smurfrobot joined #sbcl 2017-12-14T10:04:23Z smurfrobot quit (Ping timeout: 256 seconds) 2017-12-14T10:09:24Z karswell_ is now known as karswell 2017-12-14T10:10:21Z Intensity quit (Remote host closed the connection) 2017-12-14T10:20:16Z smurfrobot joined #sbcl 2017-12-14T10:25:21Z smurfrobot quit (Ping timeout: 256 seconds) 2017-12-14T10:40:54Z smurfrobot joined #sbcl 2017-12-14T10:45:57Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-14T10:48:55Z Intensity joined #sbcl 2017-12-14T11:07:51Z m00natic joined #sbcl 2017-12-14T11:25:29Z josemanuel quit (Quit: leaving) 2017-12-14T11:52:39Z smurfrobot joined #sbcl 2017-12-14T12:19:49Z m00natic quit (Remote host closed the connection) 2017-12-14T12:21:49Z m00natic joined #sbcl 2017-12-14T12:27:56Z smurfrobot quit (Remote host closed the connection) 2017-12-14T12:49:27Z nimiux quit (Ping timeout: 240 seconds) 2017-12-14T12:49:35Z corci: Yippee, build fixed! 2017-12-14T12:49:36Z corci: Project sbcl-master » clisp,ubuntu_trusty_32bit build #2731: FIXED in 1 hr 9 min: http://ci.cor-lab.de/job/sbcl-master/featureset=clisp,label=ubuntu_trusty_32bit/2731/ 2017-12-14T12:51:21Z nimiux joined #sbcl 2017-12-14T12:54:52Z rumbler31 joined #sbcl 2017-12-14T12:55:15Z smurfrobot joined #sbcl 2017-12-14T12:55:27Z corci: Yippee, build fixed! 2017-12-14T12:55:28Z corci: Project sbcl-master » without-unicode,ubuntu_trusty_64bit build #2731: FIXED in 1 hr 15 min: http://ci.cor-lab.de/job/sbcl-master/featureset=without-unicode,label=ubuntu_trusty_64bit/2731/ 2017-12-14T12:58:23Z dougk_ joined #sbcl 2017-12-14T12:59:43Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-14T13:01:53Z smurfrobot joined #sbcl 2017-12-14T13:06:31Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-14T13:09:26Z dougk_ quit (Ping timeout: 260 seconds) 2017-12-14T13:14:37Z dougk_ joined #sbcl 2017-12-14T13:17:00Z smurfrobot joined #sbcl 2017-12-14T13:19:59Z attila_lendvai joined #sbcl 2017-12-14T13:21:35Z smurfrobot quit (Ping timeout: 256 seconds) 2017-12-14T13:28:00Z smurfrobot joined #sbcl 2017-12-14T13:28:29Z BitPuffin|osx joined #sbcl 2017-12-14T13:40:51Z smurfrobot quit (Ping timeout: 256 seconds) 2017-12-14T13:41:11Z Bike joined #sbcl 2017-12-14T13:43:11Z trittweiler_ joined #sbcl 2017-12-14T13:46:31Z tcr quit (Ping timeout: 256 seconds) 2017-12-14T13:54:43Z trittweiler__ joined #sbcl 2017-12-14T13:58:25Z trittweiler_ quit (Ping timeout: 256 seconds) 2017-12-14T14:01:24Z trittweiler__ quit (Ping timeout: 272 seconds) 2017-12-14T14:03:22Z nyef`: Hrm... Spec-bind in with the dynbinds... wait, what? Oh, that's *clever*. 2017-12-14T14:05:52Z nyef`: Does that still happen if the spec-bind isn't in the mix? 2017-12-14T14:08:52Z trittweiler joined #sbcl 2017-12-14T14:19:49Z smurfrobot joined #sbcl 2017-12-14T14:29:13Z trittweiler_ joined #sbcl 2017-12-14T14:29:45Z trittweiler quit (Read error: Connection reset by peer) 2017-12-14T14:29:56Z trittweiler__ joined #sbcl 2017-12-14T14:33:57Z trittweiler_ quit (Ping timeout: 264 seconds) 2017-12-14T14:34:01Z trittweiler__ quit (Read error: Connection reset by peer) 2017-12-14T14:34:03Z trittweiler_ joined #sbcl 2017-12-14T14:38:46Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-14T14:41:03Z cromachina quit (Read error: Connection reset by peer) 2017-12-14T14:44:18Z sjl joined #sbcl 2017-12-14T14:45:17Z smurfrobot joined #sbcl 2017-12-14T14:45:44Z oleo joined #sbcl 2017-12-14T14:50:10Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-14T14:50:15Z nyef`: Okay, the spec-bind is important. Hrm. 2017-12-14T14:55:54Z smurfrobot joined #sbcl 2017-12-14T15:00:56Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-14T15:14:38Z dougk_ quit (Ping timeout: 268 seconds) 2017-12-14T15:16:13Z smurfrobot joined #sbcl 2017-12-14T15:21:21Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-14T15:55:10Z smurfrobot joined #sbcl 2017-12-14T15:55:30Z stassats joined #sbcl 2017-12-14T15:55:35Z stassats: nyef`: yes 2017-12-14T15:55:39Z stassats: (let* ((x (list (let ((x (list nil))) (declare (dynamic-extent x)) (print x) (list 1))))) (declare (dynamic-extent x)) (print x)) 2017-12-14T15:56:08Z stassats: it pops all the allocations at one place, even the inner one 2017-12-14T15:56:53Z nyef`: Well, it'd have to, the lifetimes all overlap. 2017-12-14T15:59:51Z Bike: this might not be immediately relevant but since print returns its argument the outer dynamic-extent is incorrect, no? 2017-12-14T16:00:52Z stassats: Bike: doesn't really matter 2017-12-14T16:01:02Z Bike: right. 2017-12-14T16:01:30Z stassats: nyef`: overlap, but do not end the same time 2017-12-14T16:02:44Z nyef`: Sure, but you can't release a DX packet that is "shadowed" by another DX packet. 2017-12-14T16:03:12Z scymtym quit (Ping timeout: 248 seconds) 2017-12-14T16:03:12Z nyef`: Actually, you can't release ANY stack packet that is "shadowed" by a DX packet, because DX packets aren't allowed to move. 2017-12-14T16:04:33Z stassats quit (Read error: No route to host) 2017-12-14T16:05:14Z stassats joined #sbcl 2017-12-14T16:10:48Z stassats quit (Ping timeout: 240 seconds) 2017-12-14T16:23:07Z scymtym joined #sbcl 2017-12-14T16:35:50Z smurfrobot quit (Remote host closed the connection) 2017-12-14T16:46:36Z smurfrobot joined #sbcl 2017-12-14T16:48:01Z trittweiler_ quit (Ping timeout: 248 seconds) 2017-12-14T16:51:21Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-14T16:58:14Z smurfrobot joined #sbcl 2017-12-14T17:02:45Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-14T17:23:28Z rpg joined #sbcl 2017-12-14T17:30:00Z kini quit (Quit: No Ping reply in 180 seconds.) 2017-12-14T17:31:47Z smurfrobot joined #sbcl 2017-12-14T17:32:23Z kini joined #sbcl 2017-12-14T17:36:21Z smurfrobot quit (Ping timeout: 265 seconds) 2017-12-14T17:38:59Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-12-14T17:41:00Z dougk_ joined #sbcl 2017-12-14T17:45:36Z dougk_ quit (Ping timeout: 272 seconds) 2017-12-14T17:50:54Z smurfrobot joined #sbcl 2017-12-14T17:50:54Z smurfrobot quit (Remote host closed the connection) 2017-12-14T17:51:07Z smurfrobot joined #sbcl 2017-12-14T17:52:26Z stassats joined #sbcl 2017-12-14T18:03:29Z m00natic quit (Remote host closed the connection) 2017-12-14T18:12:19Z smurfrobot quit (Remote host closed the connection) 2017-12-14T18:16:16Z Jesin joined #sbcl 2017-12-14T18:22:13Z smurfrobot joined #sbcl 2017-12-14T18:26:27Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-14T18:36:36Z rpg joined #sbcl 2017-12-14T18:37:51Z dougk_ joined #sbcl 2017-12-14T18:38:08Z scymtym quit (Ping timeout: 240 seconds) 2017-12-14T18:40:11Z eudoxia joined #sbcl 2017-12-14T18:41:45Z stassats quit (Ping timeout: 256 seconds) 2017-12-14T18:47:50Z Jesin quit (Quit: Leaving) 2017-12-14T19:00:02Z Jesin joined #sbcl 2017-12-14T19:03:25Z rgrau joined #sbcl 2017-12-14T19:08:51Z stassats joined #sbcl 2017-12-14T19:09:02Z stassats: but (let* ((x (let ((x (list nil))) (declare (dynamic-extent x)) (print x) (list (list 1))))) (declare (dynamic-extent x)) (print x)) is ok 2017-12-14T19:09:08Z stassats: which is basically the same thing 2017-12-14T19:28:21Z malm quit (Quit: Bye bye) 2017-12-14T19:28:56Z nyef`: Looks like there's some assumption around the LEXENV involved? 2017-12-14T19:29:21Z BitPuffin|osx quit (Ping timeout: 256 seconds) 2017-12-14T19:30:31Z stassats: although it still pops the values at one place 2017-12-14T19:31:53Z nyef`: ... Again, that's not a surprise: You can't release any stack packet if there's a DX packet "on top" of it. 2017-12-14T19:32:27Z nyef`: Does it work if the variables have different names? 2017-12-14T19:32:38Z nyef`: Or is the name-collision important? 2017-12-14T19:32:42Z stassats: (let* ((x (let () (let ((x (list nil))) (declare (dynamic-extent x)) (print x)) (list (list 1))))) (declare (dynamic-extent x)) (print x) 1) 2017-12-14T19:32:50Z stassats: different pop-values for the inner dx-let 2017-12-14T19:33:18Z stassats: nyef`: these would be different lambda-vars, the names should not matter 2017-12-14T19:33:51Z nyef`: Right, so give them different names so that we can refer to them easily? 2017-12-14T19:34:13Z stassats: (let* ((x (list (let ((x (list nil))) (declare (dynamic-extent x)) (print x) (list 1))))) (declare (dynamic-extent x)) (print x)) 2017-12-14T19:34:19Z stassats: should be treated the same as 2017-12-14T19:34:23Z stassats: (let* ((x (let () (let ((x (list nil))) (declare (dynamic-extent x)) (print x)) (list (list 1))))) (declare (dynamic-extent x)) (print x) 1) 2017-12-14T19:35:14Z nyef`: Why? In the first, you're doing the DX allocation of (LIST 1) inside the extent of the (DX-allocated) X. 2017-12-14T19:35:32Z nyef`: In the second, you're not. 2017-12-14T19:36:27Z nyef`: Yes, X is dead by then, but that's not the point. 2017-12-14T19:36:33Z nyef`: Or IS that your point? 2017-12-14T19:38:45Z stassats: even if it's (let ((x (list nil))) (declare (dynamic-extent x)) (list (list (car x)))) the storage allocation should happen after X is evaluated 2017-12-14T19:39:18Z nyef`: So? 2017-12-14T19:39:41Z stassats: that would make it work 2017-12-14T19:40:52Z nyef`: Are you trying to argue for reducing the extent of a DX-bound variable to no further than its last reference? 2017-12-14T19:40:55Z stassats: we only recognize nested dxes if they return immediately 2017-12-14T19:41:09Z stassats: so there's no overlap if we take the last call to LIST 2017-12-14T19:42:30Z stassats: (defun f40 () (declare (optimize (debug 1))) (let* ((x (list (let ((x (list nil))) (declare (dynamic-extent x)) (car x))))) (declare (dynamic-extent x)) (print x))) has two pop-values 2017-12-14T19:43:02Z stassats: (dx-let ((x (list (dx-let ((x (list nil))) (car x))))) (car x)) for short 2017-12-14T19:43:42Z stassats: and (dx-let ((x (list (dx-let ((x (list nil))) (list (car x)))))) (car x)) breaks 2017-12-14T19:43:56Z stassats: trying to DX the last LIST while it's within another dx 2017-12-14T19:45:07Z stassats: maybe we should split dx allocation and initialization? 2017-12-14T19:45:25Z stassats: because the initialization is performed within DX, but the allocation can be done outside 2017-12-14T19:46:39Z stassats: though that implies using some temporary storage 2017-12-14T19:51:53Z nyef`: Hrm. 2017-12-14T19:52:04Z nyef`: Okay, looking at the blocks for one of these examples now. 2017-12-14T19:52:11Z stassats: basically moving dx values 2017-12-14T19:52:15Z stassats: but they are unused 2017-12-14T19:52:24Z stassats: if we group nested dx allocations 2017-12-14T19:52:48Z stassats: yet unused, so can be moved 2017-12-14T19:53:24Z nyef`: I'm going to argue that the extent of X should be extended until the extent of X is over. 2017-12-14T19:54:07Z nyef`: Which would, yes, leave dead data on the stack, but should be simpler than reworking the allocation and initialization for DX data overall. 2017-12-14T19:54:20Z stassats: i'd say the extent is until the last evaluation 2017-12-14T19:54:52Z stassats: so if you evaluate everything before allocating, you can discard the previous dx values 2017-12-14T19:55:22Z stassats: i'd be fine with "can't allocate this" as a fix 2017-12-14T19:56:29Z nyef`: The reference extent for X is the body of its LET. The allocation extent is extended, but only because of the stack nature of stack allocation. 2017-12-14T19:57:27Z nyef`: Or, yeah, we could do something in terms of actually allocating STACK TN slots for DX FIXOBJs. 2017-12-14T19:57:51Z stassats: ok, can we just disallow allocations from nested nodes that are already inside some dx environment? 2017-12-14T19:58:11Z nyef`: I'd rather fix STACK analysis for this case, TBH. 2017-12-14T19:58:28Z stassats: how? 2017-12-14T19:58:33Z nyef`: Presuming, of course, that I can figure out how. 2017-12-14T19:58:35Z stassats: can't use nip-values? 2017-12-14T19:59:08Z nyef`: Right. It's a matter of STACK not realizing that the DX packet still has to be live. 2017-12-14T20:00:15Z stassats: i don't think that's a really valid use case, just disallowing it would do 2017-12-14T20:00:31Z stassats: valid as in, anyone would think up such a form expecting things to get dxed 2017-12-14T20:03:21Z nyef`: I'm fairly certain that I can fix STACK analysis for this. 2017-12-14T20:03:38Z stassats: when? 2017-12-14T20:03:59Z nyef`: Shall we say No Later Than Sunday? 2017-12-14T20:04:11Z stassats: ok 2017-12-14T20:04:22Z nyef`: If I don't have it figured out by then, we can go with something else, and I won't complain too-too much. (-: 2017-12-14T20:04:30Z stassats: then i won't explore any alternatives 2017-12-14T20:04:38Z stassats: before that 2017-12-14T20:05:49Z stassats: and how would something like (dx-let ((out (list (dx-let ((in (list nil))) (list (list 10) (car in)))))) (car in)) be handled? 2017-12-14T20:06:05Z stassats: (list 10) would be dx allocated before (car in) is evaluated 2017-12-14T20:06:14Z stassats: crossing the extents 2017-12-14T20:06:55Z nyef`: Same thing: Extend the allocation extent of IN until the end of the extent of OUT. 2017-12-14T20:08:49Z smurfrobot joined #sbcl 2017-12-14T20:13:19Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-14T20:17:36Z stassats quit (Ping timeout: 260 seconds) 2017-12-14T20:24:40Z stassats joined #sbcl 2017-12-14T20:30:16Z nyef`: stassats: Changing the subject a bit, since I haven't managed to get any sort of feedback on it yet, I'm thinking to just commit my tentative fix for lp#1734771 along with a test case and see if it causes any problems. Any objections to this course of action? 2017-12-14T20:31:06Z stassats: lp 1734771 2017-12-14T20:31:06Z specbot: https://bugs.launchpad.net/bugs/1734771 2017-12-14T20:31:58Z stassats: no real interest in that 2017-12-14T20:32:22Z nyef`: Okay then. If it breaks something, it breaks something. 2017-12-14T20:32:40Z stassats: and it's pcl, so, active disinterest 2017-12-14T20:33:02Z nyef`: Yeah, the only reason I'm interested in this one is because I ran into it "in the wild", as it were. 2017-12-14T20:36:58Z scymtym joined #sbcl 2017-12-14T20:39:45Z smurfrobot joined #sbcl 2017-12-14T20:44:30Z smurfrobot quit (Ping timeout: 265 seconds) 2017-12-14T20:50:45Z smurfrobot joined #sbcl 2017-12-14T20:52:26Z shka quit (Ping timeout: 272 seconds) 2017-12-14T20:53:03Z eudoxia quit (Quit: Leaving) 2017-12-14T21:00:21Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-14T21:00:59Z smurfrobot joined #sbcl 2017-12-14T21:02:45Z rgrau quit (Ping timeout: 264 seconds) 2017-12-14T21:05:10Z smurfrobot quit (Ping timeout: 255 seconds) 2017-12-14T21:06:10Z smurfrobot joined #sbcl 2017-12-14T21:11:26Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-14T21:14:23Z nyef`: Oh, wow. This is cute. In linear code, I have dv18 allocated, dv30 allocated, dv18 *disappearing from the block stacks*, dv36 allocated, dv18 *reappearing on the blokc stacks*, and things behave sanely from there. 2017-12-14T21:15:16Z nyef`: So, I sortof know where the hole is, I just have to devise a suitable fix. 2017-12-14T21:16:10Z smurfrobot joined #sbcl 2017-12-14T21:19:51Z stassats quit (Read error: Connection reset by peer) 2017-12-14T21:20:04Z stassats joined #sbcl 2017-12-14T21:20:45Z smurfrobot quit (Ping timeout: 265 seconds) 2017-12-14T21:26:59Z smurfrobot joined #sbcl 2017-12-14T21:31:42Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-14T21:40:16Z stassats quit (Read error: Connection reset by peer) 2017-12-14T21:40:42Z stassats joined #sbcl 2017-12-14T21:45:50Z nyef`: ... And I have a fix! 2017-12-14T21:47:15Z smurfrobot joined #sbcl 2017-12-14T21:51:57Z smurfrobot quit (Ping timeout: 265 seconds) 2017-12-14T21:57:42Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-12-14T22:02:50Z smurfrobot joined #sbcl 2017-12-14T22:08:09Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-14T22:18:08Z stassats quit (Ping timeout: 240 seconds) 2017-12-14T22:22:59Z smurfrobot joined #sbcl 2017-12-14T22:28:04Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-14T22:35:39Z Bike quit (Ping timeout: 260 seconds) 2017-12-14T22:45:08Z sjl quit (Ping timeout: 240 seconds) 2017-12-14T22:45:22Z malm joined #sbcl 2017-12-14T22:50:13Z stassats joined #sbcl 2017-12-14T23:04:42Z nyef`: Ah, damnit. Forgot to update NEWS. 2017-12-14T23:04:51Z nyef`: Oh well. 2017-12-14T23:05:17Z smurfrobot joined #sbcl 2017-12-14T23:06:11Z stassats quit (Ping timeout: 260 seconds) 2017-12-14T23:09:28Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-14T23:10:32Z smurfrobot joined #sbcl 2017-12-14T23:14:48Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-14T23:15:11Z rumbler31 quit (Ping timeout: 248 seconds) 2017-12-14T23:18:11Z Bike joined #sbcl 2017-12-14T23:26:20Z Bike quit (Read error: Connection timed out) 2017-12-14T23:26:26Z smurfrobot joined #sbcl 2017-12-14T23:26:36Z Bike joined #sbcl 2017-12-14T23:31:33Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-14T23:32:28Z stassats joined #sbcl 2017-12-14T23:38:30Z stassats` joined #sbcl 2017-12-14T23:40:54Z stassats quit (Ping timeout: 272 seconds) 2017-12-14T23:44:51Z stassats joined #sbcl 2017-12-14T23:49:37Z stassats quit (Ping timeout: 265 seconds) 2017-12-15T00:01:36Z cromachina joined #sbcl 2017-12-15T00:01:38Z smurfrobot joined #sbcl 2017-12-15T00:05:48Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-15T00:24:34Z smurfrobot joined #sbcl 2017-12-15T00:29:15Z smurfrobot quit (Ping timeout: 265 seconds) 2017-12-15T00:31:29Z libreman quit (Ping timeout: 248 seconds) 2017-12-15T00:40:11Z smurfrobot joined #sbcl 2017-12-15T00:44:28Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-15T00:45:42Z libreman joined #sbcl 2017-12-15T01:03:43Z smurfrobot joined #sbcl 2017-12-15T01:05:28Z leah2 quit (Ping timeout: 240 seconds) 2017-12-15T01:07:32Z leah2 joined #sbcl 2017-12-15T01:08:15Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-15T01:14:09Z stassats` quit (Ping timeout: 264 seconds) 2017-12-15T01:24:04Z smurfrobot joined #sbcl 2017-12-15T01:26:21Z corci: Project sbcl-master-windows » Windows_7_32bit build #1587: FAILURE in 1 min 15 sec: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_32bit/1587/ 2017-12-15T01:27:52Z nyef` checks. 2017-12-15T01:27:56Z nyef`: Oh, good. Not my fault. (-: 2017-12-15T01:28:31Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-15T01:34:14Z smurfrobot joined #sbcl 2017-12-15T01:38:51Z smurfrobot quit (Ping timeout: 265 seconds) 2017-12-15T01:54:36Z smurfrobot joined #sbcl 2017-12-15T01:58:35Z foom joined #sbcl 2017-12-15T01:59:13Z smurfrobot quit (Ping timeout: 256 seconds) 2017-12-15T02:00:29Z foom2 quit (Ping timeout: 255 seconds) 2017-12-15T02:00:36Z dougk quit (Ping timeout: 246 seconds) 2017-12-15T02:00:41Z rpg joined #sbcl 2017-12-15T02:04:51Z smurfrobot joined #sbcl 2017-12-15T02:09:08Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-15T02:10:19Z rpg_ joined #sbcl 2017-12-15T02:12:30Z dougk joined #sbcl 2017-12-15T02:13:33Z rpg quit (Ping timeout: 264 seconds) 2017-12-15T02:14:59Z smurfrobot joined #sbcl 2017-12-15T02:19:56Z smurfrobot quit (Ping timeout: 265 seconds) 2017-12-15T02:24:32Z smurfrobot joined #sbcl 2017-12-15T02:29:22Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-15T02:53:30Z smurfrobot joined #sbcl 2017-12-15T03:03:36Z smurfrobot quit (Remote host closed the connection) 2017-12-15T03:04:18Z smurfrobot joined #sbcl 2017-12-15T03:04:20Z smurfrobot quit (Remote host closed the connection) 2017-12-15T03:04:35Z smurfrobot joined #sbcl 2017-12-15T03:09:15Z corci: Yippee, build fixed! 2017-12-15T03:09:16Z corci: Project sbcl-master-windows » Windows_7_32bit build #1588: FIXED in 29 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_32bit/1588/ 2017-12-15T03:14:05Z myrkraverk: Hmm, how come "~/foo" doesn't work for (sb-ext:save-lisp-and-die "~/foo" ...) ; but ~ works almost everywhere else in SBCL 2017-12-15T03:15:02Z nyef`: ... ~ works in SBCL now? 2017-12-15T03:15:14Z nyef`: Does it also work for ~user/ ? 2017-12-15T03:15:36Z myrkraverk: Well, Either my memory is lying to me, but I thought ~ works in SBCL. 2017-12-15T03:16:00Z dougk quit (Ping timeout: 265 seconds) 2017-12-15T03:16:00Z foom quit (Ping timeout: 265 seconds) 2017-12-15T03:16:01Z myrkraverk: Could be my mermory is fooling me. 2017-12-15T03:16:18Z nyef`: (The ~ shortcut requires actual code support... And SLAD is one of the few (only?) places where the filename gets passed to the runtime to open instead of running through the normal file-stream machinery.) 2017-12-15T03:16:47Z nyef`: It possibly does work generally. I have no idea. 2017-12-15T03:24:18Z foom joined #sbcl 2017-12-15T03:27:41Z dougk joined #sbcl 2017-12-15T03:41:49Z smurfrobot quit (Remote host closed the connection) 2017-12-15T03:41:51Z foom quit (Ping timeout: 248 seconds) 2017-12-15T03:42:35Z dougk quit (Ping timeout: 265 seconds) 2017-12-15T03:49:39Z foom joined #sbcl 2017-12-15T03:51:26Z dougk joined #sbcl 2017-12-15T04:01:53Z nyef`: Hrm... We can probably knock two instructions (one of which is a usually-taken branch) from the PPC step instrumentation. 2017-12-15T05:03:02Z cromachina quit (Read error: Connection reset by peer) 2017-12-15T05:05:59Z smurfrobot joined #sbcl 2017-12-15T05:34:12Z smurfrobot quit (Remote host closed the connection) 2017-12-15T05:34:21Z Bike quit (Quit: Lost terminal) 2017-12-15T05:39:44Z smurfrob_ joined #sbcl 2017-12-15T05:40:00Z dougk_ quit (Ping timeout: 272 seconds) 2017-12-15T05:46:19Z corci: Project sbcl-master » without-unicode,ubuntu_trusty_32bit build #2732: FAILURE in 6 hr 42 min: http://ci.cor-lab.de/job/sbcl-master/featureset=without-unicode,label=ubuntu_trusty_32bit/2732/ 2017-12-15T05:48:44Z smurfrob_ quit (Ping timeout: 265 seconds) 2017-12-15T05:49:07Z smurfrobot joined #sbcl 2017-12-15T06:09:58Z rpg_ quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-12-15T06:13:51Z corci: Yippee, build fixed! 2017-12-15T06:13:51Z corci: Project sbcl-master » without-unicode,ubuntu_trusty_32bit build #2733: FIXED in 22 min: http://ci.cor-lab.de/job/sbcl-master/featureset=without-unicode,label=ubuntu_trusty_32bit/2733/ 2017-12-15T06:26:17Z oleo quit (Quit: Leaving) 2017-12-15T06:33:57Z smurfrobot quit (Remote host closed the connection) 2017-12-15T07:14:07Z smurfrobot joined #sbcl 2017-12-15T07:18:57Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-15T07:25:10Z smurfrobot joined #sbcl 2017-12-15T07:30:09Z smurfrobot quit (Ping timeout: 256 seconds) 2017-12-15T07:30:46Z smurfrobot joined #sbcl 2017-12-15T07:34:28Z scymtym quit (Ping timeout: 240 seconds) 2017-12-15T07:39:04Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-15T07:46:26Z stassats joined #sbcl 2017-12-15T08:00:41Z stassats quit (Ping timeout: 265 seconds) 2017-12-15T08:02:09Z Shinmera: Is there a way to relocate source information? By which I mean, change the absolute paths to files SBCL seems to store about source info. 2017-12-15T08:10:40Z trittweiler joined #sbcl 2017-12-15T08:11:23Z Lord_Nightmare2 joined #sbcl 2017-12-15T08:14:53Z Lord_Nightmare quit (Ping timeout: 255 seconds) 2017-12-15T08:14:53Z Lord_Nightmare2 is now known as Lord_Nightmare 2017-12-15T08:16:12Z smurfrobot joined #sbcl 2017-12-15T08:20:49Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-15T08:22:32Z shka joined #sbcl 2017-12-15T08:32:45Z scymtym joined #sbcl 2017-12-15T08:36:21Z smurfrobot joined #sbcl 2017-12-15T08:41:09Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-15T08:56:44Z smurfrobot joined #sbcl 2017-12-15T09:01:35Z smurfrobot quit (Ping timeout: 265 seconds) 2017-12-15T09:17:00Z smurfrobot joined #sbcl 2017-12-15T09:18:12Z stassats joined #sbcl 2017-12-15T09:21:57Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-15T09:49:02Z stassats: Shinmera: sbcl's source information? 2017-12-15T09:51:41Z Shinmera: No, source information stored in FASLs. 2017-12-15T09:51:47Z Shinmera: After loading the FASLs 2017-12-15T09:51:52Z stassats: no, no way 2017-12-15T09:52:09Z Shinmera: Damn. 2017-12-15T09:53:59Z Shinmera: Could it be made to work if the lisp file was compiled using a logical pathname? 2017-12-15T09:56:21Z |3b|: could probably translate them in slime is that helps 2017-12-15T09:56:53Z stassats: Shinmera: that would work 2017-12-15T09:56:54Z Shinmera: Context is this: https://github.com/portacle/portacle/issues/61 2017-12-15T09:57:06Z stassats: if you can make asdf work 2017-12-15T09:57:11Z Shinmera: Yeah... 2017-12-15T09:58:15Z Shinmera: Ah-- gotta run. I'll ask asdf-devel later. 2017-12-15T09:59:56Z stassats: got Running (RUN-PROGRAM :STOP+CONTINUE) to hang locally 2017-12-15T10:22:52Z stassats left #sbcl 2017-12-15T10:23:11Z kini quit (Quit: No Ping reply in 180 seconds.) 2017-12-15T10:23:19Z stassats joined #sbcl 2017-12-15T10:25:39Z kini joined #sbcl 2017-12-15T10:42:02Z josemanu1l joined #sbcl 2017-12-15T11:15:33Z smurfrobot joined #sbcl 2017-12-15T11:21:47Z josemanu1l is now known as josemanuel 2017-12-15T11:24:33Z stassats: sigcont seems to work, according to ps, but process-status doesn't change for some reason 2017-12-15T11:25:03Z stassats left #sbcl 2017-12-15T11:31:22Z stassats joined #sbcl 2017-12-15T11:31:33Z stassats: the status is :running, not :continued 2017-12-15T11:33:07Z stassats: why was :continued even added? 2017-12-15T11:33:32Z stassats: it's also breaking backwards compatibility 2017-12-15T11:33:59Z stassats: lp 1624941 2017-12-15T11:33:59Z specbot: https://bugs.launchpad.net/bugs/1624941 2017-12-15T11:34:21Z jackdaniel: probably to brag, that WIFCONTINUED is supported 2017-12-15T11:35:21Z jackdaniel: not all BSD systems have this POSIX interface 2017-12-15T11:46:48Z stassats: searching github, yes, people do check for :running and not accounting for the new :continued 2017-12-15T11:46:52Z stassats: so it does break things 2017-12-15T11:50:15Z stassats: the hell is "signaled"? 2017-12-15T11:51:44Z stassats: two spellings, ok 2017-12-15T11:54:44Z stassats: grepping all code, both signall/signal are used 2017-12-15T12:02:48Z stassats: and the case in process-wait is crooked 2017-12-15T12:08:47Z stassats: scymtym: i think i'm going to remove the :continued stuff 2017-12-15T12:08:53Z stassats: just make it reliably report :running 2017-12-15T12:10:56Z scymtym: stassats: :CONTINUED as a user-facing status or all of it? 2017-12-15T12:11:24Z stassats: scymtym: i think the problem was that it wasn't changing the status if it were determined that it was running 2017-12-15T12:11:27Z m00natic joined #sbcl 2017-12-15T12:11:29Z stassats: that was the problem 2017-12-15T12:11:35Z stassats: if it wasn't, then just :continued as the status 2017-12-15T12:12:21Z scymtym: ok 2017-12-15T12:14:55Z stassats: and process-kill sets the status to :running, not :continued 2017-12-15T12:16:33Z stassats: but why is it :running after sb-posix:sigkill? 2017-12-15T12:18:58Z stassats: ok, i'm checking too soon 2017-12-15T13:00:28Z rpg joined #sbcl 2017-12-15T13:01:00Z cromachina joined #sbcl 2017-12-15T13:04:31Z corci: Project sbcl-master » clisp,ubuntu_trusty_32bit build #2733: FAILURE in 7 hr 12 min: http://ci.cor-lab.de/job/sbcl-master/featureset=clisp,label=ubuntu_trusty_32bit/2733/ 2017-12-15T13:12:01Z nyef`: ... build timeout after 400 minutes? 2017-12-15T13:12:31Z nyef`: ... More than six and a half HOURS? 2017-12-15T13:12:56Z stassats: clisp is flaky 2017-12-15T13:14:47Z nyef`: Hrm. Is that on clisp, on sbcl, or on the interaction between the two? 2017-12-15T13:15:06Z nyef`: IIRC, clisp has had some... interesting... regressions in ansi conformance on occasion. 2017-12-15T13:15:11Z stassats: host-1 2017-12-15T13:15:59Z stassats: and i do need to check WIFCONTINUED, otherwise waitpid does report the change in status 2017-12-15T13:16:54Z stassats: but, apparently, it was losing it even with WIFCONTINUED 2017-12-15T13:23:25Z joshe quit (Ping timeout: 250 seconds) 2017-12-15T13:25:46Z joshe joined #sbcl 2017-12-15T13:29:15Z attila_lendvai quit (Quit: Leaving.) 2017-12-15T13:49:45Z Bike joined #sbcl 2017-12-15T13:49:45Z nyef`: Games and fun: Start a fresh SBCL. (BREAK), to get into the debugger, then SOURCE. 2017-12-15T13:49:59Z nyef`: You end up with a SIMPLE-READER-ERROR. 2017-12-15T13:55:54Z stassats: as opposed to a complicated error 2017-12-15T13:57:00Z nyef`: "The ERROR is simple. Fixing it might not be." 2017-12-15T13:57:16Z nyef`: "The error is that the reader is simple." 2017-12-15T13:57:55Z stassats: fixing the error is left as an exercise for the reader 2017-12-15T13:57:57Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-15T13:58:00Z nyef`: Heh! 2017-12-15T14:00:16Z Jesin quit (Quit: Leaving) 2017-12-15T14:05:20Z smurfrobot joined #sbcl 2017-12-15T14:22:37Z dougk_ joined #sbcl 2017-12-15T14:24:18Z corci: Yippee, build fixed! 2017-12-15T14:24:18Z corci: Project sbcl-master » clisp,ubuntu_trusty_32bit build #2734: FIXED in 1 hr 19 min: http://ci.cor-lab.de/job/sbcl-master/featureset=clisp,label=ubuntu_trusty_32bit/2734/ 2017-12-15T14:25:53Z dougk_ quit (Read error: Connection reset by peer) 2017-12-15T14:26:12Z dougk_ joined #sbcl 2017-12-15T14:30:37Z cromachina quit (Read error: Connection reset by peer) 2017-12-15T14:31:27Z corci: Yippee, build fixed! 2017-12-15T14:31:28Z corci: Project sbcl-master » without-threads,ubuntu_trusty_64bit build #2734: FIXED in 1 hr 26 min: http://ci.cor-lab.de/job/sbcl-master/featureset=without-threads,label=ubuntu_trusty_64bit/2734/ 2017-12-15T14:33:04Z sjl__ joined #sbcl 2017-12-15T14:35:10Z dougk_ quit (Ping timeout: 272 seconds) 2017-12-15T14:39:38Z attila_lendvai joined #sbcl 2017-12-15T15:19:31Z nyef`: Ugh. Lovely. EQL-specialized arguments don't get the assignment protection either. I'm not fixing that any time soon. Marking it as :FAILS-ON :SBCL and moving on. 2017-12-15T15:24:34Z BitPuffin|osx joined #sbcl 2017-12-15T15:26:58Z sjl__ is now known as sjl 2017-12-15T15:44:33Z nyef`: ... Hrm. And now I've thought of a way to make it all work properly. Lovely. 2017-12-15T15:45:01Z dougk_ joined #sbcl 2017-12-15T15:45:48Z Jesin joined #sbcl 2017-12-15T15:49:57Z scymtym quit (Ping timeout: 256 seconds) 2017-12-15T15:50:25Z oleo joined #sbcl 2017-12-15T15:59:49Z ChadMcNugget joined #sbcl 2017-12-15T15:59:58Z ChadMcNugget left #sbcl 2017-12-15T16:00:09Z BitPuffin|osx quit (Ping timeout: 265 seconds) 2017-12-15T16:01:11Z trittweiler quit (Ping timeout: 260 seconds) 2017-12-15T16:06:37Z stassats: running the run-program test for hours, not getting lost :running status, so maybe i did fix it 2017-12-15T16:10:36Z scymtym joined #sbcl 2017-12-15T16:12:14Z dougk_ quit (Ping timeout: 265 seconds) 2017-12-15T16:28:53Z BitPuffin|osx joined #sbcl 2017-12-15T16:40:57Z shka quit (Ping timeout: 256 seconds) 2017-12-15T16:42:48Z corci: Yippee, build fixed! 2017-12-15T16:42:49Z corci: Project sbcl-master » without-threads,ubuntu_trusty_32bit build #2735: FIXED in 58 min: http://ci.cor-lab.de/job/sbcl-master/featureset=without-threads,label=ubuntu_trusty_32bit/2735/ 2017-12-15T16:49:59Z corci: Yippee, build fixed! 2017-12-15T16:50:00Z corci: Project sbcl-master » safepoints,ubuntu_trusty_64bit build #2735: FIXED in 1 hr 5 min: http://ci.cor-lab.de/job/sbcl-master/featureset=safepoints,label=ubuntu_trusty_64bit/2735/ 2017-12-15T16:50:47Z nyef`: Now, I'm fairly sure that that commit didn't fix the build. 2017-12-15T16:59:39Z smurfrobot quit (Remote host closed the connection) 2017-12-15T17:01:04Z stassats: the (make-thread :interrupt-with make-thread :bug-1180102) test is broken 2017-12-15T17:01:47Z stassats: it adds a thread to the thread list inside another thread, so (mapc #'join-thread threads) may not see all threads 2017-12-15T17:04:59Z stassats: also lose threads just by doing PUSH from multiple threads 2017-12-15T17:05:29Z stassats: technically, from a single thread, but asynchronously 2017-12-15T17:07:06Z scymtym: wow, what was i thinking? 2017-12-15T17:09:43Z smurfrobot joined #sbcl 2017-12-15T17:13:41Z dougk_ joined #sbcl 2017-12-15T17:14:45Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-15T17:16:07Z stassats: would be nice to have atomic-push work on closed over local variables 2017-12-15T17:16:57Z Jesin quit (Remote host closed the connection) 2017-12-15T17:17:28Z dougk: Shinmera: if, around a call to COMPILE-FILE, you bind *source-namestring* to whatever you, the fasl contain whatever it was you wanted. Perhaps that's enough? 2017-12-15T17:18:51Z stassats: that would have to be a logical pathname, to be moveable 2017-12-15T17:19:38Z Jesin joined #sbcl 2017-12-15T17:19:42Z dougk: Shinmera: and moreover, I think it's horrible that we store absolute paths. I don't know why we're (or Lisp in general) is so fanatical about premature merge-pathnames everywhere. So I added *name-context-file-path-selector* which changes fasls to use pathname instead of truename 2017-12-15T17:20:23Z dougk: stassats: why "have to" ? It just has to not be absolute 2017-12-15T17:20:38Z stassats: M-. wouldn't work either way 2017-12-15T17:20:56Z stassats: unless *d-p-d* always stays the same 2017-12-15T17:24:15Z Intensity quit (Ping timeout: 246 seconds) 2017-12-15T17:26:17Z Jesin quit (Ping timeout: 256 seconds) 2017-12-15T17:28:57Z Intensity joined #sbcl 2017-12-15T17:29:31Z smurfrobot joined #sbcl 2017-12-15T17:37:40Z milanj joined #sbcl 2017-12-15T17:39:18Z Jesin joined #sbcl 2017-12-15T17:39:48Z Shinmera: dougk: Thanks for the hint. Fare had something to say about using logical pathnames in ASDF: https://mailman.common-lisp.net/pipermail/asdf-devel/2017-December/005996.html 2017-12-15T17:40:01Z smurfrobot quit (Remote host closed the connection) 2017-12-15T17:41:23Z stassats: and *source-namestring* is internal and may go away at any time 2017-12-15T17:41:38Z m00natic quit (Remote host closed the connection) 2017-12-15T17:44:09Z corci: Project sbcl-master-windows » Windows_7_32bit build #1592: FAILURE in 28 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_32bit/1592/ 2017-12-15T17:44:36Z stassats: forgot #-win32 2017-12-15T17:45:16Z corci: Project sbcl-master-windows » Windows_7_64bit build #1592: FAILURE in 29 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_64bit/1592/ 2017-12-15T17:46:16Z nyef`: Wait, you can't smack around debug source pathnames post-load? 2017-12-15T17:46:37Z stassats: that's even more itnernal 2017-12-15T17:46:56Z nyef`: True. And I'd probably MAP-ALLOCATED-OBJECTS to do it, too. (-: 2017-12-15T17:47:44Z stassats: i remove docstrings with map-allocated-objects 2017-12-15T17:56:01Z scymtym: stassats: can't INTERRUPT-THREAD return before the interrupting code finishes? 2017-12-15T17:56:57Z stassats: it could 2017-12-15T17:57:07Z stassats: especially on safepoints 2017-12-15T17:57:28Z stassats: but since it interrupts that thread, by the time join-thread runs it should have caught to all interruptions 2017-12-15T17:59:59Z scymtym: ok 2017-12-15T18:10:13Z smurfrobot joined #sbcl 2017-12-15T18:11:37Z dougk_ quit (Ping timeout: 265 seconds) 2017-12-15T18:15:51Z dougk_ joined #sbcl 2017-12-15T18:44:15Z corci: Yippee, build fixed! 2017-12-15T18:44:16Z corci: Project sbcl-master-windows » Windows_7_32bit build #1594: FIXED in 28 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_32bit/1594/ 2017-12-15T18:45:18Z corci: Yippee, build fixed! 2017-12-15T18:45:19Z corci: Project sbcl-master-windows » Windows_7_64bit build #1594: FIXED in 29 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_64bit/1594/ 2017-12-15T18:58:30Z BitPuffin|osx quit (Ping timeout: 265 seconds) 2017-12-15T19:02:25Z scymtym: how would you feel about a "Timeouts and Deadlines" manual section along these lines: https://techfak.de/~jmoringe/sbcl.html#Timeouts-and-Deadlines ? (i also tried a different stylesheet) 2017-12-15T19:09:08Z dougk_ quit (Ping timeout: 265 seconds) 2017-12-15T19:09:33Z stassats: https://i.imgur.com/eeLbaVj.png is unreadable 2017-12-15T19:10:15Z stassats: not sure why the code insets are dark at all 2017-12-15T19:10:46Z stassats: and making the text less wide would be more readable 2017-12-15T19:15:29Z scymtym: ok, i can try to change those. any comments regarding the added section? (it's a draft. i'm asking whether things are missing, wrong, etc.) 2017-12-15T19:16:41Z nyef`: Do we still have a WITH-TIMEOUT or similar that needs to be properly excoriated in the manual, so that people know not to try to use it? 2017-12-15T19:16:42Z stassats: in the introduction, it's saying about sleep, and other blocking stuff, but with-timeout works on any code 2017-12-15T19:18:23Z stassats: i guess it's not talking about with-timeout 2017-12-15T19:18:28Z stassats: but i like with-timeout 2017-12-15T19:18:35Z scymtym: it doesn't talk about WITH-TIMEOUT so far, but i guess it should 2017-12-15T19:18:36Z stassats: broken pclsring and unwinding be damned 2017-12-15T19:18:50Z nyef`: It's all fun and games until someone loses all their fds. 2017-12-15T19:19:24Z nyef`: Or their alien address space. 2017-12-15T19:19:25Z nyef`: Or... 2017-12-15T19:19:27Z stassats: with-timeout is no more dangerous than interrupt-thread 2017-12-15T19:19:59Z stassats: and safepoints, it's potentially safe 2017-12-15T19:20:08Z nyef`: ... No. No, it isn't. 2017-12-15T19:20:35Z nyef`: INTERRUPT-THREAD is still fantastically dangerous, and even safepoints can't rescue it from potential resource leaks. 2017-12-15T19:20:35Z stassats: well, it does interrupt foreign calls 2017-12-15T19:20:56Z stassats: but it can not interrupt foreign calls 2017-12-15T19:21:02Z nyef`: Even safepoint-strictly and thruptions aren't safe enough. 2017-12-15T19:21:11Z stassats: or wait until completion 2017-12-15T19:21:30Z scymtym: Shinmera: do you know a reasonable way to limit the body width in a document like the one linked above? the stylesheet i started with had "max-width: 960px;" but that doesn't seem reasonable 2017-12-15T19:21:50Z stassats: using pixels is never reasonable these days 2017-12-15T19:22:41Z nyef`: Shouldn't the width be proportional to the font size, somehow? 2017-12-15T19:22:45Z Shinmera: scymtym: I'm busy right now but we can talk later. 2017-12-15T19:22:57Z stassats: width: 70% or something like that 2017-12-15T19:23:10Z stassats: and max-width in ems 2017-12-15T19:24:49Z Shinmera: Even doing percentages is not good. If you want to be real proper you need to do media queries and employ different strategies based on available space. 2017-12-15T19:25:33Z stassats: the web suggests 30-35 ems 2017-12-15T19:25:44Z scymtym: Shinmera: ok, thanks in advance 2017-12-15T19:26:07Z stassats: that's too narrow 2017-12-15T19:26:23Z stassats: 60em looks ok 2017-12-15T19:26:54Z stassats: until i start resizing the window 2017-12-15T19:27:17Z dougk_ joined #sbcl 2017-12-15T19:27:23Z nyef`: The real trick is going to be getting the indentation to work out as you shrink the box to the point where the longer lines in the examples need to be broken. 2017-12-15T19:29:11Z stassats: probably better to look what other manuals do and steal that 2017-12-15T19:31:58Z scymtym already stole that stylesheet (it is in the public domain): https://bitbucket.org/sirgazil/texinfo-css/downloads/ 2017-12-15T19:40:57Z stassats: nyef`: make it call out to lisp with different *print-right-margin*? 2017-12-15T19:41:30Z stassats: to sbcl running on https://bellard.org/jslinux/ 2017-12-15T19:43:12Z nyef`: Wonderfully robust solution, there. Capable of functioning in an offline-viewing scenario, on a platform for which there is no lisp implementation installed. 2017-12-15T19:43:25Z stassats: on mobile 2017-12-15T19:43:42Z foom quit (Quit: Leaving) 2017-12-15T19:44:06Z nyef`: Yes. On mobile. 2017-12-15T19:44:11Z stassats: resurrect your sbcl-on-bare-metal, less overhead 2017-12-15T19:47:32Z nyef` shudders. 2017-12-15T19:48:38Z nyef`: I will not resurrect sbcl-os as a project until and unless we have a non-stop-the-world GC available. And possibly not even then. 2017-12-15T19:48:54Z nyef`: In fact, probably not even then. 2017-12-15T19:49:15Z stassats: is it realistic to have a gc that never ever stops the world? it seems all the real realtime gcs do stop sometimes 2017-12-15T19:50:14Z nyef`: Fine, fine. But world-stoppage must be substantially less than the periodic timer granularity. 2017-12-15T19:51:05Z stassats: a gc-less mode of operation 2017-12-15T19:51:09Z stassats: for the os bits 2017-12-15T19:54:32Z nyef`: ... Any function declared DOES-NOT-CONS may only call functions declared DOES-NOT-CONS, verified at compile-time? 2017-12-15T19:57:27Z foom joined #sbcl 2017-12-15T20:01:19Z Shinmera: What about functions that sometimes cons, sometimes don't, depending on arguments? 2017-12-15T20:02:32Z nyef`: Suddenly CONSing becomes part of the type system, and we have derive-type optimizers for it? 2017-12-15T20:02:40Z jackdaniel: they should be declared: maybe-does-not-cons-we-should-toss-a-coint 2017-12-15T20:03:02Z jackdaniel: coin* 2017-12-15T20:03:44Z Shinmera: I mean like, just adding two numbers may or may not cons. So without that kind of information the vast majority of functions could not reasonably be declared to not cons. 2017-12-15T20:03:51Z nyef`: Anyway, there's far, FAR too much work to be done before I consider heading back down the bare-metal LispOS rathole. 2017-12-15T20:12:10Z stassats: Shinmera: trap at runtime 2017-12-15T20:13:57Z nyef`: Honestly, I don't *WANT* my OS kernel to fault like that at runtime, I want the compiler to give me a no-go at build time. 2017-12-15T20:14:40Z stassats: would also like the compiler to solve the halting problem? 2017-12-15T20:15:27Z jackdaniel: is it a new feature planned for next sbcl? 2017-12-15T20:21:52Z shka joined #sbcl 2017-12-15T20:23:15Z karswell quit (Remote host closed the connection) 2017-12-15T20:23:35Z karswell joined #sbcl 2017-12-15T20:24:03Z dougk_ quit (Ping timeout: 265 seconds) 2017-12-15T20:31:48Z dougk: nyef`: i suspect but don't know for sure yet that something you just did to PCL causes build failures in https://github.com/froydnj/chipz 2017-12-15T20:32:24Z dougk: the error occurs in : (LET ((CHIPZ::START CHIPZ::START)) (SB-PCL::BIND-ARGS ((&OPTIONAL (CHIPZ::START 0) CHIPZ::END) SB-PCL::.REST-ARG.) 2017-12-15T20:32:33Z dougk: caught WARNING: undefined variable: CHIPZ::START 2017-12-15T20:32:52Z dougk: anyway, we haven't touched that, and I just integrated from upstream and got that failure 2017-12-15T20:33:08Z nyef`: Very plausibly, yes. 2017-12-15T20:33:44Z nyef`: I could point out which commit it is likely to be, too. 2017-12-15T20:33:58Z dougk: do you need me to poke at it or you have you got it from here? 2017-12-15T20:36:22Z nyef`: I'm fairly lost when it comes to PCL guts. Do you have a smaller test case to start from? 2017-12-15T20:37:12Z nyef`: Or even just a pointer to which toplevel form blows up first? 2017-12-15T20:40:43Z dougk: i can reduce it for you 2017-12-15T20:41:22Z nyef`: Just cloned chipz. Looks like it's in stream.lisp? 2017-12-15T20:41:35Z nyef`: ... multiple times? 2017-12-15T20:42:22Z dougk_ joined #sbcl 2017-12-15T20:44:48Z nyef`: It's defined but not used at compile-time, and then used-without-being-defined at load-time? 2017-12-15T20:45:26Z nyef`: Parameterless CNM is involved... 2017-12-15T20:45:51Z nyef`: START is mutated. 2017-12-15T20:46:21Z nyef`: But it's an optional argument? 2017-12-15T20:46:50Z nyef`: Hrm. 2017-12-15T20:47:44Z nyef`: I think I see what's going on here. 2017-12-15T20:48:57Z nyef`: On the one hand, trying an initial fix. On the other, I think I have more test cases to write around this one. 2017-12-15T20:50:41Z dougk: yes, stream.lisp if you just load that system in quicklisp. 2017-12-15T20:55:45Z nyef`: And my initial fix "works". Do you mind if I take the time to add more test cases before I check this in? 2017-12-15T20:56:55Z scymtym quit (Ping timeout: 265 seconds) 2017-12-15T21:16:14Z dougk: that's fine 2017-12-15T21:16:58Z nyef`: Does it matter if the test doesn't compile if the bug isn't fixed as long as it does compile once the bug is fixed? 2017-12-15T21:17:22Z nyef`: (Actually, given the bare toplevel ASSERTs, it probably doesn't matter.) 2017-12-15T21:18:13Z scymtym joined #sbcl 2017-12-15T21:21:01Z nyef`: ... and moot point anyway, it didn't fail to build. 2017-12-15T21:21:01Z dougk: whatever. it's friday 2017-12-15T21:22:09Z nyef`: Mmm. 2017-12-15T21:22:46Z stassats: nyef`: just don't push it alone until it's fixed 2017-12-15T21:22:51Z nyef`: Waiting on Yet Another Build so that I can run the latest test case that I came up with on the "fixed" version, and then I'll see about pushing the fix if everything still works. 2017-12-15T21:22:54Z stassats: or we'll get a barrage of error reports here 2017-12-15T21:25:07Z nyef`: stassats: From the failed tests in the CI system? 2017-12-15T21:25:13Z stassats: yes 2017-12-15T21:25:23Z nyef`: Ah. Yeah, no worries on that account. 2017-12-15T21:25:45Z stassats: but it doesn't build each commit, just whatever it pulls 2017-12-15T21:26:32Z scymtym: currently, it does a batch every five hours or so thanks to clisp 2017-12-15T21:26:35Z nyef`: One line fix, thirteen lines of test code. 2017-12-15T21:26:51Z stassats: scymtym: consider evicting it? 2017-12-15T21:27:01Z stassats: or updating 2017-12-15T21:27:20Z stassats: and now i have a backlog of pfdietz issues 2017-12-15T21:27:39Z stassats: most of them aren't of high priority 2017-12-15T21:28:20Z stassats: SB-C::DX-COMBINATION-P doesn't terminate, nice 2017-12-15T21:28:43Z scymtym: i could do clisp in a separate job without detailed test results or {mail,irc} notification 2017-12-15T21:29:12Z stassats: replace it with ecl? 2017-12-15T21:29:26Z stassats: if there are no reports, does the tree make a sound? 2017-12-15T21:31:16Z nyef`: dougk: Should be fixed now. 2017-12-15T21:31:56Z stassats: nyef`: do you test &key and &rest? 2017-12-15T21:32:13Z scymtym: i never tried building with ecl. will try locally first 2017-12-15T21:32:41Z nyef`: No, I don't. I briefly pondered the possibility, at least of &key, but wanted to get this bit out the door. 2017-12-15T21:33:21Z stassats: and ecl doesn't build atm 2017-12-15T21:33:35Z stassats: but my ecl is old 2017-12-15T21:33:52Z nyef`: So, here's a question for &REST: Does mutating the toplevel structure of the &REST list ((push 23 (cdr rest)), for example) affect what gets passed to the next method? 2017-12-15T21:34:16Z stassats: remembering that i even have an ecl commit bit 2017-12-15T21:34:51Z scymtym: failed here too. ecl from debian unstable 2017-12-15T21:35:22Z nyef`: Hrm... And ISTM that the spec doesn't actually say that it doesn't. (-: 2017-12-15T21:36:26Z nyef`: Right, and why would it? The parameter is &REST REST, not its "backbone" of CONSes! 2017-12-15T21:38:02Z stassats: i'll see if it's a bug in ecl or in sbcl 2017-12-15T21:40:32Z pfdietz_ joined #sbcl 2017-12-15T21:41:43Z pfdietz_: A conforming program may not modify a &rest parameter list structure. 2017-12-15T21:42:07Z pfdietz_: clhs apply 2017-12-15T21:42:08Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_apply.htm 2017-12-15T21:42:33Z stassats: and now i can't find my code to load the xc 2017-12-15T21:43:31Z stassats: bah, it's in the repo 2017-12-15T21:44:10Z stassats: conspicuously named "load-xc.lisp" 2017-12-15T21:44:45Z dougk: I have one named 'just-load-xc.lisp'. Thinking of deleting it 2017-12-15T21:46:03Z DeadTrickster quit (Remote host closed the connection) 2017-12-15T21:48:14Z nyef`: pfdietz_: Not quite. It should be quite conforming for a function to do such mutation provided that APPLY is never used to pass a constant list to such a function. 2017-12-15T21:49:31Z nyef`: (Yes, that's not what CLHS says. CLHS is clearly providing the "safe" advice here, not the strict letter of the limitation.) 2017-12-15T21:49:51Z stassats: seems like a problem with sbcl, in this case 2017-12-15T21:50:09Z stassats: event-statistics uses (collect ((info))) and info has a compiler macros 2017-12-15T21:50:13Z dougk: nyef`: if a function takes such liberty, then it's assuming it will *never* be called with apply. That's a completely ridiculous assumption 2017-12-15T21:50:20Z stassats: do compiler macro get applied to local fbindings? 2017-12-15T21:50:34Z pfdietz_ quit (Ping timeout: 265 seconds) 2017-12-15T21:50:35Z dougk: compiler macros only apply to global names 2017-12-15T21:51:24Z nyef`: dougk: No, it's assuming that it will never be called with apply WITH A CONSTANT LIST. It's still a ridiculous assumption on the face of things, but remains a valid implementation choice. 2017-12-15T21:52:56Z dougk: constant or not, it is assuming that it is ok to modify the caller's data 2017-12-15T21:53:17Z nyef`: ... Yes. 2017-12-15T21:53:52Z nyef`: So, when is it reasonable to modify the caller's data? 2017-12-15T21:54:12Z nyef`: If the answer is "never", congratulations: You now have pure functional programming. 2017-12-15T21:54:46Z stassats: ecl debugging support in slime is really poor 2017-12-15T21:55:08Z nyef`: stassats: I'd've believed you without "ecl" on the front of that sentence. 2017-12-15T21:55:29Z stassats: you haven't seen the ecl support 2017-12-15T21:56:04Z nyef`: I also haven't seen a good free Lisp debugger. Ever. 2017-12-15T21:57:53Z pkhuong: nyef`: debuggers seem to suffer from a reverse red queen effect. just wait a couple more years and what free lisps have will be considered outstanding. 2017-12-15T21:58:33Z nyef`: They're outstanding *NOW*. Outstandingly BAD. 2017-12-15T22:00:29Z nyef`: Well, at least SBCL's is. 2017-12-15T22:01:01Z pfdietz_ joined #sbcl 2017-12-15T22:02:30Z corci: Project sbcl-master » clisp,ubuntu_trusty_64bit build #2736: FAILURE in 33 min: http://ci.cor-lab.de/job/sbcl-master/featureset=clisp,label=ubuntu_trusty_64bit/2736/ 2017-12-15T22:06:05Z nyef`: Hrm. "Free space: 3190 bytes." I have computing hardware with less total RAM than that. 2017-12-15T22:06:57Z stassats: ok, ECL is indeed using not shadowing compiler macros locally 2017-12-15T22:07:53Z stassats: and it also keeps crashing... 2017-12-15T22:08:41Z stassats: and what am i doing 2017-12-15T22:09:25Z shka quit (Ping timeout: 265 seconds) 2017-12-15T22:10:23Z dougk_ quit (Ping timeout: 265 seconds) 2017-12-15T22:12:23Z stassats: this is debugging in ecl: https://i.imgur.com/QnSm9Tt.png 2017-12-15T22:18:18Z Jesin quit (Quit: Leaving) 2017-12-15T22:23:04Z Bike quit (Ping timeout: 260 seconds) 2017-12-15T22:25:41Z eudoxia joined #sbcl 2017-12-15T22:32:16Z josemanuel quit (Quit: leaving) 2017-12-15T22:33:08Z nyef`: Oh, *DUH*. The fix for lp#309068 is blindingly obvious in retrospect. 2017-12-15T22:33:08Z stassats: oh my, found a ticket for ecl and compiler-macros and macrolet... and i'm in there 2017-12-15T22:35:53Z stassats: it is actually fairly easy to fix 2017-12-15T22:35:59Z pfdietz` joined #sbcl 2017-12-15T22:36:12Z stassats: even for me, not knowing much of the ecl compiler 2017-12-15T22:36:22Z stassats: but still too much time to bother 2017-12-15T22:37:08Z nyef`: Maybe prod jackdaniel about it? 2017-12-15T22:37:34Z stassats: jackdaniel: quit slacking off! it's been two years, time to fix macrolet 2017-12-15T22:38:02Z stassats: the ticket https://gitlab.com/embeddable-common-lisp/ecl/issues/83 2017-12-15T22:38:31Z pfdietz_ quit (Ping timeout: 256 seconds) 2017-12-15T22:38:54Z stassats: (let ((s (labels ((%f () (%f))) (%f)))) (declare (dynamic-extent s)) (car s)) is very lovely 2017-12-15T22:40:31Z pfdietz` quit (Ping timeout: 248 seconds) 2017-12-15T22:40:45Z Shinmera: nyef`: What would you like to see in a debugger? 2017-12-15T22:42:07Z nyef`: Shinmera: Still trying to work that out. But I know that SBCL not only doesn't have it, it doesn't have the underlying machinery for it. 2017-12-15T22:42:17Z nyef`: At least, not in working condition. 2017-12-15T22:42:39Z stassats: Shinmera: out of process 2017-12-15T22:43:01Z Shinmera: stassats: That's a good point 2017-12-15T22:43:54Z nyef`: My current debugger-notes file contains a brief cost/benefit breakdown for out-of-thread and out-of-process debuggers compared with in-thread debuggers. 2017-12-15T22:45:51Z stassats: out-of-thread does not play nicely with ptrace 2017-12-15T22:45:56Z stassats: and still modifies state 2017-12-15T22:47:59Z nyef`: True. But saves on having to have some sort of stable cross-version protocol for finding things in the process image. 2017-12-15T22:49:18Z nyef`: Hey, didn't lp#309083 get fixed at some point? 2017-12-15T22:49:24Z stassats: lp 309083 2017-12-15T22:49:24Z specbot: https://bugs.launchpad.net/bugs/309083 2017-12-15T22:52:05Z nyef`: In 5b3d3786f2eed5f3d869af31204587a2fa617ad5, maybe? 2017-12-15T22:52:43Z stassats: apparently 2017-12-15T22:53:02Z nyef`: Do you want to close this, or shall I? 2017-12-15T22:54:50Z stassats: i defer it to you 2017-12-15T22:55:05Z stassats: about to fix another issue 2017-12-15T22:55:21Z stassats: into the testing phase 2017-12-15T22:56:56Z stassats: stupid emacs tramp 2017-12-15T22:57:17Z stassats: how hard is it to figure out that the connection is dead and reconnect 2017-12-15T23:00:30Z stassats: Failure: compiler.pure.lisp / FLOAT-ADDITION-OF-ZERO 2017-12-15T23:00:32Z stassats: oh what now 2017-12-15T23:02:12Z Bike joined #sbcl 2017-12-15T23:03:44Z stassats: "The assertion (AND (SEARCH "FADD" DISASSEMBLY1) (NOT (SEARCH "FADD" DISASSEMBLY2))) failed." 2017-12-15T23:03:46Z stassats: doesn't fail here 2017-12-15T23:03:55Z stassats: how could it be failing randomly? 2017-12-15T23:04:41Z sjl quit (Ping timeout: 260 seconds) 2017-12-15T23:04:48Z nyef`: Backend subfeatures or something? 2017-12-15T23:04:58Z stassats: nothing's changed 2017-12-15T23:06:09Z nyef`: "When a user, reporting an issue, says ``nothing has changed'', typically almost everything has changed." 2017-12-15T23:06:21Z stassats: it's the ci 2017-12-15T23:06:40Z stassats: you'll see, i'll push my next thing and it'll be a "Yippee!" 2017-12-15T23:09:01Z stassats: getting emails and irc messages about build failures is really helpful 2017-12-15T23:09:09Z stassats: at least in weeding out bad and unreliable tests 2017-12-15T23:09:55Z stassats: would be nice to build on all platforms 2017-12-15T23:12:40Z scymtym: we got new hardware recently. i can probably try whether it can run qemu-system-* things at bearable speeds 2017-12-15T23:13:03Z stassats: it's hours 2017-12-15T23:13:15Z stassats: just to build 2017-12-15T23:13:17Z scymtym: ok, out of the question then 2017-12-15T23:13:19Z stassats: testing is double that 2017-12-15T23:13:56Z stassats: it'd be nice to have some scripts for setting up local testing 2017-12-15T23:14:12Z stassats: i could at least test the various bsds 2017-12-15T23:14:36Z stassats: and arm64, though that's still my phone 2017-12-15T23:15:02Z nyef`: I'd consider trying to set up my own CI system, except that I really don't want to leave my esoteric hardware running constantly at home when I'm not going to be there. And I'm not about to try and get rack space in a data center. 2017-12-15T23:15:32Z stassats: daily, weekly, before the release is better than nothing 2017-12-15T23:15:43Z nyef`: (A half-rack would probably be overkill for me... but plausibly not by much.) 2017-12-15T23:17:14Z stassats: when i get a new phone, i could repurpose that one for testing 2017-12-15T23:17:55Z stassats: unlikely be soon, though, since it's still working satisfactory 2017-12-15T23:19:15Z nyef`: I could plausibly do something in terms of 32-bit ARM and PPC build environments. 2017-12-15T23:19:39Z nyef`: Umm... And a 64-bit MIPSle? 2017-12-15T23:19:44Z stassats: those not in short supply 2017-12-15T23:19:48Z nyef`: (With a 32-bit userland, damnit.) 2017-12-15T23:19:50Z stassats: now alpha and hppa 2017-12-15T23:20:21Z nyef`: Alpha and HPPA are precisely two of the four boxes that I don't want to have running full-time. 2017-12-15T23:21:39Z nyef`: (The other two being SPARC and 64-bit MIPSbe.) 2017-12-15T23:27:28Z nyef`: Can we close lp#556640 ? And if so, do we close it as Fix Released or something else? 2017-12-15T23:27:39Z stassats: lp 556640 2017-12-15T23:27:39Z specbot: https://bugs.launchpad.net/bugs/556640 2017-12-15T23:28:51Z stassats: that ticket is not helpful without a working test case 2017-12-15T23:28:54Z stassats: shut it 2017-12-15T23:31:23Z eudoxia quit (Quit: Leaving) 2017-12-16T00:01:32Z cromachina joined #sbcl 2017-12-16T00:08:27Z corci: Yippee, build fixed! 2017-12-16T00:08:28Z corci: Project sbcl-master » safepoints,ubuntu_trusty_32bit build #2737: FIXED in 1 hr 4 min: http://ci.cor-lab.de/job/sbcl-master/featureset=safepoints,label=ubuntu_trusty_32bit/2737/ 2017-12-16T00:20:49Z scymtym: dougk: is the run_sbcl_with_core in core.test.sh added in 48e0a06a72705ade366114098fd3f49d8827edf2 missing a --no-userinit? it seems to have loaded my ~/.sbclrc when running tests 2017-12-16T00:27:16Z nyef`: Heh. Maybe we should have a test environment where the ~/.sbclrc contains just (ERROR "SOMEONE FORGOT A --no-userinit SOMEWHERE")? (-: 2017-12-16T00:31:22Z nyef`: (Actually, I should do that for all of my test boxes.) 2017-12-16T00:41:33Z stassats: scymtym: put (error "reading .sbclrc") into ~/.sbclrc on the CI instances? 2017-12-16T00:42:10Z stassats: i see it's already been suggested 2017-12-16T00:42:30Z stassats: znc is annoying me with missed messages 2017-12-16T00:48:32Z scymtym: stassats: yeah. will be more convenient on monday, though 2017-12-16T00:49:26Z stassats: i'm going to write my own irc client with a sane irc bouncer one of these days 2017-12-16T00:55:02Z nyef`: Or just find a copy of chavatar and get that running? 2017-12-16T00:56:09Z stassats: the problem is playing back messages, it's think that it has sent the message, but the laptop lid was already closed or something like that 2017-12-16T00:56:25Z stassats: so the protocol between the bouncer and the client shouldn't be IRC 2017-12-16T01:21:37Z nyef`: Phew. Finally finished reviewing bugs on launchpad. 2017-12-16T01:21:52Z stassats: "yep, it's bugs" 2017-12-16T01:22:07Z nyef`: Heh. 2017-12-16T01:26:07Z nyef`: Found a few things that might be nice to have, but would require implementing on every backend (possibly simultaneously), stuff relating to two or three possible projects that I have in mind, plus some stuff that's going on my "fix this month" list. 2017-12-16T01:35:48Z karswell quit (Ping timeout: 240 seconds) 2017-12-16T01:35:58Z karswell joined #sbcl 2017-12-16T01:42:14Z pfdietz: I can probably add more bugs if you need them. Can't guarantee they'll be important. 2017-12-16T01:42:30Z stassats: i already have a backlog 2017-12-16T01:43:01Z stassats: a couple that need bisection first 2017-12-16T01:43:35Z pfdietz: Latest batch was from a new testing method. Will taper off soon enough. 2017-12-16T01:43:51Z stassats: yeah, bad code wasn't tested enough 2017-12-16T01:44:40Z pfdietz: It would be better if "compiler detects bad code" and "compiler has an internal error" were more distinguishable. 2017-12-16T01:45:05Z stassats: sb-int:bug isn't enough? 2017-12-16T01:45:50Z stassats: unless it's a type error 2017-12-16T01:46:19Z pfdietz: Yeah, that case. 2017-12-16T01:46:48Z stassats: well, the compiler shouldn't ever type-error 2017-12-16T01:47:08Z pfdietz: And it shouldm 2017-12-16T01:47:12Z pfdietz: 't have bugs 2017-12-16T01:47:37Z stassats: well, if it signals a type error, you don't need to distinguish it from anything, it's a bug 2017-12-16T01:47:51Z stassats: or suboptimal error reporting 2017-12-16T01:48:27Z pfdietz: Huh! So, bad user code that causes the compiler to signal a type-error is reportable? 2017-12-16T01:48:42Z stassats: yeah 2017-12-16T01:48:43Z pfdietz: You may be getting tons of bug reports soon. 2017-12-16T01:49:00Z pfdietz: I had been trapping and ignoring those. 2017-12-16T01:49:51Z stassats: it should behave like (defun foo () (let)) 2017-12-16T01:50:14Z stassats: or (defun foo () (let ((a b c)))) 2017-12-16T01:50:26Z pfdietz: type errors in the user code can be signaled at compile time, though. Like (lambda () (car 1)) 2017-12-16T01:50:45Z stassats: that's a full warning at ct 2017-12-16T01:51:37Z pfdietz: Ok. 2017-12-16T01:52:08Z stassats: anything signals an actual uncaught error shouldn't happen 2017-12-16T02:20:01Z dougk_ joined #sbcl 2017-12-16T02:20:08Z whoman quit (Read error: Connection reset by peer) 2017-12-16T02:33:57Z stassats quit (Ping timeout: 264 seconds) 2017-12-16T03:10:20Z whoman joined #sbcl 2017-12-16T03:11:02Z stassats joined #sbcl 2017-12-16T03:21:26Z milanj quit (Quit: This computer has gone to sleep) 2017-12-16T03:21:42Z nyef`: Why am I getting a "no such file or directory" in genesis trying to open from-xc/src/code/interr.lisp-obj ? 2017-12-16T03:34:30Z nyef`: Ah. Compile failure of src/code/interr.lisp. 2017-12-16T03:34:47Z nyef`: But I had to do a non-parallel build to find the error message. 2017-12-16T03:37:05Z stassats: accidentally fixed an aver in (&key (k (block 1))) by making constantp not be dumb about (block 1) 2017-12-16T03:37:28Z stassats: no i wonder if the underlying issue is still there 2017-12-16T03:40:07Z stassats: the IR goes completely haywire in (defun foo () (flet ((f (&key (k (block 1))) k)) #'f)) 2017-12-16T03:40:29Z stassats: constantp is just causing (block 1) to be evaluated differently, so it's strange 2017-12-16T03:50:18Z nyef`: Hrm. "Memory fault at 0x7" vs. "Unhandled memory fault at #xC". 2017-12-16T03:50:32Z stassats: i guess having (block 1) as a constant argument makes the whole xep fall off, since there's no code path where it's not NIL 2017-12-16T03:50:45Z nyef`: What's the magic to get to LDB easily? 2017-12-16T03:50:55Z stassats: ldb_monitor() 2017-12-16T03:51:23Z stassats: ok, i think i'm ok with the fix then 2017-12-16T03:51:27Z nyef`: So, (alien-funcall (extern-alien "ldb_monitor" (function void))) or something? 2017-12-16T03:51:39Z stassats: that'll do 2017-12-16T03:51:51Z stassats: call ldb_monitor() from gdb as well 2017-12-16T03:52:08Z nyef`: Hrm. Program counter is corrupt in context. 2017-12-16T03:52:51Z stassats: better run with --lose-on-corruption 2017-12-16T03:52:53Z nyef`: Thank you. 2017-12-16T03:53:05Z nyef`: No, I'm testing changes to the memory fault handler. 2017-12-16T03:53:54Z stassats: good luck 2017-12-16T03:54:08Z nyef` builds an x86-64 version to make sure that things are as sane there as they first appeared. 2017-12-16T03:55:05Z nyef`: I'm not going to be able to test a non-x86oid version of this before the 22nd at the earliest, though. 2017-12-16T03:56:08Z stassats: you can send it my way 2017-12-16T03:56:12Z stassats: or push it 2017-12-16T03:56:33Z nyef`: Thanks. I'll do one of those once I get it working properly locally. 2017-12-16T03:56:51Z stassats: it's easier to revert or fix later than to copy things around 2017-12-16T03:57:00Z stassats: which i sometimes do 2017-12-16T03:57:07Z stassats: "meh, i'll test it in production" 2017-12-16T03:58:52Z stassats: huh, another constantp problem 2017-12-16T03:59:06Z stassats: good, not dealing with the compiler guts 2017-12-16T03:59:29Z nyef`: Hrm. Okay, x86-64 is working right. 2017-12-16T03:59:37Z stassats: or dealing 2017-12-16T03:59:45Z stassats: (constantp '(if nil v3 0)) is T, which it kinda is 2017-12-16T03:59:59Z stassats: but eval from within the compiler chokes on V3 2017-12-16T04:00:10Z nyef`: So, why is x86 not working right? 2017-12-16T04:00:37Z stassats: (constant-form-value '(if nil v3 0)) works 2017-12-16T04:01:31Z stassats: the constantp was buried deep in the backtrace, almost missed it and launched on some canada goose hunt 2017-12-16T04:02:19Z stassats: invoking the compiler recursively leads to bad stuff 2017-12-16T04:04:55Z dougk_ quit (Ping timeout: 256 seconds) 2017-12-16T04:08:58Z stassats: two issues caused by constant forms, easy fixes 2017-12-16T04:09:08Z nimiux quit (Ping timeout: 240 seconds) 2017-12-16T04:10:14Z nimiux joined #sbcl 2017-12-16T04:15:14Z stassats: another issue is with deleted stuff being touched 2017-12-16T04:17:00Z nyef`: Hrm. Do x86 and x86-64 use different stack disciplines or something? 2017-12-16T04:17:35Z stassats: i've been ignoring x86 the past years 2017-12-16T04:17:42Z stassats: but i don't think so 2017-12-16T04:19:36Z nyef`: ... Stuff is on the stack where I expected it... 2017-12-16T04:21:44Z nyef`: ... but the emulation trap is picking up values that are two slots off. 2017-12-16T04:22:39Z stassats: what are you fixing? 2017-12-16T04:23:10Z nyef`: lp 309068 2017-12-16T04:23:10Z specbot: https://bugs.launchpad.net/bugs/309068 2017-12-16T04:25:36Z nyef`: Ah. 2017-12-16T04:25:43Z nyef`: ... WTF? 2017-12-16T04:26:54Z nyef`: Why the hell does os_context_sp_addr() on x86 linux return a location that doesn't affect the CPU state on resuming the context? 2017-12-16T04:27:17Z stassats: does it? 2017-12-16T04:27:39Z nyef`: gregs[17] vs. reg_ESP's gregs[7]. 2017-12-16T04:28:38Z stassats: how did it all work before? 2017-12-16T04:29:01Z nyef`: If you mean a_r_t_c_f(), it uses os_context_register_addr(context, reg_ESP). 2017-12-16T04:34:56Z stassats: one more failed aver left 2017-12-16T04:35:58Z nyef`: Waiting for a test suite run here. And there's another build-and-test cycle for me to do to make sure I didn't break anything obvious on x86-64 as well, but with a bit of luck I should be quit of this by midnight. 2017-12-16T04:36:36Z stassats: and i think i have a fix 2017-12-16T04:36:39Z stassats: another deleted code issue 2017-12-16T04:41:16Z stassats: but how come i get an orphaned block but delete-block was never called on it 2017-12-16T04:41:21Z stassats: and why is it still in the component 2017-12-16T04:44:12Z stassats: it's deleted by unlink-node 2017-12-16T04:51:50Z stassats: remove-from-dfo is called, so what's its deal 2017-12-16T04:55:02Z corci: Project sbcl-master-windows » Windows_7_32bit build #1603: FAILURE in 29 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_32bit/1603/ 2017-12-16T04:56:17Z stassats: weird failure 2017-12-16T04:57:04Z stassats: wasn't looking at the right file 2017-12-16T04:57:20Z stassats: ::: Running :GC-DEADLOCK just exits 2017-12-16T04:57:21Z Colleen: Unknown command. Possible matches: 8, set, say, mop, get, login, time, tell, roll, help, 2017-12-16T04:57:33Z stassats: probably crashes into ldb or something 2017-12-16T05:01:17Z nyef`: lp#309608 fix candidate, for review: http://repo.or.cz/sbcl/nyef.git/commitdiff/dd86760877befb294b2919d1075cce323782e905 2017-12-16T05:02:51Z stassats: is the context alive at that point? 2017-12-16T05:03:05Z nyef`: Which context at what point? 2017-12-16T05:03:18Z stassats: the original context 2017-12-16T05:04:12Z stassats: or are the registers still the same it doesn't matter? 2017-12-16T05:04:59Z nyef`: The original context is resumed (and killed) when returning from lisp_memory_fault_error() (well, the signal handler that called it). But it has been re-pointed to a trap instruction which creates a fresh context with the same register values, which are then corrected to what the original context originally had in the process of recovering the fault address. 2017-12-16T05:06:09Z nyef`: Also note that having that re-created context means that the debugger can find the faulting frame. 2017-12-16T05:06:26Z myrkraverk quit (Ping timeout: 268 seconds) 2017-12-16T05:07:21Z myrkraverk joined #sbcl 2017-12-16T05:08:10Z nyef`: "0: (SB-SYS:SAP-REF-8 #.(SB-SYS:INT-SAP #X00000004) 3)" vs. "3: (SB-SYS:SAP-REF-8 :INVALID-VALUE-FOR-UNESCAPED-REGISTER-STORAGE :INVALID-VALUE-FOR-UNESCAPED-REGISTER-STORAGE) [tl,external]" 2017-12-16T05:13:19Z stassats: is something adding the deleted block back to dfo? 2017-12-16T05:23:55Z Bike quit (Quit: Lost terminal) 2017-12-16T05:24:02Z corci: Yippee, build fixed! 2017-12-16T05:24:03Z corci: Project sbcl-master-windows » Windows_7_32bit build #1604: FIXED in 28 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_32bit/1604/ 2017-12-16T05:25:47Z cromachina quit (Read error: Connection reset by peer) 2017-12-16T05:26:33Z cromachina joined #sbcl 2017-12-16T05:31:39Z stassats: is find-initial-dfo linking them back? 2017-12-16T05:33:41Z stassats: no, before that 2017-12-16T05:49:55Z stassats: component-last-block somehow is deleted 2017-12-16T05:53:51Z jackdaniel: stassats: huh, macrolet? if it's scheduled for 16.2.0, I will tackle it probably before christmas :) 2017-12-16T05:54:14Z jackdaniel: and it seems it is 2017-12-16T06:05:52Z stassats: somehow the last block gets deleted 2017-12-16T06:06:01Z stassats: there's an unexplained with-component-last-block 2017-12-16T06:06:05Z stassats: which shadows the last block 2017-12-16T06:09:55Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-12-16T06:13:16Z sjl joined #sbcl 2017-12-16T06:18:12Z sjl quit (Ping timeout: 272 seconds) 2017-12-16T06:38:09Z nyef`: I've come up with a few changes to my lp#309608 fix. I think that, with a bit of commentary, it might almost be ready to commit. 2017-12-16T06:41:40Z stassats: i don't like ignoring deleted blocks, but i'm out of solution at the moment 2017-12-16T06:42:05Z nyef`: Hrm. And it looks like most uses of DX_ALLOC_SAP can simply go away. Most of them are for a "context_sap" where the context is also passed to fake_foreign_function_call(), making retrieving it from Lisp without passing the SAP directly a simple matter. 2017-12-16T06:48:07Z stassats quit (Ping timeout: 256 seconds) 2017-12-16T06:52:16Z shka joined #sbcl 2017-12-16T07:45:48Z shka quit (Ping timeout: 240 seconds) 2017-12-16T08:40:51Z milanj joined #sbcl 2017-12-16T08:49:06Z josemanuel joined #sbcl 2017-12-16T09:19:12Z Kevslinger quit (Quit: Connection closed for inactivity) 2017-12-16T10:36:25Z attila_lendvai quit (Quit: Leaving.) 2017-12-16T10:37:05Z corci: Project sbcl-master » without-unicode,MAC_OS_mavericks_64bit build #2739: FAILURE in 6 hr 42 min: http://ci.cor-lab.de/job/sbcl-master/featureset=without-unicode,label=MAC_OS_mavericks_64bit/2739/ 2017-12-16T10:37:17Z corci: Project sbcl-master » fasteval,MAC_OS_mavericks_64bit build #2739: FAILURE in 6 hr 43 min: http://ci.cor-lab.de/job/sbcl-master/featureset=fasteval,label=MAC_OS_mavericks_64bit/2739/ 2017-12-16T10:42:04Z myrkraverk quit (Remote host closed the connection) 2017-12-16T11:32:31Z scymtym quit (Ping timeout: 260 seconds) 2017-12-16T11:52:07Z scymtym joined #sbcl 2017-12-16T12:06:07Z scymtym: in my implementation of first class domestic environments (fcde), i am kind of forced to use a mostly-pauseless, concurrent garbage collection scheme since the mutator continuously drops live objects and won't react to stop-for-gc signals. admittedly, some deferred cleanup and storage management has to happen when the mutator goes to sleep on its own 2017-12-16T12:33:00Z Bike joined #sbcl 2017-12-16T12:59:18Z shka joined #sbcl 2017-12-16T13:00:15Z rpg joined #sbcl 2017-12-16T13:24:17Z shka quit (Ping timeout: 248 seconds) 2017-12-16T13:28:25Z Kevslinger joined #sbcl 2017-12-16T13:34:53Z dougk_ joined #sbcl 2017-12-16T13:49:45Z pchrist quit (Quit: leaving) 2017-12-16T13:53:49Z scymtym: i would like to commit this for timeouts and deadlines (minus the changed style for now): https://techfak.de/~jmoringe/sbcl.html#Extensions . the added "Timeouts and Deadlines" entry in the extensions list links to the actual new section. any suggestions? 2017-12-16T14:00:51Z pchrist joined #sbcl 2017-12-16T14:55:20Z oleo quit (Quit: Leaving) 2017-12-16T14:59:58Z oleo joined #sbcl 2017-12-16T14:59:59Z oleo quit (Changing host) 2017-12-16T14:59:59Z oleo joined #sbcl 2017-12-16T15:08:09Z karswell quit (Ping timeout: 264 seconds) 2017-12-16T15:34:37Z myrkraverk joined #sbcl 2017-12-16T15:45:19Z nyef`: So, I'm reviewing my lp#309608 changes, and I find myself wanting to conditional-compile out the seam between two functions. 2017-12-16T15:46:26Z nyef`: The tail end of handle_memory_fault_emulation_trap() on x86oids is identical to the tail end of hamdle_memory_fault() on non-x86oids. 2017-12-16T15:46:45Z nyef`: Err... s/hamdle_memory_fault/lisp_memory_fault_error/. 2017-12-16T16:03:51Z corci: Yippee, build fixed! 2017-12-16T16:03:52Z corci: Project sbcl-master » safepoints,ubuntu_trusty_64bit build #2742: FIXED in 32 min: http://ci.cor-lab.de/job/sbcl-master/featureset=safepoints,label=ubuntu_trusty_64bit/2742/ 2017-12-16T16:15:29Z dougk_ quit (Ping timeout: 248 seconds) 2017-12-16T16:16:58Z dougk_ joined #sbcl 2017-12-16T16:19:38Z nyef`: ... and I just found a bug in the memory fault handling. 2017-12-16T17:09:22Z stassats joined #sbcl 2017-12-16T17:10:07Z stassats: and how can we make things better on darwin? 2017-12-16T17:10:14Z stassats: darwin handles memory faults in another thread 2017-12-16T17:10:37Z stassats: i've already made it better by handling wp faults in that thread without ever running anything on the faulting thread 2017-12-16T17:12:51Z nyef`: Nobody uses darwin, it's even less of an important platform than windows. d-: 2017-12-16T17:13:03Z stassats: i do 2017-12-16T17:13:09Z nyef`: Next thing I know, you'll be complaining about stuff on linux being broken. 2017-12-16T17:13:34Z stassats: besides linux itself? 2017-12-16T17:16:06Z stassats: but i need to combat IR corruption first, or ignore it 2017-12-16T17:16:46Z nyef`: Actually, bouncing darwin memory faults to the right thread should be fairly parallel to what I'm doing to bounce x86oid memory faults to the right stack. 2017-12-16T17:17:31Z stassats: it's using signal emulation right now, it can do something better 2017-12-16T17:18:00Z stassats: but i haven't solved stack overflow in the handler itself 2017-12-16T17:18:28Z stassats: i guess i can just check on each SP extension 2017-12-16T17:19:13Z stassats: don't like the idea of an altstack, just put that space on the main stack 2017-12-16T17:25:16Z stassats: nyef`: nobody has reported it because nobody uses non-x86oids 2017-12-16T17:25:41Z nyef`: Exactly, hence the Low priority. 2017-12-16T17:25:48Z nyef`: Err... "importance". 2017-12-16T17:26:15Z stassats: i think the arm64 port has more uses now than any other risc port combined 2017-12-16T17:26:20Z nyef`: Heh. 2017-12-16T17:26:23Z stassats: i even get bugreports for it 2017-12-16T17:26:26Z nyef`: Ooh. 2017-12-16T17:31:20Z stassats: transform-call tries to link the new ir before (block-next (node-block call)) 2017-12-16T17:31:23Z stassats: no explanation why 2017-12-16T17:31:51Z stassats: and then that block gets deleted from the dfo 2017-12-16T17:32:32Z stassats: the commit says 2017-12-16T17:32:35Z stassats: * New blocks are inserted into the end of component in the direct order; 2017-12-16T17:32:36Z stassats: * TRANSFORM-CALL inserts new lambda immediately after the call; 2017-12-16T17:34:00Z nyef`: How old the commit, and by who? 2017-12-16T17:34:19Z stassats: Author: Alexey Dejneka 2017-12-16T17:34:19Z stassats: Date: Wed Mar 5 14:13:05 2003 +0000 2017-12-16T17:34:30Z nyef`: Wow, okay. 2017-12-16T17:34:35Z stassats: there's no test or a single commit 2017-12-16T17:34:39Z stassats: comment 2017-12-16T17:36:38Z shka joined #sbcl 2017-12-16T17:36:47Z stassats: and removing with-component-last-block from transform-call hides my crash 2017-12-16T17:37:13Z stassats: does it help with find-dfo linking them in that order? 2017-12-16T17:37:35Z stassats: logically it makes sense to put it there, but it breaks things 2017-12-16T17:42:32Z stassats: i think the component-last-block gets unlinked while it's not at component-last-block, being pushed aside by with-component-last-block 2017-12-16T17:43:17Z stassats: why doesn't it ever get unlinked if it's the last block then? remove-from-dfo doesn't bother with component-last-block 2017-12-16T17:43:42Z stassats: component-last-block starts off as component-tail, nobody would delete component-tail 2017-12-16T17:45:08Z stassats: i guess i can check that the old last-block isn't deleted after "popping" in with-component-last-block 2017-12-16T17:50:56Z stassats: i think i have a non horrible fix 2017-12-16T17:51:21Z stassats: not reoptimizing stuff while it's under with-component-last-block 2017-12-16T17:53:07Z stassats: that way component-last-block is always tail whenever thing are deleted 2017-12-16T17:56:54Z stassats: i may have been the one putting locall-analyze-component under with-component-last-block 2017-12-16T17:59:15Z stassats: no, it's been that way for 15 years 2017-12-16T18:01:48Z scymtym quit (Ping timeout: 265 seconds) 2017-12-16T18:07:09Z stassats: why do you need all these programming challenges while you can have "pfdietz challenge for fixing the IR1 operations" 2017-12-16T18:08:11Z stassats: i had "a" fix for the bug within minutes, "the" fix took several hours over two days 2017-12-16T18:11:05Z corci: Project sbcl-master » without-unicode,ubuntu_trusty_32bit build #2743: FAILURE in 21 min: http://ci.cor-lab.de/job/sbcl-master/featureset=without-unicode,label=ubuntu_trusty_32bit/2743/ 2017-12-16T18:11:31Z corci: Project sbcl-master » fancy,ubuntu_trusty_32bit build #2743: FAILURE in 22 min: http://ci.cor-lab.de/job/sbcl-master/featureset=fancy,label=ubuntu_trusty_32bit/2743/ 2017-12-16T18:11:39Z stassats: that's documentation 2017-12-16T18:12:20Z stassats: uh oh, expect every build to fail 2017-12-16T18:12:43Z nyef`: windows included? 2017-12-16T18:12:54Z stassats: excluded, it uses a different jb 2017-12-16T18:12:55Z stassats: job 2017-12-16T18:13:03Z nyef`: That's what I thought. 2017-12-16T18:13:15Z nyef`: Guess I'll hold off on pushing my memory fault fix for the moment. 2017-12-16T18:13:35Z stassats: but there are 19 combinations 2017-12-16T18:13:39Z stassats: in this job 2017-12-16T18:14:31Z nyef`: That said, I'm currently thinking to push it without a non-x86oid test, just to get it out of the way, since I'm unlikely to have a non-x86oid to test with until after code freeze starts. 2017-12-16T18:14:46Z stassats: cleared my bug backlog 2017-12-16T18:14:53Z stassats: now there are some legitimate failures from the CI 2017-12-16T18:15:48Z stassats: (:INTERRUPT-THREAD :INTERRUPT-CONSING-CHILD :AGAIN) hangs on darwin 2017-12-16T18:15:54Z stassats: sometimes, that is 2017-12-16T18:16:04Z scymtym joined #sbcl 2017-12-16T18:16:24Z stassats: and i'm over 100 commits this month 2017-12-16T18:17:00Z stassats: most of which were about tests 2017-12-16T18:19:41Z nyef`: What's the magic for checking commit counts again? 2017-12-16T18:20:10Z corci: Project sbcl-master » fasteval,ubuntu_trusty_32bit build #2743: FAILURE in 31 min: http://ci.cor-lab.de/job/sbcl-master/featureset=fasteval,label=ubuntu_trusty_32bit/2743/ 2017-12-16T18:20:30Z corci: Project sbcl-master » fancy,ubuntu_trusty_64bit build #2743: FAILURE in 31 min: http://ci.cor-lab.de/job/sbcl-master/featureset=fancy,label=ubuntu_trusty_64bit/2743/ 2017-12-16T18:20:42Z stassats: nyef`: git shortlog -sn sbcl-1.4.2..HEAD 2017-12-16T18:20:55Z stassats: git shortlog -sn 2017-12-16T18:21:08Z nyef`: Thank you. 2017-12-16T18:21:11Z stassats: i have 50 commits to go to clear 2000 2017-12-16T18:21:43Z scymtym: great, old texinfo wants things done differently 2017-12-16T18:22:01Z corci: Project sbcl-master » safepoints,ubuntu_trusty_64bit build #2743: FAILURE in 32 min: http://ci.cor-lab.de/job/sbcl-master/featureset=safepoints,label=ubuntu_trusty_64bit/2743/ 2017-12-16T18:22:07Z scymtym: stassats: brace for impact 2017-12-16T18:22:10Z nyef`: I've got 171 to go to clear 1000. 2017-12-16T18:22:16Z stassats: scymtym: yeah, we've already noticed 2017-12-16T18:23:30Z scymtym: i see, missed a few minutes 2017-12-16T18:27:42Z scymtym: in cases like this, anyone can go to https://ci.cor-lab.de/ and cancel the queued or running jobs (in the left sidebar) 2017-12-16T18:29:29Z stassats: the new stuff will start building 2017-12-16T18:31:12Z scymtym: yes, the fix should be pushed 2017-12-16T18:31:37Z scymtym: (which i hopefully did for the case at hand) 2017-12-16T18:37:10Z stassats: reproduced (:INTERRUPT-THREAD :INTERRUPT-CONSING-CHILD :AGAIN) locally 2017-12-16T18:39:01Z stassats: doesn't answer to sigkill, so something's with signal masks 2017-12-16T18:44:09Z stassats: "Interrupt thread failed: thread # has exited." 2017-12-16T18:44:12Z stassats: huh 2017-12-16T18:45:13Z stassats: that's not my failure... or is it? 2017-12-16T18:52:39Z corci: Yippee, build fixed! 2017-12-16T18:52:40Z corci: Project sbcl-master » without-unicode,ubuntu_trusty_32bit build #2745: FIXED in 22 min: http://ci.cor-lab.de/job/sbcl-master/featureset=without-unicode,label=ubuntu_trusty_32bit/2745/ 2017-12-16T18:52:56Z dougk_ quit (Ping timeout: 260 seconds) 2017-12-16T18:53:46Z corci: Yippee, build fixed! 2017-12-16T18:53:47Z corci: Project sbcl-master » fancy,ubuntu_trusty_32bit build #2745: FIXED in 23 min: http://ci.cor-lab.de/job/sbcl-master/featureset=fancy,label=ubuntu_trusty_32bit/2745/ 2017-12-16T18:58:46Z stassats: but can't reproduce again 2017-12-16T18:59:47Z stassats: i think i can add a function that waits until all interrupts are processed for more robustness 2017-12-16T19:00:48Z dougk_ joined #sbcl 2017-12-16T19:02:20Z corci: Yippee, build fixed! 2017-12-16T19:02:20Z corci: Project sbcl-master » safepoints,ubuntu_trusty_64bit build #2745: FIXED in 31 min: http://ci.cor-lab.de/job/sbcl-master/featureset=safepoints,label=ubuntu_trusty_64bit/2745/ 2017-12-16T19:04:40Z corci: Yippee, build fixed! 2017-12-16T19:04:40Z corci: Project sbcl-master » fancy,ubuntu_trusty_64bit build #2745: FIXED in 34 min: http://ci.cor-lab.de/job/sbcl-master/featureset=fancy,label=ubuntu_trusty_64bit/2745/ 2017-12-16T19:15:23Z nyef`: stassats: All interrupts, or all asynchronous interrupts? 2017-12-16T19:15:43Z stassats: just waiting for sb-thread::thread-interruptions to be null 2017-12-16T19:16:12Z nyef`: Ah, okay. 2017-12-16T19:16:19Z stassats: before calling terminate-thread or exiting from the test 2017-12-16T19:16:54Z nyef`: Right, right. I was operating on the wrong context to understand what you were trying to do. (-: 2017-12-16T19:18:03Z fiddlerwoaroof: Is there some way to disable the debugger from code? 2017-12-16T19:18:13Z stassats: there is 2017-12-16T19:18:14Z fiddlerwoaroof: Do I just bind *debugger-hook* to nil? 2017-12-16T19:18:20Z stassats: sb-ext:disable-debugger 2017-12-16T19:18:26Z fiddlerwoaroof: thanks 2017-12-16T19:18:43Z stassats: you want to disable ldb as well? 2017-12-16T19:19:00Z fiddlerwoaroof: Hmm, probably 2017-12-16T19:19:15Z fiddlerwoaroof: I just want the program to crash if it hits an unhandled signal 2017-12-16T19:19:22Z stassats: (sb-alien:alien-funcall (sb-alien:extern-alien "disable_lossage_handler" (function sb-alien:void))) 2017-12-16T19:19:26Z fiddlerwoaroof: thanks 2017-12-16T19:19:29Z stassats: same as specifying --lose-on-corruption 2017-12-16T19:20:48Z fiddlerwoaroof: thanks 2017-12-16T19:21:08Z stassats: and sb-ext:disable-debugger as --disable-debugger 2017-12-16T19:21:45Z fiddlerwoaroof: Yeah, I was using a command line tool to build a binary and I'm trying to make a little script to duplicate my command line 2017-12-16T19:32:14Z milanj quit (Quit: This computer has gone to sleep) 2017-12-16T19:35:12Z stassats: great, locking up in Running (:FUNCALLABLE-INSTANCES) 2017-12-16T19:35:15Z stassats: and i haven't touched it 2017-12-16T19:37:16Z DeadTrickster joined #sbcl 2017-12-16T19:42:18Z nyef`: Do we know what the freeze/release schedule is likely to be this month? 2017-12-16T19:42:37Z stassats: usually it's early January 2017-12-16T19:42:44Z stassats: what's with all the festivities 2017-12-16T19:45:11Z nyef`: Hmm... Fair enough, I guess. 2017-12-16T19:47:16Z josemanuel quit (Quit: leaving) 2017-12-16T19:49:22Z dougk_: stassats: funcallable-instances test has been locking up since forever ago, not new. 2017-12-16T19:50:03Z stassats: with-timeout and interrupts are not reliable not just on windows 2017-12-16T19:52:19Z Jesin joined #sbcl 2017-12-16T19:54:41Z nyef`: Revised lp#309068 fix, for review and possible testing: http://repo.or.cz/sbcl/nyef.git/commitdiff/07f8820703faf5feafb504e79ae851475c35b8e2 2017-12-16T20:00:41Z nyef`: I'm currently thinking to commit that this evening, with a NEWS update, but without non-x86oid testing (unless someone wants to do the build-and-test cycle for me, plus an interactive test?) 2017-12-16T20:01:57Z nyef`: Also, there's a safepoint lossage here, not a new one, and I'd prefer to be the one to fix it. 2017-12-16T20:02:27Z nyef`: Hrm. Actually, no, there isn't a safepoint lossage here. My mistake. 2017-12-16T20:20:35Z dougk_ quit (Ping timeout: 240 seconds) 2017-12-16T20:31:50Z dougk_ joined #sbcl 2017-12-16T20:38:50Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-16T20:40:00Z DeadTrickster joined #sbcl 2017-12-16T20:40:00Z attila_lendvai joined #sbcl 2017-12-16T20:50:34Z stassats: trying to test with-timeout, so far i can make it ignore C-c 2017-12-16T20:51:26Z stassats: or C-c handling just times out 2017-12-16T20:56:59Z dougk_ quit (Ping timeout: 256 seconds) 2017-12-16T21:16:06Z dougk_ joined #sbcl 2017-12-16T21:18:50Z nyef`: I can get rid of 6-7 (of 9) uses of WITHOUT-GCING in code/debug-int.lisp. 2017-12-16T21:22:53Z nyef`: 7. Definitely 7. 2017-12-16T21:30:53Z stassats: should i rewrite funcallable-instances to not use with-timeout or fix with-timeout 2017-12-16T21:44:49Z nyef`: Okay, at least 7, possibly 8. 2017-12-16T21:53:55Z nyef` is piling up things to work on once he has access to a non-x86oid machine again. 2017-12-16T22:05:28Z shka quit (Ping timeout: 240 seconds) 2017-12-16T22:11:07Z corci: Yippee, build fixed! 2017-12-16T22:11:07Z corci: Project sbcl-master » default,ubuntu_trusty_32bit build #2747: FIXED in 44 min: http://ci.cor-lab.de/job/sbcl-master/featureset=default,label=ubuntu_trusty_32bit/2747/ 2017-12-16T22:27:34Z stassats: mach_exception_handler doesn't block any signals, could setitimer deliver the signal to it? 2017-12-16T22:33:53Z dougk_ quit (Ping timeout: 256 seconds) 2017-12-16T22:53:14Z dougk_ joined #sbcl 2017-12-16T22:53:38Z stassats: it seems to ignoring all signals already 2017-12-16T22:54:34Z stassats: i guess it's inheriting the signal mask from startup 2017-12-16T23:01:33Z dougk_ quit (Read error: Connection reset by peer) 2017-12-16T23:01:40Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-16T23:01:48Z dougk_ joined #sbcl 2017-12-16T23:02:06Z DeadTrickster joined #sbcl 2017-12-16T23:30:57Z stassats quit (Ping timeout: 240 seconds) 2017-12-16T23:36:05Z dougk__ joined #sbcl 2017-12-16T23:39:27Z dougk_ quit (Ping timeout: 240 seconds) 2017-12-16T23:42:23Z Jesin quit (Ping timeout: 248 seconds) 2017-12-16T23:52:47Z dougk__ quit (Read error: Connection reset by peer) 2017-12-16T23:53:01Z dougk_ joined #sbcl 2017-12-17T00:29:18Z nyef`` joined #sbcl 2017-12-17T00:30:57Z nyef` quit (Ping timeout: 248 seconds) 2017-12-17T00:38:38Z Jesin joined #sbcl 2017-12-17T01:11:25Z jsjolen joined #sbcl 2017-12-17T01:19:45Z jsjolen: Hi, I just found a bug in SBCL. Here's a minimal example: http://lpaste.net/360854 2017-12-17T01:21:24Z jsjolen: Should I submit it to the bugs.launchpad.net/sbcl page? 2017-12-17T01:22:31Z stassats joined #sbcl 2017-12-17T01:23:38Z jsjolen: stassats: http://lpaste.net/360854 I just did this, should I submit it to the bugs page? 2017-12-17T01:25:31Z nyef``: ... How is this a bug in SBCL? 2017-12-17T01:25:51Z scymtym: jsjolen: restarts have dynamic extent. you are not allowed to hold on to them outside the dynamic scope of the RESTART-{BIND,CASE} that established them 2017-12-17T01:26:49Z nyef``: Oh, wait, that's a MEMORY-FAULT-ERROR. Clearly, this is lp#309068 again! d-: 2017-12-17T01:27:02Z jsjolen: scymtym:I know that. nyef``: ECL provides *way* better behaviour 2017-12-17T01:27:19Z stassats: you mean way slower behavior? 2017-12-17T01:28:13Z jsjolen: stassats:Sure, why not? 2017-12-17T01:28:38Z scymtym: nyef``: or https://bugs.launchpad.net/sbcl/+bug/1737169 2017-12-17T01:29:48Z jsjolen: So I guess unsolvable and would be a duplicate, thanks! 2017-12-17T01:29:54Z nyef``: Mmm. "Creating random pointers into the stack and then arranging for their contents to be scribbled on causes errors. This is clearly a bug!" 2017-12-17T01:31:43Z jsjolen quit (Remote host closed the connection) 2017-12-17T01:34:21Z nyef``: So, fun and games: The debugger's SOURCE command is incredibly fragile, not to mention brain-damaged. 2017-12-17T01:35:51Z nyef``: And I don't have any real angle for fixing it. 2017-12-17T01:35:59Z jack_rabbit quit (Ping timeout: 248 seconds) 2017-12-17T01:38:03Z milanj joined #sbcl 2017-12-17T01:39:43Z stassats: slime does its own thing 2017-12-17T01:39:50Z stassats: including handling of #! 2017-12-17T01:42:27Z dougk_ quit (Ping timeout: 240 seconds) 2017-12-17T01:44:58Z nyef``: Are there any non-slime debugger implementations that we care about with respect to SBCL's internals? 2017-12-17T01:45:32Z dougk_ joined #sbcl 2017-12-17T01:45:50Z nyef``: Because this needs to die, and I'd prefer for there to not be a lot of screaming when it does so. 2017-12-17T01:46:57Z stassats: there are various forks 2017-12-17T01:47:55Z nyef``: Do we care about them, or may we expect that patching slime itself is sufficient and they can merge any required fixes themselves? 2017-12-17T01:48:25Z nyef``: ... Not that I expect slime itself to be particularly affected by any change here, given that it does its own thing, but... 2017-12-17T01:48:25Z stassats: i've never even considered to care about them 2017-12-17T01:48:43Z nyef``: Okay, so slime at worst, and probably nothing else worth bothering with? 2017-12-17T01:49:10Z jack_rabbit joined #sbcl 2017-12-17T01:49:32Z nyef``: Not that I have any real sort of angle on this at all, yet, even without a compatibility requirement. /-: 2017-12-17T02:01:53Z stassats: i think stop-the-world can be done without employing signals on darwin 2017-12-17T02:03:37Z stassats: not sure what that buys, though 2017-12-17T02:05:08Z dougk_ quit (Read error: Connection reset by peer) 2017-12-17T02:05:48Z dougk_ joined #sbcl 2017-12-17T02:09:50Z stassats: or any interrupt-thread 2017-12-17T02:10:06Z stassats: using mach's thread_suspend/thread_resume 2017-12-17T02:14:35Z smurfrobot quit (Remote host closed the connection) 2017-12-17T02:17:50Z stassats: which is similar to what windows has 2017-12-17T02:24:39Z smurfrobot joined #sbcl 2017-12-17T02:29:20Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-17T02:44:58Z smurfrobot joined #sbcl 2017-12-17T02:50:09Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-17T03:05:23Z smurfrobot joined #sbcl 2017-12-17T03:09:48Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-17T03:13:37Z milanj quit (Quit: This computer has gone to sleep) 2017-12-17T03:33:16Z dougk_ quit (Ping timeout: 260 seconds) 2017-12-17T03:38:05Z dougk_ joined #sbcl 2017-12-17T03:55:48Z smurfrobot joined #sbcl 2017-12-17T04:00:41Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-17T04:05:56Z smurfrobot joined #sbcl 2017-12-17T04:06:56Z stassats quit (Ping timeout: 265 seconds) 2017-12-17T04:10:33Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-17T04:17:41Z smurfrobot joined #sbcl 2017-12-17T04:17:43Z smurfrobot quit (Remote host closed the connection) 2017-12-17T04:37:47Z corci: Project sbcl-master-windows » Windows_7_32bit build #1615: FAILURE in 7 min 39 sec: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_32bit/1615/ 2017-12-17T04:38:35Z corci: Project sbcl-master-windows » Windows_7_64bit build #1615: FAILURE in 8 min 27 sec: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_64bit/1615/ 2017-12-17T04:53:41Z nyef``: That build failure is my fault, and should now be fixed. 2017-12-17T04:54:11Z smurfrobot joined #sbcl 2017-12-17T04:54:32Z nyef``: But I see a pile of warnings for various things in the runtime there, and that's not particularly good. 2017-12-17T04:58:05Z dougk_ quit (Ping timeout: 256 seconds) 2017-12-17T04:58:39Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-17T05:02:15Z smurfrobot joined #sbcl 2017-12-17T05:06:50Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-17T05:24:07Z corci: Yippee, build fixed! 2017-12-17T05:24:07Z corci: Project sbcl-master-windows » Windows_7_32bit build #1616: FIXED in 28 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_32bit/1616/ 2017-12-17T05:25:05Z corci: Yippee, build fixed! 2017-12-17T05:25:05Z corci: Project sbcl-master-windows » Windows_7_64bit build #1616: FIXED in 29 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_64bit/1616/ 2017-12-17T05:27:50Z milanj joined #sbcl 2017-12-17T05:43:12Z Kevslinger quit (Quit: Connection closed for inactivity) 2017-12-17T05:49:43Z karlosz joined #sbcl 2017-12-17T05:53:42Z karlosz quit (Client Quit) 2017-12-17T05:54:27Z karlosz joined #sbcl 2017-12-17T05:58:07Z smurfrobot joined #sbcl 2017-12-17T06:02:56Z smurfrobot quit (Ping timeout: 265 seconds) 2017-12-17T06:03:09Z milanj quit (Quit: This computer has gone to sleep) 2017-12-17T06:08:14Z smurfrobot joined #sbcl 2017-12-17T06:09:58Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-12-17T06:13:05Z smurfrobot quit (Ping timeout: 265 seconds) 2017-12-17T06:21:27Z sz961 joined #sbcl 2017-12-17T06:21:28Z sz961 quit (Remote host closed the connection) 2017-12-17T06:26:49Z smurfrobot joined #sbcl 2017-12-17T06:31:42Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-17T06:34:53Z smartg51 joined #sbcl 2017-12-17T06:34:54Z smartg51 quit (Remote host closed the connection) 2017-12-17T06:35:23Z Bike quit (Quit: Lost terminal) 2017-12-17T06:56:00Z karlosz quit (Quit: karlosz) 2017-12-17T07:01:51Z milanj joined #sbcl 2017-12-17T07:24:12Z dougk_ joined #sbcl 2017-12-17T07:29:28Z dougk_ quit (Ping timeout: 240 seconds) 2017-12-17T07:29:40Z milanj quit (Quit: This computer has gone to sleep) 2017-12-17T08:23:58Z shka joined #sbcl 2017-12-17T08:28:25Z smurfrobot joined #sbcl 2017-12-17T08:32:34Z oleo quit (Quit: Leaving) 2017-12-17T08:33:21Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-17T08:41:24Z corci: Project sbcl-master » safepoints,ubuntu_trusty_64bit build #2748: FAILURE in 6 hr 42 min: http://ci.cor-lab.de/job/sbcl-master/featureset=safepoints,label=ubuntu_trusty_64bit/2748/ 2017-12-17T08:42:47Z corci: Project sbcl-master » fasteval,MAC_OS_mavericks_64bit build #2748: FAILURE in 6 hr 43 min: http://ci.cor-lab.de/job/sbcl-master/featureset=fasteval,label=MAC_OS_mavericks_64bit/2748/ 2017-12-17T08:49:16Z oleo joined #sbcl 2017-12-17T09:21:37Z corci: Yippee, build fixed! 2017-12-17T09:21:38Z corci: Project sbcl-master » safepoints,ubuntu_trusty_64bit build #2749: FIXED in 33 min: http://ci.cor-lab.de/job/sbcl-master/featureset=safepoints,label=ubuntu_trusty_64bit/2749/ 2017-12-17T09:23:58Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-17T09:24:24Z DeadTrickster joined #sbcl 2017-12-17T09:31:35Z morg651 joined #sbcl 2017-12-17T09:31:36Z tomo65 joined #sbcl 2017-12-17T09:31:37Z morg651 quit (Remote host closed the connection) 2017-12-17T09:31:38Z tomo65 quit (Remote host closed the connection) 2017-12-17T09:32:10Z DeadTrickster left #sbcl 2017-12-17T09:44:24Z bridget226 joined #sbcl 2017-12-17T09:44:32Z bridget226 quit (Remote host closed the connection) 2017-12-17T09:47:34Z lucif380 joined #sbcl 2017-12-17T09:47:36Z lucif380 quit (Remote host closed the connection) 2017-12-17T09:56:23Z smurfrobot joined #sbcl 2017-12-17T10:00:49Z thom2 joined #sbcl 2017-12-17T10:00:50Z thom2 quit (Remote host closed the connection) 2017-12-17T10:00:57Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-17T10:02:48Z tomo420 joined #sbcl 2017-12-17T10:02:49Z tomo420 quit (Remote host closed the connection) 2017-12-17T10:03:33Z lin28 joined #sbcl 2017-12-17T10:03:36Z lin28 quit (Remote host closed the connection) 2017-12-17T10:04:38Z greg353 joined #sbcl 2017-12-17T10:04:40Z greg353 quit (Remote host closed the connection) 2017-12-17T10:15:19Z josemanuel joined #sbcl 2017-12-17T10:17:02Z smurfrobot joined #sbcl 2017-12-17T10:17:13Z milanj joined #sbcl 2017-12-17T10:22:05Z smurfrobot quit (Ping timeout: 268 seconds) 2017-12-17T10:33:34Z smurfrobot joined #sbcl 2017-12-17T12:45:35Z stassats joined #sbcl 2017-12-17T12:53:22Z stassats: ugh, the funcallable-instances test is too eager to hang, but not when i need it to 2017-12-17T13:00:19Z rpg joined #sbcl 2017-12-17T13:28:13Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-17T13:30:00Z attila_lendvai joined #sbcl 2017-12-17T13:30:03Z attila_lendvai quit (Changing host) 2017-12-17T13:30:04Z attila_lendvai joined #sbcl 2017-12-17T13:36:58Z Bike joined #sbcl 2017-12-17T13:39:12Z stassats: i'm thinking some sig-stop-for-gc and sigalrm interaction 2017-12-17T14:11:21Z dougk_ joined #sbcl 2017-12-17T14:15:02Z dougk_ quit (Read error: Connection reset by peer) 2017-12-17T14:15:19Z dougk_ joined #sbcl 2017-12-17T14:19:36Z dougk_ quit (Ping timeout: 260 seconds) 2017-12-17T14:39:54Z Intensity quit (Ping timeout: 246 seconds) 2017-12-17T14:45:58Z dougk_ joined #sbcl 2017-12-17T14:50:03Z milanj quit (Quit: This computer has gone to sleep) 2017-12-17T14:57:44Z dougk_ quit (Ping timeout: 272 seconds) 2017-12-17T15:08:12Z Intensity joined #sbcl 2017-12-17T15:49:32Z nyef``: So, did a bit of review, and it looks like I can put together a 24x7 build farm that covers MIPSle, PPC (single-core), ARM, x86/x86-64, and possibly Aarch64 in hardware. With emulation, I can probably add MIPSbe, SPARC, and Alpha to that. 2017-12-17T15:49:49Z nyef``: But there seems to be a lack of JREs available, so Jenkins isn't an option. 2017-12-17T15:50:50Z Kevslinger joined #sbcl 2017-12-17T15:52:14Z nyef``: I don't have a good angle for HPPA. I do have an angle for a CI system. 2017-12-17T15:53:16Z nyef``: And I'm thinking that any emulated target should probably be configured as a cross-build from the emulation host. 2017-12-17T15:53:48Z stassats: and i won't port my x86-64-darwin-os.c enhancements to x86-darwin-os.c 2017-12-17T16:11:47Z stassats: i can now lose() on stack exhaustion in the signal emulator, but issuing CONTROL_STACK_EXHAUSTED_ERROR is trickier 2017-12-17T16:13:30Z stassats: mainly because of the return-guard-page 2017-12-17T16:14:09Z stassats: since i'm checking SP extension, not writes, i end up writing into the return guarded page 2017-12-17T16:14:30Z nyef``: Are the guard page and return guard page adjacent, and if so what happens if a stack frame straddles the line? 2017-12-17T16:14:46Z stassats: that's what i'm describing 2017-12-17T16:15:45Z stassats: i think i can just start the signal allocation from the new page 2017-12-17T16:16:07Z nyef``: Sounds like you need to take the write trap, unprotect the page, emulate the write, re-protect the page, step forward over the trap, and resume? 2017-12-17T16:16:20Z nyef``: Might be able to be clever using a single-step trap. 2017-12-17T16:16:27Z stassats: please, no 2017-12-17T16:16:39Z nyef``: Heh. 2017-12-17T16:16:49Z nyef``: "It takes a tough man to make a tender chicken"? 2017-12-17T16:17:48Z stassats: and i need returning and unwinding to hit the return guard 2017-12-17T16:19:24Z dougk_ joined #sbcl 2017-12-17T16:19:40Z stassats: ok, it can't jump a whole page, so that'll happen eventually 2017-12-17T16:20:04Z nyef``: Unwinding can't jump a whole page? 2017-12-17T16:21:02Z stassats: that's not my concern anymore, if it can, the whole thing is broken and i'm not breaking it any further 2017-12-17T16:21:12Z nyef``: Heh. Fair enough. 2017-12-17T16:21:49Z stassats: i was saying that signal emulation can't straddle three pages 2017-12-17T16:22:59Z stassats: even if unwinding jumps across the guard page, any subsequent call into it will unprotect it 2017-12-17T16:23:18Z stassats: so it's not exactly reliably a "return" page 2017-12-17T16:23:41Z stassats: registering unwind blocks from c, anyone? 2017-12-17T16:23:45Z nyef``: ... but it DOES work as a reliable "low guard"? Fair enough, I guess? 2017-12-17T16:24:58Z stassats: yeah, you won't lose stack exhaustion 2017-12-17T16:25:14Z stassats: at least one will be active at any given time 2017-12-17T16:31:36Z stassats: goes further, but still succumbs to return page protection 2017-12-17T16:33:27Z dougk_ quit (Ping timeout: 240 seconds) 2017-12-17T16:34:53Z stassats: plan be, calculate the amount of stack space need to handle signals and start from the guard pages from the beginning 2017-12-17T16:35:05Z stassats: 4K should be enough 2017-12-17T16:35:28Z nyef``: 640K should be enough for anybody! (-: 2017-12-17T16:35:42Z stassats: rework stack exhaustion invocation to use less space, since it doesn't need the contexts 2017-12-17T16:37:56Z stassats: i already have 1272 bytes, down from 1700 2017-12-17T16:46:18Z stassats: down to 1160 for all errors, and somewhere around 136 for stack exhaustion would be possible 2017-12-17T16:49:34Z dougk_ joined #sbcl 2017-12-17T16:52:22Z milanj joined #sbcl 2017-12-17T17:00:50Z dougk_ quit (Read error: Connection reset by peer) 2017-12-17T17:01:05Z dougk_ joined #sbcl 2017-12-17T17:07:25Z stassats: something's fishy still going on 2017-12-17T17:13:21Z nyef`` sighs. 2017-12-17T17:13:35Z nyef``: Safepoints, interrupt-thread, and the debugger interact... poorly. 2017-12-17T17:14:18Z nyef``: ... unless they don't? But they almost-certainly do if thruptions are also in the mix. 2017-12-17T17:14:51Z dougk_ quit (Read error: Connection reset by peer) 2017-12-17T17:15:08Z dougk_ joined #sbcl 2017-12-17T17:23:17Z stassats: ok, things mostly work, now removing the usage of arrange_return_to_lisp_function 2017-12-17T17:23:34Z stassats: since i'm already arranging things to call a c function 2017-12-17T17:24:03Z nyef``: Now I'm wondering if we can arrange to completely excise the arrange_return_to_*() functions? 2017-12-17T17:24:26Z stassats: darwin does its own rendition 2017-12-17T17:24:42Z nyef``: But it turns out that most of the uses are about guard pages in the first place. 2017-12-17T17:25:22Z stassats: but darwin modifies a different thread 2017-12-17T17:25:41Z stassats: i'm planning on removing signals from darwin altogether, some day 2017-12-17T17:26:04Z stassats: on mach, to be exact 2017-12-17T17:37:37Z dougk_ quit (Ping timeout: 248 seconds) 2017-12-17T17:44:28Z dougk_ joined #sbcl 2017-12-17T17:50:41Z dougk_ quit (Read error: Connection reset by peer) 2017-12-17T17:50:59Z dougk_ joined #sbcl 2017-12-17T17:56:17Z dougk_ quit (Ping timeout: 248 seconds) 2017-12-17T18:02:45Z smurfrobot quit (Remote host closed the connection) 2017-12-17T18:04:29Z smurfrobot joined #sbcl 2017-12-17T18:05:12Z attila_lendvai quit (Ping timeout: 272 seconds) 2017-12-17T18:16:57Z smurfrobot quit (Remote host closed the connection) 2017-12-17T18:20:34Z attila_lendvai joined #sbcl 2017-12-17T18:20:34Z attila_lendvai quit (Changing host) 2017-12-17T18:20:34Z attila_lendvai joined #sbcl 2017-12-17T18:22:07Z dougk_ joined #sbcl 2017-12-17T18:26:01Z DeadTrickster joined #sbcl 2017-12-17T18:37:07Z stassats: and i get a hang in ::: Running (:FUNCALLABLE-INSTANCES), how convenient 2017-12-17T18:37:26Z stassats: if only i could debug it, C-c kills the test runner 2017-12-17T18:39:40Z stassats: ugh, why can't i reproduce it normally 2017-12-17T18:41:51Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-17T18:43:27Z attila_lendvai joined #sbcl 2017-12-17T18:51:35Z stassats: maybe transitioning from signals for timers on mach will solve funcallable-instances hangs 2017-12-17T18:51:54Z stassats: and i guess timers are an easier case than stop-the-world, could be done first 2017-12-17T18:52:49Z nyef``: Alternately, maybe there's a problem in the PCL guts that could do with fixing? 2017-12-17T18:53:06Z nyef``: ("Maybe". Hah!) 2017-12-17T18:58:12Z stassats: it's not really about pcl there 2017-12-17T18:58:18Z stassats: the hang 2017-12-17T18:58:22Z stassats: but about with-timeout 2017-12-17T18:58:38Z stassats: and it fails on darwin, where signals are not reliable 2017-12-17T18:59:16Z stassats: mach exceptions are now more robust, so a thread that issues interruptions could work 2017-12-17T18:59:27Z milanj quit (Quit: This computer has gone to sleep) 2017-12-17T18:59:28Z stassats: something like wtimer 2017-12-17T18:59:33Z nyef``: Require thruptions on mach? 2017-12-17T18:59:50Z stassats: but the book-keeping thread will run in c 2017-12-17T19:00:03Z stassats: nyef``: no, thanks 2017-12-17T19:00:26Z stassats: later the same thread can manage stop-the-world 2017-12-17T19:03:27Z stassats: and the same scheme can be used to implement win32 threads without safepoints 2017-12-17T19:10:35Z irsol quit (Ping timeout: 240 seconds) 2017-12-17T19:18:12Z pfdietz: Four bad user code compiler bugs created. The problem with improper lists may be ubiquitous. Fortunately, I can get the test case generator to not produce improper lists. 2017-12-17T19:19:50Z nyef``: pfdietz: Congratulations on finding that stack analysis bug earlier, btw. 2017-12-17T19:20:50Z pfdietz: Thank you, but I have to give proper credit to RANDOM. 2017-12-17T19:24:17Z pfdietz: At this point, with ERRORs considered bugs, I can generate failures very rapidly, much more easily than the "good code" random tester did. There's probably some low hanging fruit to reduce that, but the work required to get to stability may be substantial. 2017-12-17T19:25:52Z stassats: also worth checking, erroneous forms that do not produce errors 2017-12-17T19:26:56Z pfdietz: Check the warning/error return values from COMPILE? 2017-12-17T19:27:30Z stassats: yes 2017-12-17T19:27:48Z pfdietz: clhs compile 2017-12-17T19:27:48Z specbot: http://www.lispworks.com/reference/HyperSpec/Body/f_cmp.htm 2017-12-17T19:28:07Z pfdietz: Just the third value would do, looks like. 2017-12-17T19:35:27Z dougk_ quit (Read error: Connection reset by peer) 2017-12-17T19:35:43Z dougk_ joined #sbcl 2017-12-17T19:45:54Z irsol joined #sbcl 2017-12-17T19:52:52Z leah2 quit (Ping timeout: 272 seconds) 2017-12-17T20:07:54Z leah2 joined #sbcl 2017-12-17T20:13:14Z corci: Yippee, build fixed! 2017-12-17T20:13:15Z corci: Project sbcl-master » safepoints,ubuntu_trusty_32bit build #2752: FIXED in 1 hr 4 min: http://ci.cor-lab.de/job/sbcl-master/featureset=safepoints,label=ubuntu_trusty_32bit/2752/ 2017-12-17T20:17:08Z dougk_ quit (Ping timeout: 240 seconds) 2017-12-17T20:17:33Z smurfrobot joined #sbcl 2017-12-17T20:21:57Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-17T20:36:04Z smurfrobot joined #sbcl 2017-12-17T20:46:30Z corci: Project sbcl-master-windows » Windows_7_32bit build #1619: FAILURE in 1 min 20 sec: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_32bit/1619/ 2017-12-17T20:46:36Z corci: Project sbcl-master-windows » Windows_7_64bit build #1619: FAILURE in 1 min 25 sec: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_64bit/1619/ 2017-12-17T20:46:48Z corci: Project sbcl-master » without-unicode,MAC_OS_mavericks_64bit build #2753: FAILURE in 2 min 38 sec: http://ci.cor-lab.de/job/sbcl-master/featureset=without-unicode,label=MAC_OS_mavericks_64bit/2753/ 2017-12-17T20:56:09Z eudoxia joined #sbcl 2017-12-17T21:22:32Z dougk_ joined #sbcl 2017-12-17T21:27:33Z dougk_ quit (Read error: Connection reset by peer) 2017-12-17T21:27:52Z dougk_ joined #sbcl 2017-12-17T21:37:27Z eudoxia quit (Remote host closed the connection) 2017-12-17T21:37:52Z eudoxia joined #sbcl 2017-12-17T21:38:00Z dougk_ quit (Ping timeout: 272 seconds) 2017-12-17T21:38:07Z Jesin quit (Quit: Leaving) 2017-12-17T21:41:23Z Jesin joined #sbcl 2017-12-17T21:41:46Z shka quit (Ping timeout: 260 seconds) 2017-12-17T21:47:12Z stassats: changing how interrupt-thread works would be even simpler than timers 2017-12-17T21:53:56Z corci: Yippee, build fixed! 2017-12-17T21:53:56Z corci: Project sbcl-master-windows » Windows_7_32bit build #1620: FIXED in 28 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_32bit/1620/ 2017-12-17T21:55:09Z corci: Yippee, build fixed! 2017-12-17T21:55:10Z corci: Project sbcl-master-windows » Windows_7_64bit build #1620: FIXED in 30 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_64bit/1620/ 2017-12-17T22:05:35Z dougk_ joined #sbcl 2017-12-17T22:18:39Z milanj joined #sbcl 2017-12-17T22:48:18Z eudoxia quit (Read error: Connection reset by peer) 2017-12-17T22:56:33Z GreaseMonkey quit (K-Lined) 2017-12-17T22:58:46Z greaser|q joined #sbcl 2017-12-17T23:27:19Z stassats: maybe i'm not getting funcallable-instances reproductions because i use a large dynamic space 2017-12-17T23:38:35Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-17T23:39:11Z DeadTrickster joined #sbcl 2017-12-17T23:56:31Z nimiux quit (Ping timeout: 256 seconds) 2017-12-18T00:26:36Z stassats: struggling with process groups and terminal control 2017-12-18T00:26:51Z josemanuel quit (Quit: leaving) 2017-12-18T00:26:54Z stassats: can't make only the child sbcl receive C-c 2017-12-18T00:27:59Z nyef``: kill(1) with SIGINT? 2017-12-18T00:28:36Z stassats: that won't give me a working C-c 2017-12-18T00:29:01Z nyef``: Ah, okay. It's the interaction that's important, not the SIGINT. Gotcha. 2017-12-18T00:29:57Z stassats: run-program already does some setsid 2017-12-18T00:32:40Z dougk_ quit (Ping timeout: 265 seconds) 2017-12-18T00:34:47Z stassats: if i do setsid, the child receives input, but the parent receives INT 2017-12-18T00:36:29Z nyef``: setpgid(2) ? 2017-12-18T00:36:44Z eschatologist quit (Ping timeout: 276 seconds) 2017-12-18T00:38:09Z dougk_ joined #sbcl 2017-12-18T00:38:35Z stassats: doing strace on bash... 2017-12-18T00:38:53Z stassats: nobody does this stuff or what, i can't figure out tails or heads from man pages or google 2017-12-18T00:41:18Z nyef``: It's possible that bash might be accepting the SIGINT and then using kill(2) to pass it forward. 2017-12-18T00:41:20Z stassats: ok, i'm getting the right process group, but after setsid the process loses its pty/pts/tty 2017-12-18T00:42:08Z stassats: nyef``: do i need the barf bag from the book now? 2017-12-18T00:42:34Z nyef``: I don't know, do you? 2017-12-18T00:43:00Z stassats: such a simple thing to want, and i've wasted an hour already 2017-12-18T00:50:38Z stassats: well, bash is not sending signals 2017-12-18T00:51:48Z dougk_ quit (Ping timeout: 272 seconds) 2017-12-18T00:52:29Z dougk_ joined #sbcl 2017-12-18T01:08:26Z greaser|q quit (K-Lined) 2017-12-18T01:09:38Z greaser|q joined #sbcl 2017-12-18T01:10:35Z stassats: ok, getting somewhere, if i do setpgid(pid, pid); tcsetpgrp(0, pid); in the parent after forking 2017-12-18T01:10:41Z stassats: the child does receive C-c 2017-12-18T01:11:08Z stassats: but the parent gets suspended, probably by SIGTSTP 2017-12-18T01:15:47Z stassats: signit doesn't work for ./run-test impure processes either 2017-12-18T01:16:58Z stassats: this is incredibly silly 2017-12-18T01:17:20Z stassats: and two hours i'll never get back 2017-12-18T01:20:37Z stassats: removed --disable-debugger and renamed threads.impure.lisp to threads2.pure.lisp, now i'll be able to debug it 2017-12-18T01:20:38Z stassats: sigh 2017-12-18T01:21:04Z eschatologist joined #sbcl 2017-12-18T01:22:47Z stassats: but i want C-c to work on vanilla tests 2017-12-18T01:25:04Z jack_rabbit quit (Quit: Leaving) 2017-12-18T01:27:22Z stassats: funcallable-instances fails only when i don't want it to fail 2017-12-18T01:30:46Z jack_rabbit joined #sbcl 2017-12-18T01:31:55Z stassats: ok, i got it, and i can't interrupt it 2017-12-18T01:32:01Z stassats: now that's already a good datapoint 2017-12-18T01:37:55Z stassats: bloody stupid lldb 2017-12-18T01:38:21Z dougk_ quit (Read error: Connection reset by peer) 2017-12-18T01:38:42Z dougk_ joined #sbcl 2017-12-18T01:40:48Z stassats: call doesn't work 2017-12-18T01:44:16Z stassats: should write a ptrace debugger then? 2017-12-18T01:46:11Z stassats: yet it works on other programs 2017-12-18T01:52:01Z stassats: i can surmise that the thread somehow ends up with the signals blocked 2017-12-18T02:31:53Z stassats: the other threads were running, yet none had signals enabled? 2017-12-18T02:34:47Z stassats: that can't happen, can it? 2017-12-18T02:38:37Z stassats: oh, the other threads would try to kill the main thread anyway 2017-12-18T02:39:16Z stassats: right, so only the main thread is masking its signals 2017-12-18T02:51:36Z stassats: well, what do you know 2017-12-18T02:52:22Z stassats: inserted check-deferrables-unblocked-or-lose before the test, and loses 2017-12-18T02:52:38Z stassats: so funcallable-instances is a red herring 2017-12-18T02:54:58Z stassats: inserting the check into with-test 2017-12-18T03:26:50Z corci: Project sbcl-master » fasteval,MAC_OS_mavericks_64bit build #2753: FAILURE in 6 hr 42 min: http://ci.cor-lab.de/job/sbcl-master/featureset=fasteval,label=MAC_OS_mavericks_64bit/2753/ 2017-12-18T03:27:18Z stassats: Running (:FUNCALLABLE-INSTANCES), ha 2017-12-18T03:51:46Z stassats: the signals are blocked after exiting ::: Success (:INTERRUPT-THREAD :INTERRUPT-CONSING-CHILD :AGAIN) 2017-12-18T04:18:46Z Bike quit (Quit: Lost terminal) 2017-12-18T04:18:50Z milanj quit (Quit: This computer has gone to sleep) 2017-12-18T04:18:57Z stassats quit (Ping timeout: 240 seconds) 2017-12-18T04:39:38Z milanj joined #sbcl 2017-12-18T05:15:16Z dougk_ quit (Ping timeout: 272 seconds) 2017-12-18T05:23:37Z smurfrobot quit (Remote host closed the connection) 2017-12-18T05:37:40Z shka joined #sbcl 2017-12-18T05:41:47Z BitPuffin|osx joined #sbcl 2017-12-18T06:09:54Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-12-18T06:40:09Z milanj quit (Quit: This computer has gone to sleep) 2017-12-18T06:55:51Z scymtym quit (Ping timeout: 256 seconds) 2017-12-18T07:25:12Z greaser|q quit (Changing host) 2017-12-18T07:25:12Z greaser|q joined #sbcl 2017-12-18T07:25:15Z greaser|q is now known as GreaseMonkey 2017-12-18T07:29:42Z Kevslinger quit (Quit: Connection closed for inactivity) 2017-12-18T07:41:52Z oleo quit (Quit: Leaving) 2017-12-18T08:11:01Z trittweiler joined #sbcl 2017-12-18T08:18:20Z scymtym joined #sbcl 2017-12-18T08:28:33Z shka quit (Ping timeout: 264 seconds) 2017-12-18T09:11:41Z corci quit 2017-12-18T09:13:18Z corci joined #sbcl 2017-12-18T09:22:37Z milanj joined #sbcl 2017-12-18T09:45:49Z corci: Yippee, build fixed! 2017-12-18T09:45:50Z corci: Project sbcl-master » safepoints,ubuntu_trusty_64bit build #2756: FIXED in 31 min: http://ci.cor-lab.de/job/sbcl-master/featureset=safepoints,label=ubuntu_trusty_64bit/2756/ 2017-12-18T09:46:33Z corci: Yippee, build fixed! 2017-12-18T09:46:34Z corci: Project sbcl-master » fancy,ubuntu_trusty_64bit build #2756: FIXED in 32 min: http://ci.cor-lab.de/job/sbcl-master/featureset=fancy,label=ubuntu_trusty_64bit/2756/ 2017-12-18T09:50:55Z scymtym quit (Ping timeout: 265 seconds) 2017-12-18T09:51:22Z corci: Yippee, build fixed! 2017-12-18T09:51:23Z corci: Project sbcl-master » fancy,ubuntu_trusty_32bit build #2756: FIXED in 37 min: http://ci.cor-lab.de/job/sbcl-master/featureset=fancy,label=ubuntu_trusty_32bit/2756/ 2017-12-18T10:00:57Z corci: Yippee, build fixed! 2017-12-18T10:00:57Z corci: Project sbcl-master » without-unicode,ubuntu_trusty_32bit build #2756: FIXED in 46 min: http://ci.cor-lab.de/job/sbcl-master/featureset=without-unicode,label=ubuntu_trusty_32bit/2756/ 2017-12-18T10:26:35Z stassats joined #sbcl 2017-12-18T10:27:07Z stassats: got (:INTERRUPT-THREAD :INTERRUPT-CONSING-CHILD) to hang itself 2017-12-18T10:27:14Z stassats: the child blocks the signals 2017-12-18T10:27:59Z stassats: so either GCing or GCing combined with interrupts do mess with signal masks 2017-12-18T10:32:33Z stassats: when a signal is deferred it gets masked 2017-12-18T10:32:52Z stassats: to be restored when the handler runs 2017-12-18T10:34:05Z jdz quit (Ping timeout: 276 seconds) 2017-12-18T10:37:23Z jdz joined #sbcl 2017-12-18T10:53:42Z scymtym joined #sbcl 2017-12-18T11:24:11Z stassats: if (data->pending_handler) {unbind(thread); unbind(thread);} what does that do? 2017-12-18T11:24:32Z stassats: ok, it does two binds beforehand 2017-12-18T11:28:31Z m00natic joined #sbcl 2017-12-18T11:41:07Z stassats quit (Ping timeout: 265 seconds) 2017-12-18T11:52:33Z stassats joined #sbcl 2017-12-18T11:57:57Z stassats quit (Ping timeout: 264 seconds) 2017-12-18T12:20:04Z dougk_ joined #sbcl 2017-12-18T12:22:07Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-18T12:23:13Z DeadTrickster joined #sbcl 2017-12-18T12:30:03Z adlai is now known as conspiracystuden 2017-12-18T12:30:13Z conspiracystuden is now known as cnsprcystudentbo 2017-12-18T12:30:17Z cnsprcystudentbo is now known as adlai 2017-12-18T13:00:20Z rpg joined #sbcl 2017-12-18T13:09:36Z scymtym: the namestring thing doesn't seem to be new at least 2017-12-18T13:13:55Z dougk_ quit (Ping timeout: 265 seconds) 2017-12-18T13:31:18Z Kevslinger joined #sbcl 2017-12-18T13:38:57Z scymtym: does https://techfak.de/~jmoringe/0001-Pathnames-with-directory-absolute-up-wild-wild-infer.patch look ok? 2017-12-18T13:48:57Z Jesin quit (Quit: Leaving) 2017-12-18T13:55:18Z smurfrobot joined #sbcl 2017-12-18T14:15:17Z Bike joined #sbcl 2017-12-18T14:18:48Z rumbler31 joined #sbcl 2017-12-18T14:20:00Z dougk_ joined #sbcl 2017-12-18T14:30:10Z smurfrobot quit (Remote host closed the connection) 2017-12-18T14:37:50Z dougk_ quit (Ping timeout: 255 seconds) 2017-12-18T14:41:50Z dougk_ joined #sbcl 2017-12-18T14:43:48Z sjl joined #sbcl 2017-12-18T14:46:19Z oleo joined #sbcl 2017-12-18T14:47:43Z stassats joined #sbcl 2017-12-18T14:54:10Z stassats` joined #sbcl 2017-12-18T14:55:34Z Jesin joined #sbcl 2017-12-18T14:57:03Z stassats left #sbcl 2017-12-18T14:58:41Z stassats`: the sigmask problem is tricky to isolate 2017-12-18T14:59:25Z stassats`: interrupting a consing thread doesn't trigger it, and it takes a lot of runs to trigger it in the test suite 2017-12-18T15:00:22Z stassats`: and i can't keep in my head the whole interaction of maybe_defer_handler, sig_stop_for_gc_handler and run_deferred_handler 2017-12-18T15:00:44Z stassats`: and interrupt_handle_pending 2017-12-18T15:03:36Z stassats`: maybe something's exiting from without-interrupts without checking for pending interrupts? 2017-12-18T15:07:40Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-18T15:09:25Z attila_lendvai joined #sbcl 2017-12-18T15:21:08Z whoman quit (Remote host closed the connection) 2017-12-18T15:23:59Z whoman joined #sbcl 2017-12-18T15:30:39Z hooman joined #sbcl 2017-12-18T15:30:43Z smurfrobot joined #sbcl 2017-12-18T15:31:21Z whoman quit (Read error: Connection reset by peer) 2017-12-18T15:35:27Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-18T15:42:37Z hooman quit (Remote host closed the connection) 2017-12-18T15:42:44Z hooman joined #sbcl 2017-12-18T15:45:24Z smurfrobot joined #sbcl 2017-12-18T15:46:20Z smurfrobot quit (Read error: Connection reset by peer) 2017-12-18T15:47:42Z smurfrobot joined #sbcl 2017-12-18T15:53:26Z nyef``: stassats`: So, I was looking at the single-step instrumentation on x86 and x86-64, and it occurred to me that we should be able to get a bit more speed when not stepping, at the cost of a bit more space overall. 2017-12-18T15:54:03Z stassats`: i haven't touched stepping outside of it breaking stuff 2017-12-18T15:54:17Z stassats`: you mean it won't check the is-stepping location? 2017-12-18T15:54:54Z nyef``: Oh, it will. But if we invert the branch sense and stick the trap *elsewhere* with a jump back we'll have the trap out-of-line. 2017-12-18T15:55:09Z nyef``: Eases up on the branch predictor, plus prefetch, plus... 2017-12-18T15:55:27Z stassats`: does it really, these days 2017-12-18T15:55:33Z stassats`: the cpus are smart 2017-12-18T15:56:40Z nyef``: ... I-cache usage for the non-stepping case, plus... 2017-12-18T15:58:02Z nyef``: Admittedly, we're already presuming a high enough DEBUG for the step instrumentation to be generated, so speed isn't a huge concern. 2017-12-18T16:18:02Z foom: instruction locality does actually matter these days 2017-12-18T16:19:53Z nyef``: That's what I thought. Also, doesn't the trap screw with the instruction prefetch/decode, even if there's a usually-taken branch in front of the trap? 2017-12-18T16:20:13Z nyef``: Possibly also screws with speculative execution, too. 2017-12-18T16:20:40Z Jesin quit (Quit: Leaving) 2017-12-18T16:20:48Z nyef``: Anyway, putting it down as a possible optimization. 2017-12-18T16:23:42Z foom: I'd doubt an untaken branch to a trap screws with prefetch on modern hardware. 2017-12-18T16:26:20Z Jesin joined #sbcl 2017-12-18T16:26:30Z smurfrobot quit (Remote host closed the connection) 2017-12-18T16:29:18Z nyef``: foom: Right, but a taken branch AROUND a trap? 2017-12-18T16:30:34Z stassats`: could do-pending-interrupt trap be missed? 2017-12-18T16:36:17Z stassats`: but i don't have a reliably test case to examine the state 2017-12-18T16:36:53Z dougk__ joined #sbcl 2017-12-18T16:39:20Z dougk_ quit (Ping timeout: 255 seconds) 2017-12-18T16:49:05Z foom: nyef``: I believe almost everything happens after branch prediction. You do still want contiguous code, since even the uop cache is based on physical memory layout now. 2017-12-18T16:51:48Z stassats`: we can have no trap encoding beside instructions, encode everything in the debug info 2017-12-18T16:52:16Z stassats`: would've been nice for a conditional trap instruction 2017-12-18T16:52:43Z stassats`: although we shouldn't even use faulting traps, just call functions 2017-12-18T16:52:53Z stassats`: more space overhead, but no signals 2017-12-18T16:52:54Z nyef``: Yes, conditional traps are nice. 2017-12-18T16:53:12Z nyef``: Sometimes having the signal context is nice, though. 2017-12-18T16:54:04Z stassats`: i'm not sure whether my current problems are caused by missed traps 2017-12-18T16:54:12Z stassats`: but that would fit into the failure mode 2017-12-18T16:54:50Z nyef``: Darwin-specific? 2017-12-18T16:55:27Z stassats`: reproduces more readily there, but i think i saw it elsewhere 2017-12-18T16:55:36Z stassats`: readily as in not really readily 2017-12-18T16:55:41Z nyef``: Hrm. 2017-12-18T16:57:06Z nyef``: I'm suddenly reminded of rtoy's response to something I had to fix in SBCL when getting PPC threads working: He was very appreciative (and back-ported my fix immediately) because it fixed a very, VERY rare fault on CMUCL SPARC that was basically impossible to reproduce reliably. 2017-12-18T16:57:42Z eudoxia joined #sbcl 2017-12-18T16:59:09Z rpg quit (Quit: Textual IRC Client: www.textualapp.com) 2017-12-18T16:59:34Z stassats`: i have the deferrables blocked, not tending to the pending interrupts would produce such a state 2017-12-18T17:00:29Z stassats`: maybe i should try hitting without-interrupts with an interrupt 2017-12-18T17:00:42Z stassats`: and checking that the signals are unblocked in the end 2017-12-18T17:06:06Z nyef``: Why does WITH-DEFERRABLE-SIGNALS-UNBLOCKED unblock deferrables before checking for pending interrupts? 2017-12-18T17:06:32Z stassats`: that's how it was in the original? 2017-12-18T17:06:58Z nyef``: Mmm. And we know how well-designed and reliable the originals of almost everything in SBCL were, don't we? 2017-12-18T17:07:19Z stassats`: at least i intended to copy the original behavior 2017-12-18T17:07:19Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-18T17:07:59Z stassats`: checked, it's that way in the original 2017-12-18T17:08:22Z nyef``: Okay, there's a gap between unblocking signals and checking *interrupt-pending*. What happens if we take an interrupt there? 2017-12-18T17:08:47Z stassats`: nyef``: without unlocking there won't be anything to tend to 2017-12-18T17:08:56Z nyef``: Hrm. 2017-12-18T17:10:12Z attila_lendvai joined #sbcl 2017-12-18T17:11:14Z stassats`: but interrupt-thread doesn't involve *unblock-deferrables-on-enabling-interrupts-p* 2017-12-18T17:12:09Z nyef``: Too damned many moving pieces. /-: 2017-12-18T17:12:38Z stassats`: and the :interrupt-consing-child test doesn't either 2017-12-18T17:14:01Z stassats`: interrupt_handle_pending itself doesn't seem to be losing interrupts 2017-12-18T17:14:26Z stassats`: could something make it restore a bad sigmask? 2017-12-18T17:14:55Z stassats`: sig-stop-for-gc can see a different mask, but it won't save a new one if there's already a pending handler 2017-12-18T17:22:48Z smurfrobot joined #sbcl 2017-12-18T17:33:10Z stassats`: maybe i'm losing events in the signal emulator handler 2017-12-18T17:33:58Z stassats`: but from just two threads, unlikely 2017-12-18T17:34:06Z stassats`: worth checking out anyway 2017-12-18T17:37:25Z Bike quit (Ping timeout: 260 seconds) 2017-12-18T17:37:31Z Bike_ joined #sbcl 2017-12-18T17:43:12Z stassats`: can handle multiple pending faults ok 2017-12-18T18:05:44Z m00natic quit (Remote host closed the connection) 2017-12-18T18:13:59Z shka joined #sbcl 2017-12-18T18:18:10Z nyef``: Is LDB a debugger... or a post-mortem analysis tool? 2017-12-18T18:18:49Z stassats`: if you invoke it outside of lose() 2017-12-18T18:19:43Z nyef``: ... then it's a pre-mortem analysis tool? 2017-12-18T18:19:56Z stassats`: got INTERRUPT-CONSING-CHILD to hang again, can snoop around a bit 2017-12-18T18:20:41Z nyef``: It seems that LDB can do precisely three things that are intercessory rather than analytic: grab-signals, kill, and purify. 2017-12-18T18:20:48Z stassats`: (sb-thread:symbol-value-in-thread 'SB-SYS:*INTERRUPT-PENDING* (car (sb-thread:list-all-threads))) => ; No debug variables for current frame: using EVAL instead of EVAL-IN-FRAME. NIL T 2017-12-18T18:21:41Z stassats`: so there are no interrupt pending, yet INTERRUPTIONS = (#) 2017-12-18T18:22:05Z stassats`: so it doesn't look like an abandoned without-interrupts 2017-12-18T18:23:02Z stassats`: INTERRUPTS-ENABLED is T as well 2017-12-18T18:23:33Z stassats`: i can't examine the signal mask outside of the thread 2017-12-18T18:23:43Z nyef``: Any luck on making it more reliable? 2017-12-18T18:23:55Z nyef``: ... Can you find the signal mask by attaching with gdb? 2017-12-18T18:24:08Z scymtym quit (Ping timeout: 240 seconds) 2017-12-18T18:24:11Z stassats`: no 2017-12-18T18:24:12Z nyef``: (Making it FAIL more reliably, sorry.) 2017-12-18T18:24:46Z stassats`: any attempt to distill various scenarios didn't pan out 2017-12-18T18:25:27Z stassats`: but it looks system load has a factor, if i ran two INTERRUPT-CONSING-CHILD in different processes i do get it to lock up faster 2017-12-18T18:26:38Z nyef``: SBCL_DYNDEBUG=all ? 2017-12-18T18:31:15Z stassats`: maybe i should insert more checks for unblocked signals to have it fail sooner 2017-12-18T18:32:49Z stassats`: but i guess it'll hang just the same 2017-12-18T18:33:14Z stassats`: at least i'll be in the right thread in ldb 2017-12-18T18:36:29Z nyef``: ISTR that when you're in multiple threads in LDB, you end up with round-robin input, each input going to the next thread in line. 2017-12-18T18:36:53Z stassats`: this'll be just one thread 2017-12-18T18:40:32Z stassats`: for some reason it likes to get triggered when i just start running it 2017-12-18T18:40:56Z stassats`: but when it runs for some time it doesn't hang 2017-12-18T18:41:06Z stassats`: stopping tests, cooling the laptop down 2017-12-18T18:41:38Z stassats`: wouldn't expect thermal throttling to kick in 2017-12-18T18:44:40Z stassats`: but the interaction of threads, signals, mask, gc stops is impossible to oversee 2017-12-18T18:45:07Z stassats`: and that's with already painstakingly debugged code, any new change can introduce subtle problems 2017-12-18T18:45:13Z stassats`: something needs to change 2017-12-18T18:46:25Z trittweiler quit (Ping timeout: 248 seconds) 2017-12-18T18:47:27Z nyef``: Formal methods time? 2017-12-18T18:47:43Z stassats`: simplicity time 2017-12-18T18:47:53Z stassats`: which will help formal methods as well 2017-12-18T18:48:00Z nyef``: I was seriously considering building a formal model of the safepoint logic at one point. (-: 2017-12-18T18:48:39Z stassats`: i'd settle with a mental model, but it needs to be simple and logical 2017-12-18T18:48:48Z nyef``: Fair enough. 2017-12-18T18:49:03Z stassats`: #ifdefs do not help at all 2017-12-18T18:49:57Z nyef``: One of the things that I was considering doing was to turn some #ifdef'd out operations into macros that compile out on certain targets, so less #ifdef in the main flow. 2017-12-18T18:53:56Z nyef``: Actually, here's something: In my "crazy questions" list is "can we stop deferring interrupts?" 2017-12-18T18:54:46Z stassats`: while designing signal-less darwin operations, i'm thinking of never masking signals, but also never running lisp code in them 2017-12-18T18:55:06Z stassats`: the only signals we need to handle are sigchld and problems in foreign code 2017-12-18T18:55:36Z stassats`: so it can queue to the manager thread which will dispatch it wherever 2017-12-18T18:56:28Z stassats`: our own interrupt-thread will be deferred, but with something simple like *interrupts-enabled* 2017-12-18T18:57:27Z eudoxia quit (Quit: Leaving) 2017-12-18T18:58:08Z nyef``: I guess the main question in a no-interrupt-deferral regime is "what happens if an interrupt comes in during GC?" 2017-12-18T18:58:46Z stassats`: a third party interrupt? 2017-12-18T18:59:18Z stassats`: the thread manager can stop delivering interrupts while GC is ongoing 2017-12-18T19:01:30Z BitPuffin|osx quit (Remote host closed the connection) 2017-12-18T19:01:33Z stassats`: just by using a lock 2017-12-18T19:02:33Z stassats`: we could designate a thread to run the GC in 2017-12-18T19:02:52Z stassats`: so that there is no distinction between the lisp threads when GC runs 2017-12-18T19:03:50Z stassats`: the same manager thread can do that, since it can't be managing stuff while things are gcing 2017-12-18T19:04:09Z cromachina_ joined #sbcl 2017-12-18T19:04:43Z stassats`: so, totally rethinking stuff, not trying to shove the single threaded design onto multiple threads 2017-12-18T19:05:04Z zulu_inuoe joined #sbcl 2017-12-18T19:06:48Z nyef``: Umm... Linux doesn't have a "thread manager" in charge of interrupt delivery that we control, does it? 2017-12-18T19:06:51Z cromachina quit (Ping timeout: 256 seconds) 2017-12-18T19:07:10Z nyef``: And there's also the single-thread SBCL case to consider. 2017-12-18T19:07:29Z stassats`: the only thing i'm willing to consider about the single-thread build is that it works 2017-12-18T19:09:31Z nyef``: ... that suggests a question: What, if any, benefit is there to single-thread SBCL on platforms that support multi-thread? 2017-12-18T19:09:40Z stassats`: faster 2017-12-18T19:09:50Z nyef``: Good enough. 2017-12-18T19:10:13Z stassats`: can seamlessly integrate with C code, e.g. the callbacks can be implemented really efficiently 2017-12-18T19:10:26Z stassats`: without the need to reconstruct REG_THREAD 2017-12-18T19:12:29Z zulu_inuoe quit (Quit: zulu_inuoe) 2017-12-18T19:13:01Z stassats`: the current interrupt and stop-the-world design is just a big ball of special variables tied into each other 2017-12-18T19:13:16Z nyef``: Oh. The single-thread case would "just" have the GC twit the sigmask on entry and exit, wouldn't it? 2017-12-18T19:13:32Z zulu_inuoe joined #sbcl 2017-12-18T19:14:33Z stassats`: i think all the decisions should be done by a single manager, the thread should just have states like "i don't want to gc" "i don't want to interrupt" 2017-12-18T19:15:06Z nyef``: Ah, similar to safepoints? 2017-12-18T19:15:42Z stassats`: not everywhere, but more of the same without-gcing 2017-12-18T19:15:55Z stassats`: but without sb!unix::receive-pending-interrupt at the end 2017-12-18T19:16:42Z nyef`` considers #!+(and x86-64 (not c-stack-is-control-stack)). 2017-12-18T19:17:05Z stassats`: basically what unix signals do, but for our needs 2017-12-18T19:17:23Z stassats`: when you unblock signals you are not checking for the queued signals, they get delivered automatically 2017-12-18T19:17:39Z nyef``: How cheap can we make manipulating the signal mask from Lisp? 2017-12-18T19:18:03Z nyef``: So that WITHOUT-INTERRUPTS becomes "simply" smacking the sigmask around? 2017-12-18T19:19:51Z stassats`: right now it's still more expensive than binding a special variable 2017-12-18T19:20:16Z nyef``: Okay, when is WITHOUT-INTERRUPTS time-critical? 2017-12-18T19:20:33Z stassats`: it's around many locks 2017-12-18T19:20:44Z Bike_ is now known as Bike 2017-12-18T19:20:51Z stassats`: in each with-mutex 2017-12-18T19:22:05Z stassats`: basically i want to make user-level signals without any of the bad signal stuff 2017-12-18T19:22:22Z stassats`: so the sigmask equivalent for it will be cheap 2017-12-18T19:23:20Z nyef``: Hrm... I think that there might be enough registers on x86-64 to be able to partition the register set and still have a dedicated thread register. 2017-12-18T19:23:49Z zulu_inuoe quit (Quit: zulu_inuoe) 2017-12-18T19:24:06Z zulu_inuoe joined #sbcl 2017-12-18T19:24:35Z zulu_inuoe quit (Client Quit) 2017-12-18T19:24:51Z stassats`: but you're basically making a new target 2017-12-18T19:24:53Z zulu_inuoe joined #sbcl 2017-12-18T19:25:06Z stassats`: all the vops are unaudited 2017-12-18T19:25:18Z nyef``: Mmm. 2017-12-18T19:25:44Z stassats`: i had separation mistakes even when i set out to make a precise backend 2017-12-18T19:25:58Z nyef``: On aarch64? 2017-12-18T19:26:08Z stassats`: yeah 2017-12-18T19:26:14Z stassats`: and aarch64 is a silly name 2017-12-18T19:26:50Z nyef``: Odd, I don't recall much trouble with separating boxed from unboxed on ARM, though I had a terrible time getting the balance right. 2017-12-18T19:27:15Z stassats`: not trouble, mistakes 2017-12-18T19:36:21Z myrkraverk quit (Ping timeout: 264 seconds) 2017-12-18T19:36:36Z myrkraverk_ joined #sbcl 2017-12-18T19:39:48Z myrkraverk_ is now known as myrkraverk 2017-12-18T20:00:34Z rpg joined #sbcl 2017-12-18T20:00:49Z nimiux joined #sbcl 2017-12-18T20:00:49Z nimiux quit (Changing host) 2017-12-18T20:00:49Z nimiux joined #sbcl 2017-12-18T20:05:53Z leah2 quit (Ping timeout: 255 seconds) 2017-12-18T20:14:06Z scymtym joined #sbcl 2017-12-18T20:19:47Z leah2 joined #sbcl 2017-12-18T20:21:04Z smurfrobot quit (Remote host closed the connection) 2017-12-18T20:27:34Z corci: Project sbcl-master » default,ubuntu_trusty_32bit build #2760: FAILURE in 43 min: http://ci.cor-lab.de/job/sbcl-master/featureset=default,label=ubuntu_trusty_32bit/2760/ 2017-12-18T20:28:27Z stassats`: at (SB!FASL::WRITE-INITIAL-CORE-FILE "output/cold-sbcl.core" T) 2017-12-18T20:50:15Z dougk_ joined #sbcl 2017-12-18T20:52:14Z dougk__ quit (Ping timeout: 255 seconds) 2017-12-18T20:55:15Z nyef``: Hrm. "The value 1152921779484770316 is not of type (MOD 1152921504606846973)." 2017-12-18T20:57:37Z milanj quit (Quit: This computer has gone to sleep) 2017-12-18T20:57:55Z dougk_ quit (Ping timeout: 265 seconds) 2017-12-18T20:58:17Z dougk_ joined #sbcl 2017-12-18T21:03:49Z dougk_ quit (Ping timeout: 255 seconds) 2017-12-18T21:08:35Z angavrilov quit (Remote host closed the connection) 2017-12-18T21:09:57Z stassats`: at least that's true 2017-12-18T21:10:39Z dougk_ joined #sbcl 2017-12-18T21:17:15Z dougk_ quit (Ping timeout: 265 seconds) 2017-12-18T21:17:24Z dougk_ joined #sbcl 2017-12-18T21:21:39Z smurfrobot joined #sbcl 2017-12-18T21:26:07Z eudoxia joined #sbcl 2017-12-18T21:26:49Z smurfrobot quit (Ping timeout: 256 seconds) 2017-12-18T21:27:24Z dougk__ joined #sbcl 2017-12-18T21:27:24Z dougk_ quit (Ping timeout: 265 seconds) 2017-12-18T21:29:33Z shka quit (Quit: Konversation terminated!) 2017-12-18T21:29:46Z shka joined #sbcl 2017-12-18T21:34:34Z dougk_ joined #sbcl 2017-12-18T21:35:05Z shka quit (Ping timeout: 240 seconds) 2017-12-18T21:36:20Z dougk__ quit (Ping timeout: 255 seconds) 2017-12-18T21:43:50Z dougk__ joined #sbcl 2017-12-18T21:45:47Z dougk_ quit (Ping timeout: 255 seconds) 2017-12-18T21:52:32Z dougk__ quit (Ping timeout: 265 seconds) 2017-12-18T21:56:10Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-18T21:58:03Z attila_lendvai joined #sbcl 2017-12-18T21:58:04Z attila_lendvai quit (Changing host) 2017-12-18T21:58:04Z attila_lendvai joined #sbcl 2017-12-18T21:59:29Z nyef``: Okay, on the one hand I sortof see what's going on with that type error. On the other, I don't yet know what to do about it other than not provoke it. 2017-12-18T22:01:45Z stassats`: constantp on PROGV is thoroughly unprepared for erroneous code 2017-12-18T22:02:43Z eudoxia quit (Quit: Leaving) 2017-12-18T22:08:44Z josemanuel joined #sbcl 2017-12-18T22:11:10Z josemanuel quit (Client Quit) 2017-12-18T22:23:16Z smurfrobot joined #sbcl 2017-12-18T22:26:42Z stassats`: and :SYMBOL-VALUE-IN-THREAD.3 hangs on linux-x86-64-safepoints 2017-12-18T22:27:31Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-18T22:30:15Z stassats`: no interrupts involved there 2017-12-18T22:32:57Z sjl quit (Ping timeout: 240 seconds) 2017-12-18T22:36:06Z stassats`: sb-concurrency tests are really slow on linux-x86-64-safepoints 2017-12-18T22:36:17Z stassats`: SB-CONCURRENCY-TEST::FRLOCK.1 even fails 2017-12-18T22:36:51Z stassats`: ok, it's under taskset 2017-12-18T22:37:07Z stassats`: with one core 2017-12-18T22:38:06Z nyef``: Is this stock, or with local changes? 2017-12-18T22:38:21Z stassats`: it's with taskset --cpu 1 2017-12-18T22:38:43Z stassats`: which doesn't the number of cores reported by the system 2017-12-18T22:38:52Z stassats`: doesn't affect 2017-12-18T22:39:49Z Jesin quit (Quit: Leaving) 2017-12-18T22:49:05Z karlosz joined #sbcl 2017-12-18T22:54:44Z Bike quit (Ping timeout: 260 seconds) 2017-12-18T22:55:29Z sjl joined #sbcl 2017-12-18T23:01:46Z dougk_ joined #sbcl 2017-12-18T23:02:59Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-12-18T23:13:19Z scymtym: working on handling malformed lambda lists. quite the rabbit hole. ended up in %COMPILER-DEFUN which is one of two places that try to grab the lambda-list from a lambdalike using FIFTH. there's even a comment how that must be bogus 2017-12-18T23:15:47Z nyef``: Right, clearly they should be using JIGGER, not FIFTH. d-: 2017-12-18T23:16:42Z scymtym: since it doesn't seem to have any effect at all, i would have gone for RANDOM-ELT 2017-12-18T23:18:30Z scymtym: and even if they had used THIRD, which would work for LAMBDA-WITH-LEXENV, they didn't expect to get ordinary LAMBDAs, which a self-build clearly shows is the case 2017-12-18T23:19:56Z scymtym: comment says "INLINE-LAMBDA is either :ACCESSOR, LAMBDA-WITH-LEXENV or NIL". i have seen :PREDICATE, :ACCESSOR, LAMBDA, LAMBDA-WITH-LEXENV and NIL so far 2017-12-18T23:20:54Z nyef``: "Ignore the comments, they can be terribly misleading: Debug only code." -- Advice for maintainers. 2017-12-18T23:21:43Z scymtym: how about "declare types or use e[type]case" if you expect more than one kind of thing? 2017-12-18T23:23:38Z nyef``: No, no, that's "how not to write unmaintainable code". Completely different advice group. 2017-12-18T23:24:07Z scymtym: heh 2017-12-18T23:24:29Z stassats`: "just don't write code" 2017-12-18T23:24:59Z nyef``: Code that doesn't exist doesn't need to be debugged. 2017-12-18T23:26:36Z scymtym: i think an inlined function with certain things in the third element of the implicit body progn could trigger this 2017-12-18T23:27:45Z corci: Yippee, build fixed! 2017-12-18T23:27:45Z corci: Project sbcl-master » default,ubuntu_trusty_32bit build #2761: FIXED in 58 min: http://ci.cor-lab.de/job/sbcl-master/featureset=default,label=ubuntu_trusty_32bit/2761/ 2017-12-19T00:09:32Z Bike joined #sbcl 2017-12-19T00:10:16Z stassats`: i should give up on the sigmask issue, at least trying to reproduce it 2017-12-19T00:19:25Z eudoxia joined #sbcl 2017-12-19T00:21:24Z stassats`: how do i disable gc write protection? 2017-12-19T00:21:26Z rpg joined #sbcl 2017-12-19T00:22:32Z stassats`: ENABLE_PAGE_PROTECTION 2017-12-19T00:33:28Z milanj joined #sbcl 2017-12-19T00:34:16Z stassats`: looks like darwin signal emulation has a window when the signals are unprotected in its signal handler 2017-12-19T00:34:30Z milanj quit (Read error: Connection reset by peer) 2017-12-19T00:38:31Z stassats`: doesn't appear to be important 2017-12-19T00:39:19Z milanj_ joined #sbcl 2017-12-19T00:41:29Z stassats`: sensing something promising, in maybe_save_gc_mask_and_block_deferrables 2017-12-19T00:42:37Z stassats`: it checks !data->pending_handler, but an interrupt may hit at that point 2017-12-19T00:43:40Z stassats`: ok, it blocks the signal before that 2017-12-19T00:43:40Z milanj_ quit (Read error: Connection reset by peer) 2017-12-19T00:44:00Z stassats`: but can the compiler rearrange that 2017-12-19T00:45:52Z milanj joined #sbcl 2017-12-19T00:58:14Z eudoxia quit (Remote host closed the connection) 2017-12-19T00:58:40Z eudoxia joined #sbcl 2017-12-19T01:04:59Z stassats`: hm, still in maybe_save_gc_mask_and_block_deferrables, why does it sigaddset_deferrable(sigset);? 2017-12-19T01:05:36Z stassats`: ok, i see 2017-12-19T01:15:19Z eudoxia quit (Remote host closed the connection) 2017-12-19T01:16:42Z stassats`: can't seem to find a chink in the way interrupt delaying is done 2017-12-19T01:24:21Z eudoxia joined #sbcl 2017-12-19T01:30:07Z rumbler31 quit (Ping timeout: 248 seconds) 2017-12-19T01:32:26Z jack_rabbit quit (Ping timeout: 260 seconds) 2017-12-19T01:34:03Z jasom joined #sbcl 2017-12-19T01:45:05Z jack_rabbit joined #sbcl 2017-12-19T02:09:17Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-12-19T02:19:07Z eudoxia quit (Quit: Leaving) 2017-12-19T02:45:22Z attila_lendvai quit (Ping timeout: 272 seconds) 2017-12-19T03:05:05Z tonton quit (Ping timeout: 248 seconds) 2017-12-19T03:06:37Z tonton joined #sbcl 2017-12-19T03:18:15Z nyef``: dougk: Genesis outputs page tables now? Very nice! (-: 2017-12-19T03:32:27Z stassats` quit (Ping timeout: 268 seconds) 2017-12-19T03:59:25Z smurfrobot joined #sbcl 2017-12-19T04:04:03Z smurfrobot quit (Ping timeout: 256 seconds) 2017-12-19T04:18:02Z rpg joined #sbcl 2017-12-19T04:59:42Z Kevslinger quit (Quit: Connection closed for inactivity) 2017-12-19T05:04:47Z Bike quit (Quit: Lost terminal) 2017-12-19T05:20:15Z milanj quit (Quit: This computer has gone to sleep) 2017-12-19T06:09:59Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-12-19T06:16:04Z dougk_: getting a lot of errors in frlock.1 test lately 2017-12-19T06:29:56Z shka joined #sbcl 2017-12-19T06:33:05Z karlosz quit (Ping timeout: 265 seconds) 2017-12-19T07:02:12Z scymtym: dougk_: i will probably have a fix for https://bugs.launchpad.net/sbcl/+bug/1738638 along with some changes regarding lambda list handling in ir1 conversion later today. can i send them your way for a review? 2017-12-19T07:02:34Z dougk_: sure 2017-12-19T07:15:35Z DeadTrickster quit (Remote host closed the connection) 2017-12-19T07:37:05Z scymtym quit (Ping timeout: 248 seconds) 2017-12-19T07:39:57Z jack_rabbit quit (Ping timeout: 264 seconds) 2017-12-19T07:41:27Z jack_rabbit joined #sbcl 2017-12-19T07:43:34Z oleo quit (Quit: Leaving) 2017-12-19T08:04:05Z hooman quit (Remote host closed the connection) 2017-12-19T08:06:09Z whoman joined #sbcl 2017-12-19T08:06:23Z shka quit (Ping timeout: 248 seconds) 2017-12-19T08:11:40Z trittweiler joined #sbcl 2017-12-19T08:20:11Z dougk_ quit (Ping timeout: 256 seconds) 2017-12-19T08:36:57Z scymtym joined #sbcl 2017-12-19T08:59:45Z zulu_inuoe quit (Ping timeout: 264 seconds) 2017-12-19T09:07:39Z smurfrobot joined #sbcl 2017-12-19T09:12:19Z smurfrobot quit (Ping timeout: 256 seconds) 2017-12-19T09:14:03Z smurfrobot joined #sbcl 2017-12-19T09:18:23Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-19T09:27:12Z smurfrobot joined #sbcl 2017-12-19T09:32:45Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-19T09:34:32Z smurfrobot joined #sbcl 2017-12-19T09:39:21Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-19T09:44:09Z milanj joined #sbcl 2017-12-19T09:49:00Z smurfrobot joined #sbcl 2017-12-19T09:53:35Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-19T09:54:56Z smurfrobot joined #sbcl 2017-12-19T09:59:37Z smurfrobot quit (Ping timeout: 255 seconds) 2017-12-19T10:18:19Z milanj quit (Quit: This computer has gone to sleep) 2017-12-19T10:21:59Z smurfrobot joined #sbcl 2017-12-19T10:39:34Z smurfrobot quit (Remote host closed the connection) 2017-12-19T10:42:30Z dustinm` quit (Quit: Leaving) 2017-12-19T10:47:59Z attila_lendvai joined #sbcl 2017-12-19T10:52:03Z dustinm` joined #sbcl 2017-12-19T10:52:07Z smurfrobot joined #sbcl 2017-12-19T10:55:24Z attila_lendvai quit (Quit: Leaving.) 2017-12-19T10:58:51Z jack_rabbit quit (Ping timeout: 256 seconds) 2017-12-19T11:11:20Z m00natic joined #sbcl 2017-12-19T11:15:44Z jack_rabbit joined #sbcl 2017-12-19T11:16:00Z corci: Project sbcl-master » fancy,ubuntu_trusty_32bit build #2762: FAILURE in 6 hr 56 min: http://ci.cor-lab.de/job/sbcl-master/featureset=fancy,label=ubuntu_trusty_32bit/2762/ 2017-12-19T11:39:45Z milanj joined #sbcl 2017-12-19T11:54:16Z corci: Yippee, build fixed! 2017-12-19T11:54:17Z corci: Project sbcl-master » fancy,ubuntu_trusty_32bit build #2763: FIXED in 38 min: http://ci.cor-lab.de/job/sbcl-master/featureset=fancy,label=ubuntu_trusty_32bit/2763/ 2017-12-19T12:30:17Z Kevslinger joined #sbcl 2017-12-19T12:32:53Z milanj quit (Quit: This computer has gone to sleep) 2017-12-19T12:37:16Z attila_lendvai joined #sbcl 2017-12-19T12:41:54Z milanj joined #sbcl 2017-12-19T12:46:18Z stassats joined #sbcl 2017-12-19T12:54:45Z attila_lendvai1 joined #sbcl 2017-12-19T12:54:45Z attila_lendvai quit (Disconnected by services) 2017-12-19T12:54:45Z attila_lendvai1 quit (Changing host) 2017-12-19T12:54:45Z attila_lendvai1 joined #sbcl 2017-12-19T12:58:13Z dougk_ joined #sbcl 2017-12-19T13:00:49Z rpg joined #sbcl 2017-12-19T13:04:51Z jack_rabbit quit (Ping timeout: 260 seconds) 2017-12-19T13:05:18Z jack_rabbit joined #sbcl 2017-12-19T13:10:34Z milanj quit (Quit: This computer has gone to sleep) 2017-12-19T13:12:15Z stassats: (:timer :threaded-stress) for some reason likes to hang on x86 2017-12-19T13:29:19Z milanj joined #sbcl 2017-12-19T13:32:01Z dougk__ joined #sbcl 2017-12-19T13:32:59Z attila_lendvai1 quit (Quit: Leaving.) 2017-12-19T13:34:55Z dougk_ quit (Ping timeout: 248 seconds) 2017-12-19T13:35:26Z attila_lendvai joined #sbcl 2017-12-19T13:39:32Z Bike joined #sbcl 2017-12-19T13:46:01Z dougk__ quit (Ping timeout: 256 seconds) 2017-12-19T14:12:27Z stassats: redid with-test expansion, the testing time went from 7:06 to 6:53 2017-12-19T14:12:34Z stassats: that's 2826 with-tests 2017-12-19T14:13:38Z BitPuffin|osx joined #sbcl 2017-12-19T14:13:53Z dougk_ joined #sbcl 2017-12-19T14:15:44Z pfdietz: Room for more tests! 2017-12-19T14:28:29Z attila_lendvai quit (Quit: Leaving.) 2017-12-19T14:39:18Z oleo joined #sbcl 2017-12-19T14:40:23Z luis` joined #sbcl 2017-12-19T14:41:01Z luis` is now known as luis 2017-12-19T15:00:15Z rumbler31 joined #sbcl 2017-12-19T15:09:21Z stassats quit (Ping timeout: 264 seconds) 2017-12-19T15:17:55Z milanj quit (Quit: This computer has gone to sleep) 2017-12-19T15:25:12Z corci: Project sbcl-master-windows » Windows_7_64bit build #1634: FAILURE in 30 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_64bit/1634/ 2017-12-19T15:27:12Z pfdietz quit 2017-12-19T15:33:54Z sjl quit (Quit: WeeChat 1.9.1) 2017-12-19T15:37:51Z stassats joined #sbcl 2017-12-19T15:40:07Z stassats: now i get Invalid index NIL for (SIMPLE-VECTOR 20000), should be a non-negative integer below 20000. from OUTPUT-PAGE-TABLE on x86 as well 2017-12-19T15:41:57Z nyef``: Should I hold off on more safepoint changes until tomorrow, then? (-: 2017-12-19T15:42:23Z stassats: do they touch genesis? 2017-12-19T15:44:09Z stassats: (position page-start (gspace-objects gspace) :test #'<= :start start) returns NIL 2017-12-19T15:44:42Z nyef``: I don't *think* I have any safepoint changes in mind that would affect genesis... 2017-12-19T15:46:50Z corci: Yippee, build fixed! 2017-12-19T15:46:50Z corci: Project sbcl-master » safepoints,ubuntu_trusty_32bit build #2764: FIXED in 52 min: http://ci.cor-lab.de/job/sbcl-master/featureset=safepoints,label=ubuntu_trusty_32bit/2764/ 2017-12-19T15:48:38Z stassats: and it's the last page-index 2017-12-19T15:48:47Z stassats: dougk: something wrong with OUTPUT-PAGE-TABLE on x86 2017-12-19T16:01:01Z stassats quit (Ping timeout: 260 seconds) 2017-12-19T16:01:05Z dougk_ quit (Ping timeout: 248 seconds) 2017-12-19T16:23:45Z sjl joined #sbcl 2017-12-19T16:39:19Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-12-19T16:46:47Z trittweiler quit (Ping timeout: 256 seconds) 2017-12-19T16:59:15Z dougk_ joined #sbcl 2017-12-19T17:00:18Z rpg joined #sbcl 2017-12-19T17:02:03Z dougk_: stassats: ok, will look. 2017-12-19T17:41:26Z jasom: So, what sorts of things aren't tracked by sprof's :mode :time? I have something that is taking 8 seconds of wall-clock time but only shows 2 seconds of samples with sprof 2017-12-19T17:55:17Z stassats joined #sbcl 2017-12-19T17:58:32Z scymtym: jasom: how do you determine the 2 seconds? for me (sb-sprof:with-profiling (:mode :time :sample-interval .1) (sleep 10)) (sb-sprof::samples-trace-count sb-sprof::*samples*) => 100 as expected 2017-12-19T18:01:58Z m00natic quit (Remote host closed the connection) 2017-12-19T18:07:22Z corci: Yippee, build fixed! 2017-12-19T18:07:22Z corci: Project sbcl-master » without-threads,MAC_OS_mavericks_64bit build #2765: FIXED in 23 min: http://ci.cor-lab.de/job/sbcl-master/featureset=without-threads,label=MAC_OS_mavericks_64bit/2765/ 2017-12-19T18:12:26Z shka joined #sbcl 2017-12-19T18:35:39Z karlosz joined #sbcl 2017-12-19T18:47:58Z stassats: of course, running timer.impure in a loop doesn't recreate the hang 2017-12-19T18:55:20Z scymtym just got "Invalid index NIL for (SIMPLE-VECTOR 5000)" in SB!FASL::OUTPUT-PAGE-TABLE. i thought that was x86 only 2017-12-19T18:55:39Z stassats: scymtym: isn't that fixed? 2017-12-19T18:55:50Z Jesin joined #sbcl 2017-12-19T18:57:38Z attila_lendvai joined #sbcl 2017-12-19T18:57:51Z scymtym: let me check onto what i rebased 2017-12-19T18:59:51Z scymtym: stassats: yeah, i was missing exactly that one-hour old commit. thanks for the heads up 2017-12-19T19:13:22Z attila_lendvai quit (Ping timeout: 272 seconds) 2017-12-19T19:22:07Z attila_lendvai joined #sbcl 2017-12-19T19:22:58Z jasom: scymtym: I get ~200 samples at a 1/100 sample interval. If I add (sleep 2) to the body, I get ~400 samples, as expected 2017-12-19T19:29:50Z attila_lendvai quit (Ping timeout: 272 seconds) 2017-12-19T19:29:55Z scymtym: jasom: just to make sure i understand correctly: (with-profiling (:mode :time :s-i .01) ) (samples-trace-count *samples*) => 200 and (with-profiling (:mode :time :s-i .01) (sleep 2)) (samples-trace-count *samples*) => 400? 2017-12-19T19:35:52Z attila_lendvai joined #sbcl 2017-12-19T19:35:52Z attila_lendvai quit (Changing host) 2017-12-19T19:35:52Z attila_lendvai joined #sbcl 2017-12-19T19:41:49Z scymtym: stassats: running individual impure tests seems broken. e.g. sh run-tests.sh compiler.impure.lisp signals a bunch of warnings 2017-12-19T20:11:50Z Jesin quit (Quit: Leaving) 2017-12-19T20:20:33Z scymtym quit (Ping timeout: 265 seconds) 2017-12-19T20:23:15Z BitPuffin|osx quit (Ping timeout: 256 seconds) 2017-12-19T20:26:49Z Jesin joined #sbcl 2017-12-19T20:29:22Z attila_lendvai quit (Ping timeout: 272 seconds) 2017-12-19T20:35:37Z attila_lendvai joined #sbcl 2017-12-19T20:35:38Z attila_lendvai quit (Changing host) 2017-12-19T20:35:38Z attila_lendvai joined #sbcl 2017-12-19T20:38:45Z jibanes quit (Ping timeout: 264 seconds) 2017-12-19T20:40:42Z jibanes joined #sbcl 2017-12-19T20:40:46Z attila_lendvai quit (Ping timeout: 272 seconds) 2017-12-19T20:44:40Z corci: Yippee, build fixed! 2017-12-19T20:44:40Z corci: Project sbcl-master-windows » Windows_7_64bit build #1637: FIXED in 29 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_64bit/1637/ 2017-12-19T20:53:29Z dougk_: nyef``: can you take a look at my changes to fixup'ing from dec 13 through dec 15? Our build has seen two "no size function for object" this morning, which is just after I submitted a rollup of that range of changes 2017-12-19T20:53:59Z dougk_: The last known good revision for us was e2be58d37 2017-12-19T20:55:13Z dougk_: I pulled that up through efffcaf1d into the google source control which is when we started seeing the GC bug 2017-12-19T20:57:55Z attila_lendvai joined #sbcl 2017-12-19T21:06:50Z nyef``: dougk_: Specifically the fixup changes, or just more generally that time period? 2017-12-19T21:07:04Z dougk_: generally that time period 2017-12-19T21:08:00Z attila_lendvai quit (Ping timeout: 272 seconds) 2017-12-19T21:08:10Z nyef``: But the commit "Fix heap relocation on x86" is known-good, or at least presumed-good? 2017-12-19T21:09:29Z nyef``: Also, specifically your changes, or all changes in that time period? 2017-12-19T21:11:49Z nyef``: Any platform-specificity to the problem? (That is, are we looking at "it only happens on x86" sort of things, or, again, more generally?) 2017-12-19T21:11:50Z milanj joined #sbcl 2017-12-19T21:12:50Z dougk_: well, we're on x86-64 only right now. 2017-12-19T21:13:14Z dougk_: I wonder if it's the comment at "This is achieved by not writing the 'nfuns' value but we also must prevent scavenging each embedded simple-fun until its widetag has been set. Otherwise gc would lose." 2017-12-19T21:13:37Z dougk_: in other words, it's not _quite_ enough just to not move a code object, you have to not look at it at all? 2017-12-19T21:13:46Z dougk_: fix heap relocation is known good 2017-12-19T21:14:30Z dougk_: so the suspect change is the one which changed WITHOUT-GCING to W-P-O (and wherein I typo'ed the first line of the commit message to be slightly nonsense) 2017-12-19T21:15:28Z milanj quit (Client Quit) 2017-12-19T21:32:15Z nyef``: Do you have a repeatable test case for this, or any information about either what's going on or what recently happened when it occurs? 2017-12-19T21:36:06Z dougk_: nope! 2017-12-19T21:42:53Z nyef``: So, I'm not currently following what's going on with this thing, but... for the two cases (LOAD-CODE and MAKE-CORE-COMPONENT), what happens if scav_code_header() is called partway through setup? Particularly the for_each_simple_fun bit? 2017-12-19T21:47:44Z dougk_: Indeed that's what I am concerned about as well. ... and as I'm typing this I just hit the bug! 2017-12-19T21:48:02Z shka quit (Ping timeout: 265 seconds) 2017-12-19T21:48:05Z dougk_: the problem is that it occurs in the cloud build and doesn't come back with any data. now I need to repro it on my desktop 2017-12-19T21:49:02Z nyef``: Stick explicit calls to SB-EXT:GC in various places in these functions? 2017-12-19T21:49:41Z nyef``: (If we're worried about a GC at a "bad time", try to force it!) 2017-12-19T21:51:06Z dougk_: I'm not sure but there might be a race between bumping the count of code-n-entries and actually stuffing data in for each entry point. 2017-12-19T21:52:20Z dougk_: the code component as loaded from fasl has zero-fill in the 6 words that comprise each simple-fun-header. now that I think of it, what's the underlying reason that I can't correctly set code-n-entries? It's because GC would say "no widetag" at that simple-fun. So why not either (a) write the widetag where it should be, or (b) just allow the case of an unpopulated simple-fun header 2017-12-19T21:52:39Z dougk_: then we never miss the chance to scav all the simple-fun headers of the code no matter when GC hits. 2017-12-19T21:53:05Z dougk_: by (a), I mean _dump_ the right widetags where they should be, if we don't already 2017-12-19T21:53:36Z dougk_: so that the loaded code component has its skeleton entirely correct in as much as calculating a code header address from a fun and v.v. 2017-12-19T21:54:33Z scymtym joined #sbcl 2017-12-19T22:03:56Z jasom: FYI I did discover at least where some of the time was going; it was in fsync() operations in sqlite. I had forgotten to wrap my code in with-transaction so each sqlite operation was causing an fsync(). 2017-12-19T22:12:21Z sjl quit (Ping timeout: 264 seconds) 2017-12-19T22:14:01Z jdz quit (Ping timeout: 255 seconds) 2017-12-19T22:19:07Z scymtym: SIGPROF must get dropped while in foreign code, then 2017-12-19T22:22:19Z nyef``: Could "just" be that the process was waiting in the kernel, and SIGPROF not accumulating hits, merely noting that there was at least ONE hit? 2017-12-19T22:25:27Z dougk_ quit (Ping timeout: 240 seconds) 2017-12-19T22:28:11Z dougk_ joined #sbcl 2017-12-19T22:30:41Z dougk_ quit (Read error: Connection reset by peer) 2017-12-19T22:30:57Z dougk_ joined #sbcl 2017-12-19T22:34:34Z Bike quit (Ping timeout: 260 seconds) 2017-12-19T22:38:38Z rpg quit (Quit: Textual IRC Client: www.textualapp.com) 2017-12-19T22:46:29Z stassats: scymtym: with-compilation-unit probably missing 2017-12-19T22:47:54Z stassats: added 2017-12-19T22:48:10Z stassats: and a new stack-analyze problem 2017-12-19T22:55:53Z stassats: went for a quick constantp fix and found two other bugs 2017-12-19T22:56:14Z stassats: i shouldn't expect "quick" things to not ruin my bed time 2017-12-19T22:56:30Z nyef``: More stack-analyze? 2017-12-19T23:10:17Z nyef``: Well, that's neat. 2017-12-19T23:10:39Z attila_lendvai joined #sbcl 2017-12-19T23:10:42Z nyef``: In a "this is all dead code" kind of way. 2017-12-19T23:11:26Z stassats: if it's at the stage of deciding whether to dx it, then i can handle it 2017-12-19T23:11:39Z stassats: but not day 2017-12-19T23:11:40Z nyef``: Hrm. Except that there could be a handler-bind for a blown catch tag that throws to the other tag. 2017-12-19T23:11:48Z stassats: won't even look to not get sucked in 2017-12-19T23:12:00Z nyef``: The DX looks legit, TBH. 2017-12-19T23:12:21Z stassats: handler-bind on throws? 2017-12-19T23:13:02Z nyef``: Sure. For UNSEEN-THROW-TAG-ERROR. 2017-12-19T23:13:44Z stassats: i don't need to play silly games, i can just say (throw 'ct8 (foo)) 2017-12-19T23:14:00Z nyef``: You could, yes. 2017-12-19T23:14:30Z nyef``: But this example doesn't do that, so there must be a reason why the compiler doesn't presume that the CATCH 'CT1 isn't dead. 2017-12-19T23:14:37Z corci: Project sbcl-master-windows » Windows_7_64bit build #1638: FAILURE in 29 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_64bit/1638/ 2017-12-19T23:15:14Z nyef``: Anyway, this looks like a backprop failure... somehow. 2017-12-19T23:16:14Z nyef``: ... and as far as that windows build failure goes, the first thing that comes to mind is "Nurk lurks in doorways". 2017-12-19T23:16:45Z stassats: no, it's the threads that are lurking 2017-12-19T23:16:54Z stassats: Failure: threads.impure.lisp / LURKING-THREADS 2017-12-19T23:17:09Z stassats: i have relaxed the test, but it still gives different timings between runs 2017-12-19T23:17:21Z stassats: system load would affect this 2017-12-19T23:17:24Z nyef``: Do they have enough energy for an additional burst of sullen menace before dawn? (-: 2017-12-19T23:17:32Z stassats: i can't make it reliable without diluting it further 2017-12-19T23:18:03Z stassats: it also doesn't subtract gcing time, i could do that 2017-12-19T23:19:13Z stassats: why doesn't internal-_run_-time help, no idea 2017-12-19T23:19:39Z stassats: if not scheduling switches, then is the frequency dropping? maybe some VM thingy 2017-12-19T23:21:00Z stassats: ok, i should cease any sbcl activity for the day before it's too late to stop 2017-12-19T23:21:20Z nyef``: So, DX is licensed, but there _is_ no back-prop path from the "entry DX" to the allocation other than via the NLX entry. 2017-12-19T23:21:28Z nyef``: Which doesn't kick in for some reason? 2017-12-19T23:21:54Z nyef``: And even that doesn't help, because the actual fault path *also* needs it live? 2017-12-19T23:22:27Z nyef``: Hrm. So every block in which the NLE is live. *That* should be doable. 2017-12-19T23:22:39Z nyef``: Still, eesh. 2017-12-19T23:25:01Z nyef``: I'm fairly sure that I can make this work, just possibly not tonight. 2017-12-19T23:26:57Z nyef``: Hrm. 2017-12-19T23:27:17Z nyef``: ... Unless the block dominator information doesn't help here. That might be an issue. 2017-12-19T23:32:31Z rumbler31 quit (Ping timeout: 256 seconds) 2017-12-19T23:36:12Z stassats quit (Ping timeout: 272 seconds) 2017-12-19T23:40:27Z dougk_ quit (Remote host closed the connection) 2017-12-19T23:44:12Z corci: Yippee, build fixed! 2017-12-19T23:44:13Z corci: Project sbcl-master-windows » Windows_7_64bit build #1639: FIXED in 29 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_64bit/1639/ 2017-12-19T23:47:55Z nyef``: Okay, block dominator shouldn't be a problem... I think. 2017-12-19T23:51:02Z nyef``: Although I get the impression that the LCD here is the start sentinel block. 2017-12-19T23:52:39Z nyef``: I guess that works. 2017-12-19T23:56:16Z nyef``: So, we back-prop pathwise, and wind up at an NLE, and from there the component head. 2017-12-19T23:57:26Z nyef``: Where instead we need to jump back to the ... Hrm. 2017-12-19T23:57:30Z milanj joined #sbcl 2017-12-19T23:59:03Z karlosz_ joined #sbcl 2017-12-20T00:00:01Z karlosz quit (Ping timeout: 248 seconds) 2017-12-20T00:00:01Z karlosz_ is now known as karlosz 2017-12-20T00:03:03Z karlosz quit (Client Quit) 2017-12-20T00:03:14Z karlosz joined #sbcl 2017-12-20T00:14:04Z corci: Project sbcl-master-windows » Windows_7_64bit build #1640: FAILURE in 29 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_64bit/1640/ 2017-12-20T00:21:10Z sjl joined #sbcl 2017-12-20T00:27:15Z corci: Project sbcl-master » fasteval,MAC_OS_mavericks_64bit build #2765: FAILURE in 6 hr 43 min: http://ci.cor-lab.de/job/sbcl-master/featureset=fasteval,label=MAC_OS_mavericks_64bit/2765/ 2017-12-20T00:35:26Z Bike joined #sbcl 2017-12-20T00:40:10Z attila_lendvai quit (Ping timeout: 272 seconds) 2017-12-20T00:47:48Z attila_lendvai joined #sbcl 2017-12-20T00:47:48Z attila_lendvai quit (Changing host) 2017-12-20T00:47:48Z attila_lendvai joined #sbcl 2017-12-20T01:04:31Z sjl quit (Ping timeout: 248 seconds) 2017-12-20T01:08:13Z karlosz quit (Quit: karlosz) 2017-12-20T01:25:26Z milanj quit (Quit: This computer has gone to sleep) 2017-12-20T01:44:52Z Blkt quit (Remote host closed the connection) 2017-12-20T01:44:53Z fe[nl]ix quit (Quit: No Ping reply in 180 seconds.) 2017-12-20T01:46:04Z Blkt joined #sbcl 2017-12-20T01:46:05Z fe[nl]ix joined #sbcl 2017-12-20T02:36:47Z dougk_ joined #sbcl 2017-12-20T03:26:34Z nyef``: Is there a parallel mode for the test suite, or does that just not make sense? 2017-12-20T03:35:18Z nyef``: Urgh. I keep not creating (and testing!) the test case until I've fixed whatever the bug is, and then having to do more builds just to verify that the test case works properly. /-: 2017-12-20T03:48:14Z nyef``: dougk_: Congratulations on figuring it out. Now, how much of that initialization can be done at dump time rather than load time? (-: 2017-12-20T03:48:26Z dougk_: i wondered exactly the same thing 2017-12-20T03:48:31Z dougk_: not much, i mean one way or another it's a fixup 2017-12-20T03:48:47Z dougk_: well, the offsets are actually constants, but we end up with the same problem when compiling to memory 2017-12-20T03:49:05Z nyef``: Are the offsets in the boxed or unboxed part of the component? 2017-12-20T03:49:08Z dougk_: i.e. even if we dumped offsets in the unboxed words of the code-instructions to a file, it needs to work right when compiling to memory 2017-12-20T03:49:12Z dougk_: they're in the unboxed 2017-12-20T03:49:28Z dougk_: they're packed so that 2 offsets fit in a lisp word for 64-bit, or 1 for 32-bit 2017-12-20T03:49:41Z nyef``: So, they're part of the bit dumped as code-instructions or whatever it is? 2017-12-20T03:50:01Z dougk_: yes, they're the first words of "instructions" 2017-12-20T03:51:46Z nyef``: Then can't at least the offsets be set up as part of "instructions" before the core vs. fasl decision gets made? 2017-12-20T03:52:53Z dougk_: probably? 2017-12-20T03:53:31Z nyef``: That might be the most that we can do, though. /-: 2017-12-20T03:53:34Z dougk_: i don't think that doing that actually simplifies anything. i really did consider it 2017-12-20T03:54:10Z dougk_: what i'm really trying to get us away from is all the fops that fix one thing here, one thing there. that was a disaster 2017-12-20T03:54:23Z dougk_: all the data to reconstruct a code component should be available at once 2017-12-20T03:55:48Z nyef``: Mmm. Ideally, I think that having a FASL format where we "just" grab a chunk of heap space, read up a bunch of objects, rebase any internal references (using some sort of map, most likely), and then patch external references might be a good option. 2017-12-20T03:58:37Z pfdietz joined #sbcl 2017-12-20T03:58:42Z nyef``: Hello pfdietz. 2017-12-20T03:59:40Z pfdietz: I think I'm going to write a special purpose version of the random tester for dynamic extent. Focus it on specific kinds of forms inside the allocation forms. 2017-12-20T04:00:10Z pfdietz: If there are more bugs there that should quickly flush them out. 2017-12-20T04:00:14Z nyef``: Ooh. 2017-12-20T04:00:32Z nyef``: Admittedly, "the last surprise is that there are no more surprises." 2017-12-20T04:09:00Z nyef`` puts a dynamic-extent rewrite on his "possible major projects" list. 2017-12-20T04:14:13Z BitPuffin|osx joined #sbcl 2017-12-20T04:14:26Z corci: Yippee, build fixed! 2017-12-20T04:14:26Z corci: Project sbcl-master-windows » Windows_7_64bit build #1641: FIXED in 29 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_64bit/1641/ 2017-12-20T04:21:33Z stassats joined #sbcl 2017-12-20T04:22:17Z stassats: fixed a problem in darwin signal emulation, could be related the sigmask issue 2017-12-20T04:22:40Z stassats: i can't exactly explain whether it's the same problem, let's see how the CI likes it 2017-12-20T04:27:11Z Bike quit (Quit: Lost terminal) 2017-12-20T04:31:01Z stassats: ok, i can, it's the same issue 2017-12-20T04:31:05Z stassats: finally 2017-12-20T04:31:38Z stassats: so silly to, saving the signals and block the signals in two different calls to pthread_sigmask 2017-12-20T04:34:22Z stassats: even if it's not the issue, it was still wrong 2017-12-20T04:40:58Z milanj joined #sbcl 2017-12-20T04:41:23Z stassats: seems that it fails more often with fasteval on the CI 2017-12-20T04:41:30Z stassats: i should have tried that for reproducing 2017-12-20T04:42:31Z stassats: the evaluator would involve a lot of stuff i wasn't accounting for 2017-12-20T04:43:42Z corci: Project sbcl-master-windows » Windows_7_64bit build #1642: FAILURE in 29 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_64bit/1642/ 2017-12-20T04:44:24Z stassats: why did it start failing? 2017-12-20T04:44:37Z stassats: more load on the vm? 2017-12-20T04:55:27Z stassats quit (Ping timeout: 248 seconds) 2017-12-20T05:13:59Z corci: Yippee, build fixed! 2017-12-20T05:13:59Z corci: Project sbcl-master-windows » Windows_7_64bit build #1643: FIXED in 30 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_64bit/1643/ 2017-12-20T06:43:06Z shka joined #sbcl 2017-12-20T06:48:27Z oleo quit (Quit: Leaving) 2017-12-20T06:59:52Z karlosz joined #sbcl 2017-12-20T07:03:40Z corci: Project sbcl-master-windows » Windows_7_32bit build #1644: FAILURE in 28 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_32bit/1644/ 2017-12-20T07:04:29Z corci: Project sbcl-master-windows » Windows_7_64bit build #1644: FAILURE in 29 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_64bit/1644/ 2017-12-20T07:06:57Z dougk_ quit (Ping timeout: 240 seconds) 2017-12-20T07:08:05Z karlosz quit (Ping timeout: 240 seconds) 2017-12-20T07:49:31Z scymtym quit (Ping timeout: 260 seconds) 2017-12-20T08:09:21Z shka quit (Ping timeout: 264 seconds) 2017-12-20T08:09:55Z shka joined #sbcl 2017-12-20T08:11:12Z trittweiler joined #sbcl 2017-12-20T08:15:53Z shka quit (Ping timeout: 265 seconds) 2017-12-20T08:24:09Z cro__ joined #sbcl 2017-12-20T08:27:05Z cromachina_ quit (Ping timeout: 240 seconds) 2017-12-20T08:42:19Z scymtym joined #sbcl 2017-12-20T08:51:02Z milanj quit (Quit: This computer has gone to sleep) 2017-12-20T10:12:57Z eschatologist quit (Ping timeout: 264 seconds) 2017-12-20T10:13:13Z eschatologist joined #sbcl 2017-12-20T10:13:35Z dougk_ joined #sbcl 2017-12-20T10:18:21Z dougk_ quit (Ping timeout: 264 seconds) 2017-12-20T10:37:16Z varjag joined #sbcl 2017-12-20T10:39:13Z varjag: getting corruption warning/memory fault while trying to load ironclad on arm64 2017-12-20T10:39:17Z varjag: wonder what could that be 2017-12-20T10:39:47Z varjag: current sbcl binary, tired a couple earlier versions too 2017-12-20T10:54:06Z stassats joined #sbcl 2017-12-20T10:57:44Z varjag: hmm.. it faults only on one specimen of hardware 2017-12-20T10:57:50Z varjag: could be actual hw issue 2017-12-20T10:58:29Z stassats: varjag: remove fasls 2017-12-20T10:58:30Z flip214: varjag: overclocked? 2017-12-20T10:59:18Z varjag: flip214: no.. a bunch of identical orange pi boards 2017-12-20T10:59:45Z varjag: stassats: happened on clean install too 2017-12-20T11:00:47Z flip214: varjag: clean install might not clean ~/.cache/common-lisp or similar things! 2017-12-20T11:01:33Z stassats: loading or compiler? fault where? 2017-12-20T11:01:37Z flip214: varjag: If I can remember tomorrow I can try ironclad on my orangepi 2017-12-20T11:02:38Z varjag: flip214: clean os install and first sbcl run 2017-12-20T11:03:13Z varjag: stassats: compiler 2017-12-20T11:03:25Z varjag: one sec 2017-12-20T11:04:22Z stassats: how stable is your power supply? adequate cooling? 2017-12-20T11:04:43Z varjag: https://pastebin.com/CJrsWPyf 2017-12-20T11:05:12Z varjag: same vendor supplied psu as the rest of the bunch 2017-12-20T11:05:16Z stassats: more backtrace 2017-12-20T11:05:36Z varjag: one difference this one is on a shelf in 19" equipment rack 2017-12-20T11:05:42Z varjag: could be some emi 2017-12-20T11:09:15Z flip214: varjag: reproducible EMI? that's like pointing some alpha-emitter at that CPU ;) 2017-12-20T11:10:05Z flip214: perhaps some voltage against ground? Ie. "internal" EMI? 2017-12-20T11:10:11Z varjag: flip214: it reproducibly fails, but not necessarily in the same spot 2017-12-20T11:10:26Z flip214: how about switching the PSUs around, still same mainboard? 2017-12-20T11:10:31Z varjag: also after restarting a few times it can inch forward a bit, then fails different place 2017-12-20T11:11:16Z varjag: stassats: https://pastebin.com/Wfb6VYvT 2017-12-20T11:11:20Z varjag: more bt 2017-12-20T11:11:46Z stassats: ok, nothing there 2017-12-20T11:12:02Z stassats: just a memory corruption 2017-12-20T11:12:04Z varjag: flip214: would try that, but this is the only one that's here physically 2017-12-20T11:12:56Z varjag: think i'll bring this one out of the cabinet and see 2017-12-20T11:13:01Z stassats: where do you get sbcl from? does the hash of the core file match the non failing one? 2017-12-20T11:14:27Z varjag: i tried: the current build from sbcl homepage, an older one from arbian repo, and 1.3.18 built from source on another identical host 2017-12-20T11:14:33Z varjag: similar failure all across 2017-12-20T11:14:55Z stassats: i can compile ironclad fine 2017-12-20T11:15:32Z varjag: yep, it compiles just fine on another orange pi specimen (using the 1.3.18 mentioned above) 2017-12-20T11:15:38Z stassats: so, yeah, it's a hardware issue 2017-12-20T11:16:01Z stassats: (congratulations) 2017-12-20T11:16:40Z stassats: might be a bad sd card 2017-12-20T11:18:21Z varjag: hm 2017-12-20T11:18:36Z varjag: would it still complain about memory fault? 2017-12-20T11:18:48Z stassats: sure, about anything 2017-12-20T11:24:49Z flip214: varjag: you could try the compilation on a tmpfs and without swap, then no sd card would be involved. 2017-12-20T11:25:19Z milanj joined #sbcl 2017-12-20T11:25:26Z stassats: is there enough ram? 2017-12-20T11:25:36Z varjag: 1gb 2017-12-20T11:25:44Z stassats` joined #sbcl 2017-12-20T11:26:07Z varjag: most of it unallocated normally 2017-12-20T11:30:07Z varjag: ok now it's not coming up online at all 2017-12-20T11:30:17Z varjag: was probably that 2017-12-20T11:31:12Z stassats: sbcl is good at finding hardware problems 2017-12-20T11:31:36Z stassats: i used it to diagnose memory corruption during suspend 2017-12-20T11:33:01Z varjag: heh 2017-12-20T11:34:41Z flip214: "good at finding" is okay, "good at producing" not so much ;) 2017-12-20T11:35:43Z flip214: "this open source stuff always breaks my new shiny things" but for good 2017-12-20T11:39:06Z jdz joined #sbcl 2017-12-20T11:52:40Z m00natic joined #sbcl 2017-12-20T11:54:43Z Shinmera: I've had so many faulty sd cards it's kinda ridiculous. I guess that's what you get when the market is flooded with cheap crap. 2017-12-20T11:58:24Z varjag: this one's premium supposedly 2017-12-20T11:58:29Z varjag: sandisk industrial 2017-12-20T11:58:37Z varjag: i-temp rated 2017-12-20T12:23:45Z trittweiler quit (Ping timeout: 256 seconds) 2017-12-20T13:06:08Z stassats: shaving off 720 bytes from the stack on darwin signal emulation 2017-12-20T13:06:39Z stassats: now it's more compact than on linux 2017-12-20T13:12:45Z stassats`: could be even more compact if i knew that the handler wouldn't use the float registers 2017-12-20T13:13:24Z stassats quit (Quit: ERC (IRC client for Emacs 25.1.2)) 2017-12-20T13:14:01Z stassats`: only really matters for catching pending interrupts, especially for gcing 2017-12-20T13:14:18Z stassats`: but i can't tell what interrupt is pending 2017-12-20T13:14:22Z stassats`: at least not easily 2017-12-20T13:16:23Z varjag quit (Ping timeout: 255 seconds) 2017-12-20T13:28:26Z milanj quit (Quit: This computer has gone to sleep) 2017-12-20T13:42:41Z varjag joined #sbcl 2017-12-20T13:47:37Z varjag quit (Ping timeout: 256 seconds) 2017-12-20T13:53:18Z Jesin quit (Quit: Leaving) 2017-12-20T13:53:40Z corci: Yippee, build fixed! 2017-12-20T13:53:41Z corci: Project sbcl-master » without-threads,MAC_OS_mavericks_64bit build #2770: FIXED in 24 min: http://ci.cor-lab.de/job/sbcl-master/featureset=without-threads,label=MAC_OS_mavericks_64bit/2770/ 2017-12-20T14:01:33Z dougk_ joined #sbcl 2017-12-20T14:08:50Z milanj joined #sbcl 2017-12-20T14:09:41Z scymtym quit (Ping timeout: 265 seconds) 2017-12-20T14:17:52Z Bike joined #sbcl 2017-12-20T14:28:33Z dougk_ quit (Ping timeout: 264 seconds) 2017-12-20T14:41:48Z varjag joined #sbcl 2017-12-20T14:41:57Z dougk_ joined #sbcl 2017-12-20T14:46:18Z karswell joined #sbcl 2017-12-20T14:53:23Z sjl joined #sbcl 2017-12-20T15:17:28Z Jesin joined #sbcl 2017-12-20T15:31:33Z dougk_ quit (Ping timeout: 264 seconds) 2017-12-20T15:32:12Z oleo joined #sbcl 2017-12-20T15:40:04Z varjag quit (Ping timeout: 265 seconds) 2017-12-20T15:42:34Z milanj quit (Quit: This computer has gone to sleep) 2017-12-20T15:47:20Z Bike quit (*.net *.split) 2017-12-20T15:48:45Z corci: Yippee, build fixed! 2017-12-20T15:48:46Z corci: Project sbcl-master-windows » Windows_7_32bit build #1647: FIXED in 28 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_32bit/1647/ 2017-12-20T15:49:11Z corci: Yippee, build fixed! 2017-12-20T15:49:11Z corci: Project sbcl-master-windows » Windows_7_64bit build #1647: FIXED in 29 min: http://ci.cor-lab.de/job/sbcl-master-windows/label=Windows_7_64bit/1647/ 2017-12-20T15:49:17Z stassats`: hurray 2017-12-20T15:53:49Z scymtym joined #sbcl 2017-12-20T16:02:05Z Bike joined #sbcl 2017-12-20T16:09:07Z rumbler31 joined #sbcl 2017-12-20T16:13:11Z milanj joined #sbcl 2017-12-20T16:21:05Z jackdaniel: yippee* 2017-12-20T16:22:16Z stassats`: it's hard to map source code to machine instructions, but we can map reliably VOPs to machine code 2017-12-20T16:22:32Z stassats`: i could find useful stepping through VOPs 2017-12-20T16:22:42Z stassats`: probably even more useful than source-level stepping 2017-12-20T16:32:20Z karlosz joined #sbcl 2017-12-20T16:35:03Z dougk_ joined #sbcl 2017-12-20T16:40:08Z dougk__ joined #sbcl 2017-12-20T16:40:30Z rpg joined #sbcl 2017-12-20T16:42:29Z dougk_ quit (Ping timeout: 255 seconds) 2017-12-20T16:51:56Z dougk__ quit (Ping timeout: 255 seconds) 2017-12-20T16:52:32Z varjag joined #sbcl 2017-12-20T16:58:47Z dougk_ joined #sbcl 2017-12-20T17:05:37Z dougk_ quit (Ping timeout: 265 seconds) 2017-12-20T17:09:11Z stassats`: snicked in a small fix after the freeze 2017-12-20T17:15:07Z stassats`: and no funcallable-instances hangs for the last five or so builds, let's see if that continues 2017-12-20T17:15:49Z corci: Yippee, build fixed! 2017-12-20T17:15:49Z corci: Project sbcl-master » safepoints,ubuntu_trusty_32bit build #2772: FIXED in 52 min: http://ci.cor-lab.de/job/sbcl-master/featureset=safepoints,label=ubuntu_trusty_32bit/2772/ 2017-12-20T17:17:37Z stassats`: but with the freeze not enough commits to trigger rebuilds 2017-12-20T17:18:28Z stassats`: better find regressions to fix 2017-12-20T17:19:58Z stassats`: i guess i could just work on making the tests suite pass with sb-fasteval on 32-bit builds 2017-12-20T17:36:33Z smurfrobot quit (Remote host closed the connection) 2017-12-20T17:37:08Z smurfrobot joined #sbcl 2017-12-20T17:40:45Z stassats`: yay, the mips build has regressed, looks like a source dependency issue 2017-12-20T17:40:54Z jack_rabbit quit (Ping timeout: 265 seconds) 2017-12-20T17:41:50Z jack_rabbit joined #sbcl 2017-12-20T17:42:08Z smurfrobot quit (Ping timeout: 268 seconds) 2017-12-20T17:42:11Z dougk_ joined #sbcl 2017-12-20T17:42:14Z nyef``: I think that my main project for next week is going to be getting my build farm partly sorted out and set up with a CI system. Because it WILL include MIPS and PPC. 2017-12-20T17:42:28Z stassats`: actually, it's a gencgc/cheneygc issue 2017-12-20T17:44:17Z stassats`: a simple #!+gencgc should do 2017-12-20T17:45:46Z stassats`: ppc and sparc are ok 2017-12-20T17:47:12Z stassats`: wait-on-semaphore semaphore-notification :lp-1038034 keeps succeeding, the CI doesn't like that 2017-12-20T17:47:24Z stassats`: should make it succeed less often or fix it? 2017-12-20T17:47:27Z nyef``: Does it succeed reliably? 2017-12-20T17:47:32Z stassats`: no 2017-12-20T17:48:21Z stassats`: i can try increasing the number of runs 2017-12-20T17:49:01Z nyef``: Add an "unstable-on" marker for the test, so that the CI can know to ignore it? 2017-12-20T17:50:30Z stassats`: it seems to be succeeding reliably on darwin 2017-12-20T17:50:41Z stassats`: probably the futex/spinlocks difference 2017-12-20T17:53:21Z stassats`: hangs pretty quickly on linux 2017-12-20T17:54:21Z dougk__ joined #sbcl 2017-12-20T17:54:29Z dougk_ quit (Ping timeout: 255 seconds) 2017-12-20T18:00:07Z stassats`: i can mark it as passing on darwin... 2017-12-20T18:00:08Z smurfrobot joined #sbcl 2017-12-20T18:02:10Z dougk__ quit (Ping timeout: 265 seconds) 2017-12-20T18:02:18Z stassats`: lp 1038034 2017-12-20T18:02:18Z specbot: https://bugs.launchpad.net/bugs/1038034 2017-12-20T18:05:37Z stassats`: https://ci.cor-lab.org/job/sbcl-master/featureset=default,label=MAC_OS_mavericks_64bit/ 2017-12-20T18:05:48Z stassats`: it has never succeeded, i.e. semaphore-notification has never failed 2017-12-20T18:05:56Z stassats`: so i'll marking it as passing on darwin 2017-12-20T18:06:12Z smurfrobot quit (Remote host closed the connection) 2017-12-20T18:06:53Z smurfrobot joined #sbcl 2017-12-20T18:10:52Z m00natic quit (Remote host closed the connection) 2017-12-20T18:11:21Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-20T18:12:18Z nyef``: So, code freeze, huh? 2017-12-20T18:12:28Z stassats`: yeah 2017-12-20T18:12:56Z nyef``: And I didn't get that last safepoint change done in time. 2017-12-20T18:13:16Z nyef``: Ah well, there's always next month. 2017-12-20T18:13:24Z stassats`: decide that it's a regression 2017-12-20T18:14:24Z nyef``: Heh. 2017-12-20T18:15:08Z stassats`: and i don't to fix the latest dead code issue this cycle 2017-12-20T18:15:25Z shka joined #sbcl 2017-12-20T18:15:50Z nyef``: At least I got the latest STACK thing last night. 2017-12-20T18:16:18Z smurfrobot joined #sbcl 2017-12-20T18:16:23Z stassats`: monitoring the test results to see if the darwin sigmask issue is gone 2017-12-20T18:16:50Z stassats`: found by going through code for the nth time 2017-12-20T18:22:16Z karlosz quit (Quit: karlosz) 2017-12-20T18:22:17Z smurfrobot quit (Read error: Connection reset by peer) 2017-12-20T18:22:27Z dougk_ joined #sbcl 2017-12-20T18:23:11Z smurfrobot joined #sbcl 2017-12-20T18:39:31Z smurfrobot quit (Remote host closed the connection) 2017-12-20T18:40:07Z smurfrobot joined #sbcl 2017-12-20T18:44:42Z smurfrobot quit (Ping timeout: 265 seconds) 2017-12-20T19:18:11Z smurfrobot joined #sbcl 2017-12-20T19:23:05Z smurfrobot quit (Ping timeout: 256 seconds) 2017-12-20T19:39:43Z ikki joined #sbcl 2017-12-20T19:44:31Z corci: Yippee, build fixed! 2017-12-20T19:44:31Z corci: Project sbcl-master » without-unicode,MAC_OS_mavericks_64bit build #2774: FIXED in 27 min: http://ci.cor-lab.de/job/sbcl-master/featureset=without-unicode,label=MAC_OS_mavericks_64bit/2774/ 2017-12-20T19:45:33Z corci: Yippee, build fixed! 2017-12-20T19:45:33Z corci: Project sbcl-master » default,MAC_OS_mavericks_64bit build #2774: FIXED in 28 min: http://ci.cor-lab.de/job/sbcl-master/featureset=default,label=MAC_OS_mavericks_64bit/2774/ 2017-12-20T19:46:27Z corci: Yippee, build fixed! 2017-12-20T19:46:27Z corci: Project sbcl-master » fancy,MAC_OS_mavericks_64bit build #2774: FIXED in 29 min: http://ci.cor-lab.de/job/sbcl-master/featureset=fancy,label=MAC_OS_mavericks_64bit/2774/ 2017-12-20T19:55:12Z BitPuffin|osx quit (Ping timeout: 248 seconds) 2017-12-20T19:56:43Z corci: Yippee, build fixed! 2017-12-20T19:56:44Z corci: Project sbcl-master » fasteval,MAC_OS_mavericks_64bit build #2774: FIXED in 39 min: http://ci.cor-lab.de/job/sbcl-master/featureset=fasteval,label=MAC_OS_mavericks_64bit/2774/ 2017-12-20T20:18:58Z smurfrobot joined #sbcl 2017-12-20T20:23:52Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-20T20:26:06Z nyef``: ... wha? "REDEFINITION-WITH-DEFTRANSFORM does not designate a condition class." 2017-12-20T20:28:28Z nyef``: In make-host-1, trying to load seqtran.fasl. 2017-12-20T20:30:59Z nyef``: Repeating without the cross-build setup (and, thus, on a different host SBCL version) gets me a "Bad type argument: REDEFINITION-WITH-DEFTRANSFORM" instead (modulo a newline). 2017-12-20T20:31:50Z DeadTrickster joined #sbcl 2017-12-20T20:32:08Z ikki quit (Ping timeout: 240 seconds) 2017-12-20T20:34:08Z stassats`: nyef``: it's just that you're redefining something 2017-12-20T20:34:32Z stassats`: (subtypep 'sb-eval::interpreted-function 'funcallable-instance) => T 2017-12-20T20:34:38Z stassats`: when did that thappen 2017-12-20T20:34:50Z nyef``: Okay, we've had compiler/target/backend-parms, compiler/target/parms, and compiler/target/vm by now. 2017-12-20T20:35:31Z nyef``: And that's the only target-arch-specific stuff loaded so far. 2017-12-20T20:35:33Z stassats`: i did change how deftransform is discriminated 2017-12-20T20:35:46Z stassats`: so if your type restriction coalesce it may get redefined 2017-12-20T20:36:11Z stassats`: which backend? 2017-12-20T20:37:38Z nyef``: x86-64, but I'm trying a completely off-the-wall build option. 2017-12-20T20:37:49Z stassats`: (subtypep 'sb-eval::interpreted-function 'funcallable-instance) => T is a regression 2017-12-20T20:37:53Z stassats`: probably mine too 2017-12-20T20:38:49Z stassats`: i hate dealing with late-type.lisp 2017-12-20T20:38:59Z stassats`: nothing is defined, have to load all the macros 2017-12-20T20:39:02Z stassats`: then it's all cached 2017-12-20T20:43:38Z stassats`: and hard to follow 2017-12-20T20:43:41Z stassats`: where anything happens 2017-12-20T20:45:57Z stassats`: here's where stepping could help 2017-12-20T20:46:24Z stassats`: but that's not because stepping is good, just late-type is so bad 2017-12-20T20:54:22Z stassats`: ugh, of course, it should've been (subtypep 'sb-eval::interpreted-function 'sb-kernel:funcallable-instance) and it's not a regression 2017-12-20T20:55:02Z stassats`: ok, will have to wait until after the freeze 2017-12-20T20:58:02Z nyef``: Hunh. No 64-bit unboxed specialized arrays on 32-bit ports with 64-bit registers? 2017-12-20T20:58:13Z stassats`: "ports" 2017-12-20T21:02:01Z ikki joined #sbcl 2017-12-20T21:09:13Z smurfrobot joined #sbcl 2017-12-20T21:13:48Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-20T21:16:14Z stassats`: hell, (subtypep 'interpreted-function 'funcallable-instance) is now nil, but (typep (lambda ()) 'sb-kernel:funcallable-instance) is T 2017-12-20T21:19:43Z stassats`: funcallable-instance-p returns T, what 2017-12-20T21:20:35Z stassats`: instance an instance, and it's funcallable, but it's not a funcallable instance 2017-12-20T21:23:31Z dougk: stassats`: aren't all functions that are neither simple-fun nor closure a funcallable-instance? 2017-12-20T21:23:56Z stassats`: dougk: they have a funcallable-instance-widetag, but they are not of class FUNCALLABLE-INSTANCE 2017-12-20T21:24:33Z stassats`: (sxhash (let ((*evaluator-mode* :interpret)) (eval '(lambda ())))) chokes on +32-bit 2017-12-20T21:24:45Z dougk: they could be, just not standard-funcallable-instance 2017-12-20T21:25:06Z dougk: what goes wrong if they are funcallable-instance ? 2017-12-20T21:25:12Z stassats`: see above 2017-12-20T21:26:08Z dougk: i see only your claim that the subtypep should be nil, that doesn't tell me what goes wrong 2017-12-20T21:26:27Z stassats`: the message just before "see above" 2017-12-20T21:29:28Z dougk: I understand it's broken that subtypep disagrees with typep, but what goes wrong if they BOTH say that all things with funcallable-instance-widetag are funcallable-instance? 2017-12-20T21:29:51Z dougk: You're making a claim that they are not, and I'm asking why not, aside from the obviously different and wrong semantics of typep vs subtypep 2017-12-20T21:29:56Z stassats`: (sxhash (let ((*evaluator-mode* :interpret)) (eval '(lambda ())))) is broken 2017-12-20T21:30:17Z stassats`: (funcallable-instance (fsc-instance-hash x)) 2017-12-20T21:30:37Z dougk: so we should fix fsc-hash then 2017-12-20T21:31:04Z stassats`: set-funcallable-instance-function would be broken as well 2017-12-20T21:31:57Z dougk: anyway, fsc-hash clearly is meant to apply only to standard-funcallable-instance, that's what the "s" is for 2017-12-20T21:35:12Z stassats`: the whole pcl is full of funcallable-instance checks yet it wouldn't work on interpreted functions 2017-12-20T21:35:43Z nyef``: Maybe PCL is the bit that needs fixing, then? 2017-12-20T21:36:49Z stassats`: nyef``: i know a tool just for that, "rm -r" 2017-12-20T21:36:59Z nyef``: Heh. 2017-12-20T21:45:21Z shka quit (Ping timeout: 264 seconds) 2017-12-20T21:48:48Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-12-20T22:07:24Z Bike quit (Ping timeout: 260 seconds) 2017-12-20T22:07:36Z rpg joined #sbcl 2017-12-20T22:10:35Z smurfrobot joined #sbcl 2017-12-20T22:15:21Z smurfrobot quit (Ping timeout: 256 seconds) 2017-12-20T22:16:39Z nyef``: ... Why am I getting a full call to DATA-VECTOR-REF-WITH-OFFSET for a (SIMPLE-ARRAY (UNSIGNED-BYTE 31) (*)) ? 2017-12-20T22:17:04Z stassats`: no vop? 2017-12-20T22:17:49Z nyef``: I don't see anything that should kill the VOP. 2017-12-20T22:18:08Z nyef``: Might be no *applicable* VOP, I guess. 2017-12-20T22:20:41Z stassats`: 9 test runs without funcallable-instance hangs 2017-12-20T22:21:23Z stassats`: (:timer :threaded-stress) hangs on linux-x86, though 2017-12-20T22:21:26Z stassats`: sometimes 2017-12-20T22:22:48Z nyef``: Ahh... These VOPs have the wrong result type. 2017-12-20T22:23:49Z nyef``: Right, and the order in *s-a-e-t-p* is different than this definition. Okay, this might make sense. 2017-12-20T22:29:00Z Jesin quit (Quit: Leaving) 2017-12-20T22:41:10Z stassats`: fatal error encountered in SBCL pid 26921(tid 0xf63b9b40): 2017-12-20T22:41:11Z stassats`: unbreakable pointer 0xaa995f8 2017-12-20T22:41:40Z stassats`: i hope Samuel L. Jackson is not involved 2017-12-20T22:53:19Z stassats`: FILL can't handle (make-array (1- array-dimension-limit) :element-type 'bit) 2017-12-20T22:53:51Z stassats`: The value 536870908 is not of type (UNSIGNED-BYTE 27) 2017-12-20T22:54:08Z Bike joined #sbcl 2017-12-20T22:55:03Z stassats`: we're not in Kansas anymore... we're in bit-bash.lisp 2017-12-20T22:55:18Z dougk_: a weak pointer to a large object - i bet that's the failure you got 2017-12-20T22:55:50Z dougk_: it moves automatically from from_space into to_space by flipping page table bits, so it satisfies neither from_space_p nor immobile_space_p. 2017-12-20T22:56:16Z stassats`: dougk_: that's on x86 with fast-eval and interpret on 2017-12-20T22:57:09Z stassats`: so, no immobile_space_p 2017-12-20T22:58:24Z stassats`: why is SB-KERNEL:UB1-BASH-FILL declare ub-27? 2017-12-20T23:00:32Z dougk_: yup, this weakptr bug is trivial to repro: (progn (defvar *a* (make-array 100000)) (defvar *b* (make-weak-pointer *a*)) (gc)). I should fix that now 2017-12-20T23:02:13Z stassats`: why does bit-bash accept bit arrays smaller than wider arrays? 2017-12-20T23:02:23Z stassats`: the FIXME says as much 2017-12-20T23:02:33Z stassats`: the fixme is 12 years old 2017-12-20T23:11:36Z smurfrobot joined #sbcl 2017-12-20T23:15:59Z smurfrobot quit (Ping timeout: 256 seconds) 2017-12-20T23:20:28Z sjl quit (Ping timeout: 240 seconds) 2017-12-20T23:24:01Z rumbler31 quit (Ping timeout: 260 seconds) 2017-12-20T23:35:14Z scymtym: dougk: if you want to have a look, a sketch of my planned lambda list changes is at https://github.com/scymtym/sbcl/compare/lambda-list-changes~5...lambda-list-changes 2017-12-20T23:40:24Z scymtym: unrelated: i noticed that reg-alloc::conflicts-in-sc (which is called a lot) has pretty bad code in the target image (generic arithmetic, CEILING full calls for bit vector access), but recompiling makes it reasonable. build order problem? 2017-12-20T23:40:50Z dougk_: sounds like 2017-12-20T23:40:51Z stassats`: i doubt that 2017-12-20T23:41:00Z stassats`: since the compiler is already up 2017-12-20T23:41:37Z stassats`: unless it's the types from structures 2017-12-20T23:42:09Z nyef``: How about "CROSS-FLOAT-INFINITY-KLUDGE screwing over arithmetic type derivation in the cross-compiler strikes again"? 2017-12-20T23:42:22Z stassats`: well, there's no floats there 2017-12-20T23:42:34Z nyef``: I didn't say there were. 2017-12-20T23:42:48Z dougk_: this weak pointer problem is a tiny fix but it is literally impossible to write a reliable test without manual control of object placement. the large array, if it gets promoted before we see the weak pointer at all, renders the pointer non-breakable from the outset, so it doesn't get enqueued. So the array has to be on a higher page number than the weak pointer 2017-12-20T23:42:57Z stassats`: doesn't it punt only on floats? 2017-12-20T23:43:09Z stassats`: cause that came into my mind first as well 2017-12-20T23:43:18Z nyef``: Not when I first ran into it, and I have no idea if it's been fixed in the last decade or so. 2017-12-20T23:44:43Z nyef``: dougk_: So, can you smack around some gencgc-internal variables to force a high page number for the array? 2017-12-20T23:45:29Z nyef``: (Also, assert precisely that, by comparing GET-LISP-OBJ-ADDRESS of the things.) 2017-12-20T23:46:25Z stassats`: for some reason unbreakable pointer has been failing reliably on x86+sb-fasteval in threads.impure.lisp 2017-12-20T23:46:38Z stassats`: after (:BINDING-STACK-GC-SAFETY) 2017-12-20T23:46:39Z dougk_: alloc_start_page i suppose 2017-12-20T23:46:46Z stassats`: during (:BINDING-STACK-GC-SAFETY) 2017-12-20T23:47:06Z varjag quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-12-20T23:52:33Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-12-21T00:01:34Z dougk_: even "smacking around" the alloc-start isn't enough. You have to ensure that scavenge newspace only sees things in a prescribed order as well. That's even more tough to ensure 2017-12-21T00:07:36Z rpg joined #sbcl 2017-12-21T00:18:46Z rumbler31 joined #sbcl 2017-12-21T00:19:47Z smurfrobot joined #sbcl 2017-12-21T00:20:36Z smurfrobot quit (Remote host closed the connection) 2017-12-21T00:23:54Z rumbler31 quit (Ping timeout: 272 seconds) 2017-12-21T00:24:41Z nyef``: Hrm. Stupid alignment restrictions. /-: 2017-12-21T00:25:14Z nyef``: Looks like... 128 bits, maybe? 2017-12-21T00:47:55Z nyef``: Wait, what? How is '1 getting treated as uv25? 2017-12-21T00:48:25Z nyef``: Right, because it's an argument to APPLY. 2017-12-21T00:48:56Z nyef``: I don't know that this is properly a STACK bug. 2017-12-21T00:49:27Z nyef``: It might be, but there's also a good chance that this particular manifestation is caused by earlier phases being silly. 2017-12-21T00:49:54Z pfdietz: Good test simplification there. 2017-12-21T00:51:47Z stassats`: :timer :threaded-stress now fails quite often on linux-x86 on the CI 2017-12-21T00:52:03Z stassats`: of course i wasn't able to reproduce locally 2017-12-21T00:52:27Z stassats`: nyef``: it's transformed to mv-call 2017-12-21T00:52:40Z nyef``: stassats`: Yes. Yes, it is. 2017-12-21T00:52:54Z stassats`: but mv-call doesn't break it 2017-12-21T00:53:06Z nyef``: Hrm. Why is v25 live *AFTER* the mv-call that consumes it? 2017-12-21T00:53:10Z stassats`: oh, no it does 2017-12-21T00:56:12Z nyef``: I think I see what's going on here... 2017-12-21T00:58:37Z nyef``: Can we force an IR1 block break after evaluating ,tag, but before %CATCH? 2017-12-21T00:59:58Z jack_rabbit quit (Ping timeout: 268 seconds) 2017-12-21T01:00:00Z dougk_ quit (Ping timeout: 272 seconds) 2017-12-21T01:00:38Z nyef``: STACK takes the start-stack of the block that contains the mess-up for a cleanup as being forced live throughout the body of the cleanup. But with the tag evaluated in the same block, it's picking up the start stack from before the mv-call is evaulated. 2017-12-21T01:01:23Z nyef``: (So, not a bug in STACK, so much as an invariant that we didn't know about.) 2017-12-21T01:05:16Z nyef``: I think that the constraint might be something like "can't merge blocks if the first block pops LVARs and the second block contains a MESS-UP", if that's even expressable when we're evaluating block merges. 2017-12-21T01:12:20Z jack_rabbit joined #sbcl 2017-12-21T01:18:20Z nyef``: Or we could "just" declare that mess-up nodes must start blocks? 2017-12-21T01:21:25Z stassats`: somehow the IF is interfering 2017-12-21T01:23:21Z stassats`: as in (catch (multiple-value-call #'+ 1 (bar (the integer z))) :done) 2017-12-21T01:23:27Z stassats`: from the cast 2017-12-21T01:23:29Z nyef``: Ah, for the typecheck? 2017-12-21T01:24:07Z stassats`: (catch (multiple-value-call #'+ 1 (bar (integerp z))) :done) 2017-12-21T01:24:28Z stassats`: simplifies the IR 2017-12-21T01:29:12Z stassats`: (lambda (z) (catch (multiple-value-call #'+ (if (integerp z) 1 (values 1 2))) :done)) 2017-12-21T01:30:19Z stassats`: (catch (multiple-value-call #'+ (if z 1 (values 1 2))) :done) of course 2017-12-21T01:32:26Z stassats`: that's as simple as it can get 2017-12-21T01:33:41Z nyef``: Right, and it still has a block with the mv-combination that pops a value immediately followed by a combination for %CATCH. 2017-12-21T01:35:23Z stassats`: an IF is necessary for some reason 2017-12-21T01:35:52Z nyef``: To break the block leading into the mv-combination. Otherwise it becomes an intra-block mv-lvar, and those "don't count". 2017-12-21T01:38:02Z nyef``: So, in DEF-IR1-TRANSLATOR %WITHIN-CLEANUP, I think that we might need a (CTRAN-STARTS-BLOCK DUMMY), and then something to prevent merging blocks across cleanup environment boundaries. 2017-12-21T01:38:56Z nyef``: Hrm. Or maybe it needs to be (CTRAN-STARTS-BLOCK START)? 2017-12-21T01:39:03Z nyef`` really isn't certain here. 2017-12-21T01:40:07Z nyef``: ... or do we need to grab the ctran inbound to mess-node, and ctran-starts-block that? 2017-12-21T01:40:27Z nyef``: Yeah, that last sounds most plausible. 2017-12-21T01:40:39Z stassats`: do function calls act as pop-values? 2017-12-21T01:41:27Z smurfrobot joined #sbcl 2017-12-21T01:43:50Z pfdietz: Would you be having the same trouble with (let ((x ...)) (catch x ...))? 2017-12-21T01:44:46Z nyef``: pfdietz: I don't think so, because the LET sets up a binding environment separate from the CATCH. 2017-12-21T01:44:58Z nyef``: Hrm. 2017-12-21T01:45:13Z pfdietz: So just make CATCH a macro that expands into that (with the other CATCH some internal symbol). 2017-12-21T01:45:17Z nyef``: Okay, I can't CTRAN-STARTS-BLOCK because it's an :INSIDE-BLOCK CTRAN. 2017-12-21T01:45:18Z stassats`: could just evaluate into an lvar instead of a let 2017-12-21T01:45:55Z nyef``: stassats`: Can I split blocks during IR1 translation, or do I need to arrange for them to be separate to begin with? 2017-12-21T01:46:36Z nyef``: It looks like JOIN-SUCCESSOR-IF-POSSIBLE won't merge the blocks if we can arrange for them to be split in the first place. 2017-12-21T01:47:12Z stassats`: ensure-block-start? 2017-12-21T01:47:30Z stassats`: node-ends-block 2017-12-21T01:48:45Z nyef``: ensure-block-start doesn't work: "The value of LAST is NIL, which is not of type NODE." 2017-12-21T01:49:20Z nyef``: I think I need to arrange for the CTRAN to start the block directly, rather than try to split it post-facto. 2017-12-21T01:49:27Z stassats`: i guess that's too soon 2017-12-21T01:49:41Z stassats`: the block isn't "finalized" yet 2017-12-21T01:49:59Z nyef``: Right. 2017-12-21T01:50:34Z nyef``: Do I "just" throw a DEF-IR1-TRANSLATOR on the function for the mess-up node? 2017-12-21T01:52:48Z stassats`: anyhow, https://gist.github.com/stassats/4085a303df132f30c10e93ad895e01fd#file-catch-tran-lisp does work 2017-12-21T01:53:09Z ikki quit (Ping timeout: 264 seconds) 2017-12-21T01:53:48Z nyef``: You can do that? Ship it! 2017-12-21T01:54:14Z stassats` puts it in the freezer to avoid spoilage 2017-12-21T01:54:57Z nyef``: How the heck are you allowed to pass an lvar there? 2017-12-21T01:55:11Z stassats`: well, that's a new thing i added recently 2017-12-21T01:55:32Z nyef``: Hunh. 2017-12-21T01:55:50Z nyef``: Yeah, I'd've come up with something rather more complex, under the circumstances. 2017-12-21T01:56:38Z stassats`: i was thinking about that, but the pfdietz suggestion made me actually try it 2017-12-21T01:58:23Z nyef``: As I said, the problem was that the mess-up was in the middle of a block. The compiler wouldn't join two blocks together like that, so it had to have been created that way, so we "just" needed to arrange for there to be a block boundary there at creation-time. 2017-12-21T01:59:22Z nyef``: ... Does this mean that (defun foo () #.(sb-c::make-tran)) might cause problems? 2017-12-21T02:00:36Z stassats`: i only made it work on lvar args to combinations 2017-12-21T02:01:08Z nyef``: (defun foo () (funcall #'identity #.(sb-c::make-lvar))) ? 2017-12-21T02:02:19Z stassats`: right, that would make it behave funny 2017-12-21T02:02:50Z stassats`: can you find a problem with that? cause i guess i can make it go away 2017-12-21T02:03:02Z stassats`: but wouldn't like to complicate it unnecessarily 2017-12-21T02:04:05Z bkst_ joined #sbcl 2017-12-21T02:04:22Z stassats`: and i think i forgot to set lvar-dest 2017-12-21T02:04:37Z stassats`: it's only been exercised on RISCs around with-alien 2017-12-21T02:04:39Z nyef``: I'm not too fussed right now, actually. 2017-12-21T02:05:06Z stassats`: the fix would be simple (defstruct sneak-lvar (:include lvar)) 2017-12-21T02:05:30Z stassats`: but still, that's an unnecessary complication for future readers 2017-12-21T02:05:43Z stassats`: sneaky-lvar, rather 2017-12-21T02:05:49Z Blkt_ joined #sbcl 2017-12-21T02:05:50Z lacedaemon joined #sbcl 2017-12-21T02:07:14Z jdz quit (*.net *.split) 2017-12-21T02:07:14Z fe[nl]ix quit (*.net *.split) 2017-12-21T02:07:14Z Blkt quit (*.net *.split) 2017-12-21T02:07:14Z pchrist quit (*.net *.split) 2017-12-21T02:07:15Z bkst quit (*.net *.split) 2017-12-21T02:07:28Z pchrist_ joined #sbcl 2017-12-21T02:07:42Z jdz joined #sbcl 2017-12-21T02:08:07Z stassats`: and to answer my pop-values question, yeah, full calls seem to do the job of consuming the values 2017-12-21T02:14:29Z stassats` quit (Ping timeout: 256 seconds) 2017-12-21T02:35:05Z eschatologist quit (Quit: ZNC 1.6.5+deb2build2 - http://znc.in) 2017-12-21T02:35:46Z eschatologist joined #sbcl 2017-12-21T02:40:11Z dougk_ joined #sbcl 2017-12-21T02:55:40Z milanj quit (Quit: This computer has gone to sleep) 2017-12-21T03:12:11Z pfdietz: The old random tester would not have found that bug. There, all the tags were constants. 2017-12-21T03:12:51Z pfdietz: Here, just randomly splicing forms (mostly to test malformed code handling) came up with a non-constant form in the tag. 2017-12-21T03:13:35Z nyef``: There is, of course, at least one more surprise to discover in stack analysis. 2017-12-21T03:13:53Z milanj joined #sbcl 2017-12-21T03:34:42Z smurfrobot quit (Remote host closed the connection) 2017-12-21T03:47:35Z karswell quit (Ping timeout: 240 seconds) 2017-12-21T04:10:37Z dougk_ quit (Read error: Connection reset by peer) 2017-12-21T04:10:52Z dougk_ joined #sbcl 2017-12-21T04:34:15Z milanj quit (Quit: This computer has gone to sleep) 2017-12-21T04:40:49Z Bike quit (Quit: Lost terminal) 2017-12-21T05:12:04Z irsol quit (Ping timeout: 255 seconds) 2017-12-21T05:12:33Z nimiux_ joined #sbcl 2017-12-21T05:13:08Z nimiux quit (Ping timeout: 255 seconds) 2017-12-21T05:24:58Z irsol joined #sbcl 2017-12-21T05:57:39Z Intensity quit (Ping timeout: 246 seconds) 2017-12-21T05:59:37Z Intensity joined #sbcl 2017-12-21T05:59:59Z dougk_ quit (Ping timeout: 248 seconds) 2017-12-21T06:02:32Z shka joined #sbcl 2017-12-21T06:09:58Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-12-21T06:26:09Z jsnell quit (*.net *.split) 2017-12-21T06:26:09Z lonjil2 quit (*.net *.split) 2017-12-21T06:26:10Z dim quit (*.net *.split) 2017-12-21T06:26:10Z drmeister quit (*.net *.split) 2017-12-21T06:26:10Z galdor quit (*.net *.split) 2017-12-21T06:26:10Z nicdev quit (*.net *.split) 2017-12-21T06:26:35Z jsnell joined #sbcl 2017-12-21T06:27:45Z irsol quit (Ping timeout: 248 seconds) 2017-12-21T06:28:38Z irsol joined #sbcl 2017-12-21T06:31:46Z lonjil2 joined #sbcl 2017-12-21T06:31:46Z dim joined #sbcl 2017-12-21T06:31:46Z drmeister joined #sbcl 2017-12-21T06:31:46Z galdor joined #sbcl 2017-12-21T06:31:46Z nicdev joined #sbcl 2017-12-21T06:34:35Z BitPuffin|osx joined #sbcl 2017-12-21T06:48:29Z lonjil2 quit (*.net *.split) 2017-12-21T06:48:30Z dim quit (*.net *.split) 2017-12-21T06:48:30Z drmeister quit (*.net *.split) 2017-12-21T06:48:30Z galdor quit (*.net *.split) 2017-12-21T06:48:30Z nicdev quit (*.net *.split) 2017-12-21T07:15:21Z oleo quit (Quit: Leaving) 2017-12-21T07:15:27Z scymtym quit (Ping timeout: 240 seconds) 2017-12-21T07:24:33Z lonjil joined #sbcl 2017-12-21T07:25:00Z drmeister joined #sbcl 2017-12-21T07:25:08Z galdor joined #sbcl 2017-12-21T07:25:22Z dim joined #sbcl 2017-12-21T07:25:34Z nicdev joined #sbcl 2017-12-21T07:37:05Z dougk_ joined #sbcl 2017-12-21T07:42:46Z dougk_ quit (Ping timeout: 260 seconds) 2017-12-21T07:46:02Z whoman quit (Remote host closed the connection) 2017-12-21T07:46:24Z whoman joined #sbcl 2017-12-21T07:53:48Z Kevslinger quit (Quit: Connection closed for inactivity) 2017-12-21T08:05:27Z trittweiler joined #sbcl 2017-12-21T08:17:08Z scymtym joined #sbcl 2017-12-21T08:32:03Z milanj joined #sbcl 2017-12-21T08:36:05Z smurfrobot joined #sbcl 2017-12-21T08:36:46Z smurfrobot quit (Read error: Connection reset by peer) 2017-12-21T08:37:26Z smurfrobot joined #sbcl 2017-12-21T08:37:50Z shka quit (Ping timeout: 252 seconds) 2017-12-21T09:25:32Z smurfrobot quit (Remote host closed the connection) 2017-12-21T09:26:07Z smurfrobot joined #sbcl 2017-12-21T09:30:41Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-21T09:32:52Z milanj quit (Quit: This computer has gone to sleep) 2017-12-21T09:46:54Z smurfrobot joined #sbcl 2017-12-21T09:51:57Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-21T10:16:21Z varjag joined #sbcl 2017-12-21T10:40:00Z smurfrobot joined #sbcl 2017-12-21T10:44:25Z stassats joined #sbcl 2017-12-21T10:44:56Z milanj joined #sbcl 2017-12-21T11:02:26Z dougk_ joined #sbcl 2017-12-21T11:08:14Z stassats: Unhandled SB-INT:BUG in thread #: EQUALP got incomplete instance layout 2017-12-21T11:15:54Z m00natic joined #sbcl 2017-12-21T11:19:27Z dougk_ quit (Ping timeout: 248 seconds) 2017-12-21T11:32:24Z attila_lendvai quit (Quit: Leaving.) 2017-12-21T11:33:05Z stassats: a core can't start up if the top-level is evaluated 2017-12-21T11:33:08Z stassats: i think 2017-12-21T11:34:45Z stassats: uhm, no something with ../heap-reloc/embiggen.lisp 2017-12-21T11:35:39Z stassats: dougk: something's wrong with ../heap-reloc/embiggen.lisp 2017-12-21T11:36:02Z stassats: but how 2017-12-21T11:36:04Z stassats: it's x86 2017-12-21T11:36:18Z stassats: oh, it's -immobile-space, right 2017-12-21T11:37:38Z stassats: 4: (SB-INT:BUG "EQUALP got incomplete instance layout") 2017-12-21T11:37:38Z stassats: 5: (SB-IMPL::INSTANCE-EQUALP #> #>) 2017-12-21T11:54:47Z smurfrobot quit (Remote host closed the connection) 2017-12-21T12:06:05Z jibanes quit (Ping timeout: 256 seconds) 2017-12-21T12:07:54Z jibanes joined #sbcl 2017-12-21T12:16:52Z dougk_ joined #sbcl 2017-12-21T12:21:21Z dougk_ quit (Ping timeout: 264 seconds) 2017-12-21T12:23:35Z trittweiler quit (Ping timeout: 240 seconds) 2017-12-21T12:55:18Z smurfrobot joined #sbcl 2017-12-21T12:56:34Z smurfrobot quit (Remote host closed the connection) 2017-12-21T12:56:48Z smurfrobot joined #sbcl 2017-12-21T13:00:18Z rpg joined #sbcl 2017-12-21T13:10:26Z smurfrobot quit (Remote host closed the connection) 2017-12-21T13:14:07Z milanj quit (Quit: This computer has gone to sleep) 2017-12-21T13:18:33Z dougk_ joined #sbcl 2017-12-21T13:40:18Z milanj joined #sbcl 2017-12-21T13:50:18Z smurfrobot joined #sbcl 2017-12-21T13:52:48Z stassats: :kill-non-lisp-thread failed without an explanation, and of course it works locally 2017-12-21T13:55:11Z smurfrobot quit (Ping timeout: 252 seconds) 2017-12-21T13:59:25Z smurfrobot joined #sbcl 2017-12-21T14:22:07Z Kevslinger joined #sbcl 2017-12-21T14:39:03Z rumbler31 joined #sbcl 2017-12-21T14:39:48Z Bike joined #sbcl 2017-12-21T14:48:25Z sjl joined #sbcl 2017-12-21T15:04:47Z dougk__ joined #sbcl 2017-12-21T15:05:14Z ikki joined #sbcl 2017-12-21T15:07:14Z dougk_ quit (Ping timeout: 252 seconds) 2017-12-21T15:26:29Z ikki quit (Ping timeout: 252 seconds) 2017-12-21T15:30:20Z oleo joined #sbcl 2017-12-21T15:38:39Z ikki joined #sbcl 2017-12-21T15:45:44Z ikki quit (Ping timeout: 252 seconds) 2017-12-21T15:49:19Z jibanes quit (Ping timeout: 248 seconds) 2017-12-21T15:51:13Z jibanes joined #sbcl 2017-12-21T15:57:17Z nyef``: ... Stupid GCC won't generate an indirect call with a memory operand, it wants to load it to a register. /-: 2017-12-21T15:58:12Z varjag quit (Read error: Connection reset by peer) 2017-12-21T16:01:06Z varjag joined #sbcl 2017-12-21T16:02:02Z ikki joined #sbcl 2017-12-21T16:02:13Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-12-21T16:14:11Z dougk__ quit (Ping timeout: 240 seconds) 2017-12-21T16:30:20Z rpg joined #sbcl 2017-12-21T16:58:07Z stassats quit (Ping timeout: 248 seconds) 2017-12-21T17:07:10Z dougk_ joined #sbcl 2017-12-21T17:10:59Z jibanes quit (Ping timeout: 252 seconds) 2017-12-21T17:13:03Z jibanes joined #sbcl 2017-12-21T17:26:11Z Jesin joined #sbcl 2017-12-21T17:43:07Z smurfrobot quit (Remote host closed the connection) 2017-12-21T17:51:42Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-12-21T17:53:32Z DGASAU quit (Read error: Connection reset by peer) 2017-12-21T17:57:34Z DGASAU joined #sbcl 2017-12-21T17:58:28Z rpg joined #sbcl 2017-12-21T18:06:27Z m00natic quit (Remote host closed the connection) 2017-12-21T18:10:09Z ikki quit (Ping timeout: 248 seconds) 2017-12-21T18:35:21Z smurfrobot joined #sbcl 2017-12-21T18:35:57Z ikki joined #sbcl 2017-12-21T18:36:08Z shka joined #sbcl 2017-12-21T18:41:44Z smurfrobot quit (Remote host closed the connection) 2017-12-21T18:43:39Z stassats joined #sbcl 2017-12-21T19:11:37Z rumbler31 quit (Ping timeout: 265 seconds) 2017-12-21T19:25:02Z stassats: sb-kernel:%double-float is not flushable (understandably), but that makes (values (truncate 1d0)) cons 2017-12-21T19:26:20Z stassats: two options, declare the type of sb-kernel:%unary-truncate/double-float, add a new optimizer is-flushable, which would work on types 2017-12-21T19:26:50Z stassats: or add a way to mark a code flushable from with a trasnform 2017-12-21T19:31:11Z stassats: the first option is probably better 2017-12-21T19:31:28Z nyef``: Transform to something flushable if the parameters are constant? 2017-12-21T19:31:44Z stassats: what's the use of that? 2017-12-21T19:32:00Z nyef``: Dunno then. 2017-12-21T19:32:48Z stassats: in (truncate (the double-float x)) the second value is flushable, no errors can be issued from sb-kernel:%double-float 2017-12-21T19:33:02Z nyef``: I have an angle for figuring out if a program is running on an x86oid in "long mode" or in 32-bit mode, but it requires assembly work. 2017-12-21T19:33:43Z stassats: what's the use of that? 2017-12-21T19:34:15Z nyef``: You can't tell the difference based on sizeof(void *) or sizeof(long). 2017-12-21T19:34:30Z nyef``: But they require two very different compilation regimes. 2017-12-21T19:39:49Z nyef``: Oh, and it reliably detects the case of a 32-bit userland running on a 64-bit kernel and a 64-bit userland running on a kernel that claims a 32-bit machine type. 2017-12-21T19:42:15Z smurfrobot joined #sbcl 2017-12-21T19:47:09Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-21T19:50:35Z stassats: weird DX problem 2017-12-21T19:50:53Z nyef``: DX problem? 2017-12-21T19:50:57Z dougk_ quit (Ping timeout: 248 seconds) 2017-12-21T19:51:26Z nyef``: Oh, yeah. DX problem. 2017-12-21T19:51:35Z stassats: (let ((v (list (list :good) (progv '(*) (list :bad) *)))) (declare (dynamic-extent v)) (caar (print v))) 2017-12-21T19:51:50Z stassats: don't think it's from stack-analyze 2017-12-21T19:52:08Z stassats: and "NIL is not of type SB-C::LVAR in test with DYNAMIC-EXTENT" i have already fixed 2017-12-21T19:52:14Z nyef``: Is that the incorrect-code bug? 2017-12-21T19:52:31Z stassats: yes 2017-12-21T19:53:00Z nyef``: Is (list :bad) being stack-allocated? 2017-12-21T19:53:34Z stassats: some list is not dxed 2017-12-21T19:53:48Z nyef``: Hrm. 2017-12-21T19:53:50Z stassats: yes, (list :bad) 2017-12-21T19:54:51Z nyef``: I think I'll leave you to it, then. Unless you can show that STACK is at fault? 2017-12-21T19:54:59Z stassats: sure 2017-12-21T19:55:16Z stassats: i haven't yet analyzed it enough 2017-12-21T20:10:11Z karlosz joined #sbcl 2017-12-21T20:18:06Z stassats: ruled out progv 2017-12-21T20:19:47Z stassats: (let ((v (list (list :good) (labels ((r (x) (declare (optimize (debug 0))) (cond ((zerop x)) (t (r (1- x)))))) (r 1))))) (declare (dynamic-extent v)) (caar (print v))) 2017-12-21T20:23:38Z stassats: could be a lifetime issue 2017-12-21T20:24:54Z stassats: or the recursive call is messing with the saved value 2017-12-21T20:26:08Z stassats: it does depend whether it's called twice or not 2017-12-21T20:29:31Z scymtym quit (Ping timeout: 240 seconds) 2017-12-21T20:32:41Z stassats: for some reason it resets the stack 2017-12-21T20:33:26Z stassats: nyef``: it's a stack analyze related issue 2017-12-21T20:33:39Z stassats: it works if i don't run stack-analyze 2017-12-21T20:33:49Z stassats: it inserts pop-values in the wrong place 2017-12-21T20:34:24Z karlosz quit (Quit: karlosz) 2017-12-21T20:36:09Z stassats: the recursive call to R doesn't have the dv 2017-12-21T20:36:59Z stassats: (defun f57 (x) (let ((v (list (list :good) (labels ((r (x) (declare (optimize (debug 1))) (cond (x) (t (r 33))))) (r x))))) (declare (dynamic-extent v)) (caar (print v)))) 2017-12-21T20:37:34Z stassats: https://gist.github.com/stassats/8cd155b4e5755f0fbe38ec08b21f2e12 2017-12-21T20:37:42Z stassats: https://gist.githubusercontent.com/stassats/8cd155b4e5755f0fbe38ec08b21f2e12/raw/613eb8d687504d0f2ff6c357ccbf96822d2396e2/gistfile1.txt 2017-12-21T20:37:58Z nyef``: Looking now. 2017-12-21T20:38:50Z stassats: https://gist.githubusercontent.com/stassats/8cd155b4e5755f0fbe38ec08b21f2e12/raw/b49ed25e63d2e73a6526aef5847a84aee9e4946d/gistfile1.txt 2017-12-21T20:39:11Z stassats: everything but the loop back have dv20 2017-12-21T20:41:45Z nyef``: ... it's allocating a closure for this? 2017-12-21T20:41:58Z stassats: not really 2017-12-21T20:43:19Z stassats: it's weird, the preceding IF does have dv20 at the end, how come one branch has an empty stack? 2017-12-21T20:45:36Z BitPuffin|osx quit (Ping timeout: 272 seconds) 2017-12-21T20:46:43Z nyef``: ... There's no cleanup for the LABELS environment, is there? 2017-12-21T20:47:03Z stassats: and it's a new thing 2017-12-21T20:47:26Z nyef``: What happens if you declare #'R to be DX? 2017-12-21T20:47:36Z stassats: in fact, a regression 2017-12-21T20:49:28Z nyef``: I like that we have a list of block-successor CTRANs, but having a list of block-predecessors would be nice. /-: 2017-12-21T20:49:46Z stassats: i can bisect, i guess 2017-12-21T20:50:10Z stassats: oh wait, i was testing the wrong test case 2017-12-21T20:50:23Z stassats: it's not a regression 2017-12-21T20:50:35Z nyef``: Oh, good. I was getting worried there. 2017-12-21T20:50:36Z stassats: not that it makes it any better 2017-12-21T20:50:57Z nyef``: It's better in that we have until freeze is over to come up with a fix. d-: 2017-12-21T20:51:36Z nyef``: It's something to do with the loop-prevention logic in back-propagate, I think. 2017-12-21T20:51:54Z stassats: i tried with a tagbody and setf, it works 2017-12-21T20:52:27Z nyef``: I think it's the fact that it has to take the arc from the bind for the CLAMBDA (LABELS R :IN F57) to the following block twice. 2017-12-21T20:53:09Z nyef``: Since it's the recursive-call block that screws it up. 2017-12-21T20:53:39Z stassats: tagbody does the same thing, yet it's ok 2017-12-21T20:53:55Z nyef``: Test case? 2017-12-21T20:54:08Z stassats: (tagbody :back (cond (x) (t (setf x 33) (go :back)))) 2017-12-21T20:55:41Z nyef``: I need a good block-breaker. 2017-12-21T20:56:03Z nyef``: Hrm. Maybe a no-effect PROGV? 2017-12-21T20:56:25Z stassats: it's not a primitive 2017-12-21T20:56:33Z stassats: it expands into unwind-protect 2017-12-21T20:57:41Z nyef``: Okay, do you have a lighter-weight option? 2017-12-21T20:58:01Z stassats: what do you want to do? 2017-12-21T20:58:16Z nyef``: I want to add a block to the control flow that won't get deleted or merged. 2017-12-21T20:58:37Z stassats: between which blocks? 2017-12-21T20:58:56Z nyef``: Between :BACK and the COND. 2017-12-21T20:59:20Z stassats: what would that do? 2017-12-21T20:59:49Z nyef``: The control flow in the tagbody case doesn't actually loop over the same edge twice. Inserting a block into that loop will cause a duplicate transition over that edge, and trigger our error condition. 2017-12-21T21:00:27Z stassats: so you just want to break it? 2017-12-21T21:01:12Z nyef``: Yeah, basically. 2017-12-21T21:01:38Z nyef``: It's not that tagbody is unaffected, it's that THIS tagbody isn't affected. 2017-12-21T21:02:07Z stassats: (defun f57 (x z) (declare (optimize (debug 1))) (let ((v (list (list :good) (tagbody :back (if z (go :back)) (cond (x) (t (setf x 33) (go :back))))))) (declare (dynamic-extent v)) (caar (print v)))) 2017-12-21T21:02:19Z stassats: (f57 nil nil) => ((NIL) NIL) 2017-12-21T21:03:19Z nyef``: Okay, so we know what's going on, and why. 2017-12-21T21:03:38Z stassats: i don't 2017-12-21T21:04:48Z nyef``: BACK-PROPAGATE-ONE-DX-LVAR isn't back-propagating correctly. Partly to avoid winding up in infinite loops. 2017-12-21T21:05:27Z stassats: why isn't the block even starting with the value? 2017-12-21T21:05:57Z nyef``: Because it's not found by BACK-PROPAGATE-ONE-DX-LVAR. 2017-12-21T21:06:31Z nyef``: Do you see the comment "Never follow the same path segment twice"? 2017-12-21T21:06:31Z stassats: why _back_? 2017-12-21T21:06:46Z stassats: is it doing it backwards? 2017-12-21T21:07:24Z nyef``: Because if we do it forwards, we might not find the ENTRY on all paths? 2017-12-21T21:08:18Z nyef``: Also, we're tracing from one point to possibly-many, rather than from possibly-many to one. 2017-12-21T21:08:41Z stassats: so, any fixes? 2017-12-21T21:08:42Z nyef``: Also, possibly for historical reasons. 2017-12-21T21:09:03Z nyef``: I have a possible angle. 2017-12-21T21:09:19Z stassats: it works in 1.1.7.113 2017-12-21T21:09:40Z nyef``: Isn't that before most of the STACK and DX sanity fixes? 2017-12-21T21:09:51Z stassats: i think so 2017-12-21T21:09:59Z stassats: May 27 2013 /usr/local/bin/sbcl 2017-12-21T21:10:57Z nyef``: Yeah, 2015-02-16 was my first commit to stack.lisp. 2017-12-21T21:12:05Z stassats: and i have never really touched stack.lisp 2017-12-21T21:12:19Z stassats: just the code on the way to it 2017-12-21T21:21:31Z scymtym joined #sbcl 2017-12-21T21:21:42Z nyef``: I'm going to have to think about this one for a bit. /-: 2017-12-21T21:33:13Z stassats: i still haven't narrowed down the tail-sets issue, but haven't tried much 2017-12-21T21:33:41Z stassats: better not look at it today, because i don't know the time bound it'll take 2017-12-21T21:59:30Z dougk_ joined #sbcl 2017-12-21T22:00:30Z karlosz joined #sbcl 2017-12-21T22:04:08Z dougk_ quit (Ping timeout: 252 seconds) 2017-12-21T22:06:27Z nimiux_ is now known as nimiux 2017-12-21T22:06:52Z nyef``: I now have a program that compiles on my main machine both with -m32 and without, and does Something Clever to determine if it's a 32-bit or 64-bit program, and compiles on my x32 VM and says that it's a 64-bit program. 2017-12-21T22:08:15Z nyef``: It uses GCC-style inline ASM to inject a sequence of octets into the instruction stream that are valid in both modes, but do slightly different things. 2017-12-21T22:09:22Z karlosz quit (Quit: karlosz) 2017-12-21T22:13:21Z ikki quit (Ping timeout: 248 seconds) 2017-12-21T22:15:15Z nyef``: ... I wonder if something similar would work on MIPS? 2017-12-21T22:16:52Z stassats: subtract from 0, shift right by 31? 2017-12-21T22:20:40Z nyef``: Maybe, I guess. 2017-12-21T22:21:53Z nyef``: Ah, well. Not worth worrying about right now. I won't have access to my hardware until Saturday, and don't have 64-bit or n32 userlands built yet. 2017-12-21T22:25:33Z shka quit (Quit: Konversation terminated!) 2017-12-21T22:25:55Z rpg quit (Quit: Textual IRC Client: www.textualapp.com) 2017-12-21T22:26:23Z myrkraverk quit (Remote host closed the connection) 2017-12-21T22:27:05Z myrkraverk joined #sbcl 2017-12-21T22:27:43Z sjl quit (Ping timeout: 256 seconds) 2017-12-21T22:31:33Z rumbler31 joined #sbcl 2017-12-21T22:33:29Z myrkraverk quit (Remote host closed the connection) 2017-12-21T22:36:13Z rumbler31 quit (Ping timeout: 256 seconds) 2017-12-21T22:40:27Z stassats quit (Ping timeout: 240 seconds) 2017-12-21T22:43:07Z ikki joined #sbcl 2017-12-21T22:52:00Z varjag quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-12-21T23:04:32Z nyef``: Right, the CFG loop case that I was thinking of that requires the complicated back-prop stuff is actually in the test suite: dynamic-extent.impure.lisp / (:BUG-1044465 :NASTY). 2017-12-21T23:10:40Z nyef``: And there's probably another nasty variation involving CATCH. Because of COURSE there would be. 2017-12-21T23:16:04Z nyef``: ... This CFG probably involves a transition over the cleanup boundary for the named :BLOCK, but a TAGBODY probably wouldn't, so that doesn't help. 2017-12-21T23:18:50Z Bike quit (Ping timeout: 260 seconds) 2017-12-21T23:21:58Z nyef``: ... And there's no cleanup environment for the binding part of the LET... 2017-12-21T23:30:41Z whoman quit (Ping timeout: 248 seconds) 2017-12-21T23:30:50Z whoman joined #sbcl 2017-12-21T23:34:04Z corci quit (Ping timeout: 265 seconds) 2017-12-21T23:34:50Z corci joined #sbcl 2017-12-21T23:58:30Z Bike joined #sbcl 2017-12-21T23:59:57Z Bike quit (Client Quit) 2017-12-22T00:03:20Z Bike joined #sbcl 2017-12-22T00:34:12Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-22T00:34:37Z DeadTrickster joined #sbcl 2017-12-22T00:47:19Z smurfrobot joined #sbcl 2017-12-22T00:51:27Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-22T01:21:33Z smurfrobot joined #sbcl 2017-12-22T01:26:09Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-22T01:32:35Z smurfrobot joined #sbcl 2017-12-22T01:36:59Z smurfrobot quit (Ping timeout: 256 seconds) 2017-12-22T02:53:42Z jamtho joined #sbcl 2017-12-22T03:19:50Z ikki quit (Ping timeout: 252 seconds) 2017-12-22T03:33:43Z jamtho quit (Ping timeout: 256 seconds) 2017-12-22T03:37:47Z nyef``: Okay, got a refinement of the requirements for BACK-PROPAGATE-ONE-DX-LVAR worked out. Now I "just" need to work out how to implement it... If it CAN be implemented. 2017-12-22T03:58:46Z DeadTrickster_ joined #sbcl 2017-12-22T04:02:08Z DeadTrickster quit (Ping timeout: 248 seconds) 2017-12-22T04:12:38Z Bike quit (Quit: Lost terminal) 2017-12-22T04:47:47Z rumbler31 joined #sbcl 2017-12-22T04:52:14Z rumbler31 quit (Ping timeout: 252 seconds) 2017-12-22T05:59:20Z shka joined #sbcl 2017-12-22T06:15:59Z smurfrobot joined #sbcl 2017-12-22T06:20:47Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-22T07:16:32Z milanj quit (Quit: This computer has gone to sleep) 2017-12-22T07:17:03Z smurfrobot joined #sbcl 2017-12-22T07:21:37Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-22T07:37:34Z oleo quit (Quit: Leaving) 2017-12-22T07:40:13Z scymtym quit (Ping timeout: 256 seconds) 2017-12-22T08:13:32Z jibanes quit (Ping timeout: 252 seconds) 2017-12-22T08:15:20Z jibanes joined #sbcl 2017-12-22T08:17:50Z smurfrobot joined #sbcl 2017-12-22T08:21:26Z shka quit (Quit: Konversation terminated!) 2017-12-22T08:22:43Z smurfrobot quit (Ping timeout: 256 seconds) 2017-12-22T08:34:59Z scymtym joined #sbcl 2017-12-22T08:47:46Z Jesin quit (Ping timeout: 260 seconds) 2017-12-22T08:58:18Z myrkraverk joined #sbcl 2017-12-22T09:09:08Z jack_rabbit quit (Ping timeout: 272 seconds) 2017-12-22T09:18:35Z smurfrobot joined #sbcl 2017-12-22T09:22:00Z jack_rabbit joined #sbcl 2017-12-22T09:23:13Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-22T09:33:33Z milanj joined #sbcl 2017-12-22T09:40:10Z Jesin joined #sbcl 2017-12-22T09:53:57Z fortitude quit (Ping timeout: 240 seconds) 2017-12-22T09:58:54Z smurfrobot joined #sbcl 2017-12-22T10:03:49Z BigSafari joined #sbcl 2017-12-22T10:17:53Z smurfrobot quit (Remote host closed the connection) 2017-12-22T10:23:07Z smurfrobot joined #sbcl 2017-12-22T10:27:57Z smurfrobot quit (Ping timeout: 256 seconds) 2017-12-22T10:30:54Z smurfrobot joined #sbcl 2017-12-22T10:52:22Z smurfrobot quit (Remote host closed the connection) 2017-12-22T10:52:54Z smurfrobot joined #sbcl 2017-12-22T10:57:26Z smurfrobot quit (Ping timeout: 252 seconds) 2017-12-22T11:22:20Z jamtho joined #sbcl 2017-12-22T11:24:40Z m00natic joined #sbcl 2017-12-22T11:54:17Z smurfrobot joined #sbcl 2017-12-22T11:59:06Z smurfrobot quit (Ping timeout: 268 seconds) 2017-12-22T12:30:46Z BigSafari quit (Quit: Textual IRC Client: www.textualapp.com) 2017-12-22T12:52:34Z ave1 quit (Changing host) 2017-12-22T12:52:34Z ave1 joined #sbcl 2017-12-22T13:19:45Z ikki joined #sbcl 2017-12-22T13:33:51Z smurfrobot joined #sbcl 2017-12-22T13:44:19Z Bike joined #sbcl 2017-12-22T13:44:21Z scymtym: corci (the bot, not the server) will soon go on vacation until around january 2. email notification should not be affected 2017-12-22T13:45:58Z Jesin quit (Quit: Leaving) 2017-12-22T13:46:37Z smurfrobot quit (Remote host closed the connection) 2017-12-22T13:47:03Z milanj quit (Quit: This computer has gone to sleep) 2017-12-22T13:47:43Z oleo2 joined #sbcl 2017-12-22T13:48:22Z nyef``: So, we'll have just under a week of development time with no bot-powered notification of breakages? 2017-12-22T13:48:29Z nyef``: Good to know. 2017-12-22T14:02:20Z milanj joined #sbcl 2017-12-22T14:06:17Z scymtym: nyef``: well, email notifications should continue to work. do you want those? 2017-12-22T14:06:31Z nyef``: No, thank you. 2017-12-22T14:07:57Z smurfrobot joined #sbcl 2017-12-22T14:17:03Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-22T14:18:29Z pfdietz: Good morning. 2017-12-22T14:18:53Z nyef``: Hello pfdietz. 2017-12-22T14:19:41Z nyef``: pfdietz: Can your code generator produce anything like (let ((x 0)) (catch 'foo (tagbody :foo (setf x (logand 3 (1+ x))) (funcall f x) (go :foo)))) ? 2017-12-22T14:20:41Z pfdietz: It depends on whether the code is expected to run to completion without error. The tagbodies I have been generating are acyclic to avoid infinite loops. 2017-12-22T14:21:20Z pfdietz: There's also a constraint from wanting the code to be prune-able, so I can reduce test cases. 2017-12-22T14:21:39Z nyef``: "All" you have to do is pass (lambda (x) (when (zerop x) (throw 'foo))) as F, and it'll exit. 2017-12-22T14:22:31Z nyef``: For that matter, you could arrange for a CATCH in the calling environment outside of the test function. 2017-12-22T14:22:48Z pfdietz: Yes I've thought of that. Would be easy to add. 2017-12-22T14:22:56Z fortitude joined #sbcl 2017-12-22T14:23:03Z stassats joined #sbcl 2017-12-22T14:23:18Z nyef``: The critical bit here is that it IS a loop in the CFG which has no direct exits. 2017-12-22T14:23:28Z nyef``: Hello stassats. 2017-12-22T14:24:12Z pfdietz: I could generate general tagbodies and use with-timeout to detect looping. 2017-12-22T14:24:33Z nyef``: ... Please don't? 2017-12-22T14:24:34Z pfdietz: That's SBCL-specific, but I'm doing more of that these days. 2017-12-22T14:25:11Z nyef``: Even if it might be safe in this case, with-timeout is not safe in the general case, and the less precedent there is for using it, the better. 2017-12-22T14:25:18Z pfdietz: Why not? I actually already have uses of with-timeout because of some pathological cases involving enormous bignums during type derivation. 2017-12-22T14:25:28Z pfdietz: Hasn't given me trouble yet. 2017-12-22T14:26:55Z pfdietz: lp 1734714 2017-12-22T14:26:56Z specbot: https://bugs.launchpad.net/bugs/1734714 2017-12-22T14:27:44Z nyef``: WITH-TIMEOUT almost invariably involves an asynchronous unwind. SBCL goes to some amount of trouble to prevent such a thing from breaking GC invariants when it occurs in Lisp code, but it cannot protect alien code, nor can it protect against corruption or resource leaks in higher-level constructs. 2017-12-22T14:30:13Z nyef``: On the other paw, I don't really see any way to "safely" stop a runaway process like that other than a big old SIGDIE. And even that isn't "safe", as there are some resources that can be leaked, open files can be corrupted, et cetera. 2017-12-22T14:30:47Z pfdietz: Could it corrupt the stacks of bindings of special variables? 2017-12-22T14:31:01Z nyef``: I don't believe so? 2017-12-22T14:31:21Z pfdietz: That's about the only thing I'd be worrying about, so good. I can avoid unwind-protect and I don't use alien code. 2017-12-22T14:31:26Z nyef``: The BIND and UNBIND operations were designed with this particular kind of interruptability in mind. 2017-12-22T14:31:32Z nyef``: You don't do I/O? 2017-12-22T14:32:00Z pfdietz: Not inside the with-timeout form. 2017-12-22T14:32:15Z nyef``: The compiler doesn't do I/O? 2017-12-22T14:32:43Z pfdietz: SBCL compiler? I don't care if I/O from that is lost or mangled. 2017-12-22T14:33:07Z nyef``: Mmm. And it'd be operating in terms of already-open streams, so no real chance of a leak there. Okay. 2017-12-22T14:33:17Z pfdietz: The forms being compiled are in-memory, not read from files. 2017-12-22T14:33:42Z pfdietz: And I suppress warnings or it would spam way too much. 2017-12-22T14:34:35Z nyef``: stassats: Can I presume that any DX allocation for an ENTRY occurs within the bounds of the NODE-HOME-LAMBDA (or possibly the next outer LAMBDA) of the ENTRY? 2017-12-22T14:34:36Z pfdietz: There's an option to dump failing forms once detected, but I mostly used that on CLISP which tended to outright die during minimization. 2017-12-22T14:35:15Z pfdietz: (or it died when it found the bug, which required dumping all forms to file before testing them) 2017-12-22T14:35:16Z nyef``: pfdietz: And you could plausibly do the dumping outside of the WITH-TIMEOUT anyway, right? 2017-12-22T14:35:24Z pfdietz: Yes, I do. 2017-12-22T14:35:38Z nyef``: Okay, that's probably fine then. Unless it isn't. (-: 2017-12-22T14:42:11Z stassats quit (Quit: ZNC 1.6.2+deb1 - http://znc.in) 2017-12-22T14:44:31Z oleo2 quit (Ping timeout: 240 seconds) 2017-12-22T14:48:42Z pfdietz: This was one of my favorite random tester bugs in CLISP. Crashed the lisp immediately, so I had to hand prune the test cases. https://sourceforge.net/p/clisp/bugs/200/ 2017-12-22T14:50:27Z pfdietz: grumble soureforge server problem 2017-12-22T14:58:11Z rumbler31 joined #sbcl 2017-12-22T15:00:09Z stassats joined #sbcl 2017-12-22T15:02:55Z stassats: nyef``: not sure 2017-12-22T15:04:12Z nyef``: So, do I build under that assumption and wait for the possible failure case, or do I work under the conservative assumption that the bound is the entire component? 2017-12-22T15:04:43Z stassats: i don't think it can dx across function calls boundaries 2017-12-22T15:04:51Z stassats: the stack and all that 2017-12-22T15:05:09Z stassats: only if the local function is let converted to something 2017-12-22T15:06:25Z nyef``: Right, but the CFG traversal should bound against that. 2017-12-22T15:09:43Z milanj quit (Quit: This computer has gone to sleep) 2017-12-22T15:09:46Z sjl joined #sbcl 2017-12-22T15:09:47Z nyef``: ... I wonder if the block dominators are computed properly for NLEs? 2017-12-22T15:18:52Z smurfrobot joined #sbcl 2017-12-22T15:23:45Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-22T15:25:06Z Jesin joined #sbcl 2017-12-22T15:27:42Z Jesin quit (Remote host closed the connection) 2017-12-22T15:29:24Z Jesin joined #sbcl 2017-12-22T15:35:39Z karlosz joined #sbcl 2017-12-22T15:37:24Z karlosz quit (Client Quit) 2017-12-22T15:37:54Z karlosz joined #sbcl 2017-12-22T15:41:46Z eudoxia joined #sbcl 2017-12-22T15:43:27Z karlosz quit (Ping timeout: 248 seconds) 2017-12-22T15:54:52Z milanj joined #sbcl 2017-12-22T16:10:12Z oleo joined #sbcl 2017-12-22T16:14:39Z dougk_ joined #sbcl 2017-12-22T16:19:43Z smurfrobot joined #sbcl 2017-12-22T16:24:33Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-22T16:32:32Z corci quit (Remote host closed the connection) 2017-12-22T16:36:53Z smurfrobot joined #sbcl 2017-12-22T16:49:33Z stassats: scymtym: you know what else would be good to run on the CI? crossbuild-runner 2017-12-22T16:49:45Z stassats: just on one target, maybe a subproject 2017-12-22T16:58:55Z scymtym: stassats: i can try to set that up. maybe tomorrow 2017-12-22T16:59:36Z stassats: with the freeze, there's no hurry 2017-12-22T16:59:58Z stassats: i think it also doesn't disable the debugger, so that would have to be adjusted 2017-12-22T17:00:39Z dougk_ quit (Ping timeout: 268 seconds) 2017-12-22T17:03:44Z stassats: dougk: not sure weather you've seen it, but heap-reloc/embiggen.lisp does something unexpected 2017-12-22T17:34:02Z smurfrobot quit (Remote host closed the connection) 2017-12-22T17:36:46Z smurfrobot joined #sbcl 2017-12-22T17:47:19Z m00natic quit (Remote host closed the connection) 2017-12-22T17:51:38Z smurfrobot quit (Remote host closed the connection) 2017-12-22T17:54:08Z smurfrobot joined #sbcl 2017-12-22T17:58:52Z smurfrobot quit (Remote host closed the connection) 2017-12-22T18:14:40Z smurfrobot joined #sbcl 2017-12-22T18:18:32Z ikki quit (Ping timeout: 252 seconds) 2017-12-22T18:19:25Z smurfrobot quit (Ping timeout: 256 seconds) 2017-12-22T18:26:13Z smurfrobot joined #sbcl 2017-12-22T18:27:29Z scymtym quit (Ping timeout: 265 seconds) 2017-12-22T18:37:14Z ikki joined #sbcl 2017-12-22T18:39:27Z smurfrobot quit (Remote host closed the connection) 2017-12-22T19:25:40Z rpg joined #sbcl 2017-12-22T19:36:30Z DeadTrickster_ quit (Remote host closed the connection) 2017-12-22T19:38:11Z whoman quit (Quit: Leaving) 2017-12-22T19:43:03Z whoman joined #sbcl 2017-12-22T19:51:26Z varjag joined #sbcl 2017-12-22T19:54:07Z foom2 joined #sbcl 2017-12-22T19:57:23Z foom quit (Ping timeout: 265 seconds) 2017-12-22T20:02:49Z josemanuel joined #sbcl 2017-12-22T20:14:27Z copec quit (Ping timeout: 272 seconds) 2017-12-22T20:16:53Z copec joined #sbcl 2017-12-22T20:22:22Z eudoxia quit (Quit: Leaving) 2017-12-22T20:26:42Z scymtym joined #sbcl 2017-12-22T20:27:30Z attila_lendvai joined #sbcl 2017-12-22T20:29:20Z nimiux quit (Ping timeout: 248 seconds) 2017-12-22T20:30:17Z nimiux joined #sbcl 2017-12-22T20:37:16Z cryptomarauder[m is now known as cryptomarauder 2017-12-22T20:38:30Z karlosz joined #sbcl 2017-12-22T20:43:11Z cro__ quit (Quit: Leaving) 2017-12-22T20:43:43Z cromachina joined #sbcl 2017-12-22T20:47:58Z milanj quit (Quit: This computer has gone to sleep) 2017-12-22T21:23:17Z karlosz quit (Quit: karlosz) 2017-12-22T22:06:10Z fortitude quit (Quit: Leaving) 2017-12-22T22:10:09Z ikki quit (Ping timeout: 248 seconds) 2017-12-22T22:11:36Z Intensity quit (Ping timeout: 246 seconds) 2017-12-22T22:12:34Z Bike quit (Ping timeout: 260 seconds) 2017-12-22T22:15:21Z eschatologist quit (Ping timeout: 264 seconds) 2017-12-22T22:16:14Z eschatologist joined #sbcl 2017-12-22T22:19:25Z Jesin quit (Quit: Leaving) 2017-12-22T22:38:55Z Intensity joined #sbcl 2017-12-22T22:54:27Z karlosz joined #sbcl 2017-12-22T22:59:27Z karlosz quit (Quit: karlosz) 2017-12-22T23:00:49Z karlosz joined #sbcl 2017-12-22T23:01:43Z Bike joined #sbcl 2017-12-22T23:23:47Z sjl quit (Ping timeout: 250 seconds) 2017-12-22T23:23:54Z ikki joined #sbcl 2017-12-22T23:32:01Z fiddlerwoaroof quit (Ping timeout: 250 seconds) 2017-12-22T23:32:45Z stassats quit (Ping timeout: 264 seconds) 2017-12-22T23:40:39Z varjag quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-12-22T23:43:33Z rpg quit (Remote host closed the connection) 2017-12-22T23:44:11Z rpg joined #sbcl 2017-12-22T23:48:47Z karlosz quit (Ping timeout: 248 seconds) 2017-12-22T23:52:33Z rumbler31 quit (Ping timeout: 248 seconds) 2017-12-23T00:30:11Z rpg quit (Quit: Textual IRC Client: www.textualapp.com) 2017-12-23T00:46:42Z josemanuel quit (Quit: leaving) 2017-12-23T02:24:14Z smurfrobot joined #sbcl 2017-12-23T02:29:29Z smurfrobot quit (Remote host closed the connection) 2017-12-23T02:29:44Z smurfrobot joined #sbcl 2017-12-23T02:37:23Z smurfrobot quit (Remote host closed the connection) 2017-12-23T02:40:39Z smurfrobot joined #sbcl 2017-12-23T02:45:53Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-23T02:49:03Z ikki quit (Ping timeout: 248 seconds) 2017-12-23T03:02:05Z ikki joined #sbcl 2017-12-23T03:15:04Z milanj joined #sbcl 2017-12-23T03:20:17Z jack_rabbit quit (Ping timeout: 252 seconds) 2017-12-23T03:34:04Z jack_rabbit joined #sbcl 2017-12-23T04:00:15Z christoph_debian quit (Ping timeout: 250 seconds) 2017-12-23T04:20:25Z christoph_debian joined #sbcl 2017-12-23T04:54:23Z Bike quit (Ping timeout: 248 seconds) 2017-12-23T05:06:13Z Bike joined #sbcl 2017-12-23T05:30:16Z ikki quit (Ping timeout: 260 seconds) 2017-12-23T06:11:22Z pfdietz quit (Ping timeout: 272 seconds) 2017-12-23T06:15:42Z Bike quit (Quit: Lost terminal) 2017-12-23T06:49:46Z karlosz joined #sbcl 2017-12-23T07:16:49Z jibanes quit (Ping timeout: 248 seconds) 2017-12-23T07:17:21Z karlosz quit (Quit: karlosz) 2017-12-23T07:18:46Z jibanes joined #sbcl 2017-12-23T07:38:39Z smurfrobot joined #sbcl 2017-12-23T07:43:11Z smurfrobot quit (Ping timeout: 252 seconds) 2017-12-23T07:43:25Z karlosz joined #sbcl 2017-12-23T08:04:44Z karlosz quit (Quit: karlosz) 2017-12-23T08:56:52Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-23T08:59:30Z attila_lendvai joined #sbcl 2017-12-23T08:59:30Z attila_lendvai quit (Changing host) 2017-12-23T08:59:30Z attila_lendvai joined #sbcl 2017-12-23T09:08:00Z rumbler31 joined #sbcl 2017-12-23T09:12:05Z rumbler31 quit (Ping timeout: 240 seconds) 2017-12-23T09:30:26Z milanj quit (Quit: This computer has gone to sleep) 2017-12-23T09:30:57Z milanj joined #sbcl 2017-12-23T09:38:27Z BitPuffin|osx joined #sbcl 2017-12-23T10:01:39Z karlosz joined #sbcl 2017-12-23T10:03:59Z varjag joined #sbcl 2017-12-23T10:07:39Z smurfrobot joined #sbcl 2017-12-23T10:12:57Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-23T10:29:41Z smurfrobot joined #sbcl 2017-12-23T10:34:33Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-23T10:35:57Z karlosz quit (Quit: karlosz) 2017-12-23T10:51:26Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-23T10:53:29Z attila_lendvai joined #sbcl 2017-12-23T11:15:57Z varjag quit (Ping timeout: 264 seconds) 2017-12-23T11:33:12Z varjag joined #sbcl 2017-12-23T11:53:57Z varjag quit (Ping timeout: 240 seconds) 2017-12-23T11:56:46Z varjag joined #sbcl 2017-12-23T12:33:45Z milanj quit (Quit: This computer has gone to sleep) 2017-12-23T12:37:51Z scymtym quit (Ping timeout: 248 seconds) 2017-12-23T12:39:28Z milanj joined #sbcl 2017-12-23T12:50:41Z varjag quit (Ping timeout: 248 seconds) 2017-12-23T12:53:09Z BitPuffin|osx quit (Ping timeout: 264 seconds) 2017-12-23T12:58:40Z stassats joined #sbcl 2017-12-23T13:04:23Z scymtym joined #sbcl 2017-12-23T13:08:49Z leah2 quit (Ping timeout: 265 seconds) 2017-12-23T13:12:31Z leah2 joined #sbcl 2017-12-23T13:16:30Z varjag joined #sbcl 2017-12-23T13:16:31Z scymtym_ joined #sbcl 2017-12-23T13:20:54Z scymtym quit (Ping timeout: 265 seconds) 2017-12-23T13:21:26Z varjag quit (Ping timeout: 252 seconds) 2017-12-23T13:51:50Z milanj quit (Quit: This computer has gone to sleep) 2017-12-23T13:57:12Z scymtym_: stassats: https://ci.cor-lab.org/job/sbcl-cross-build-master/ 2017-12-23T15:21:49Z stassats: great, thanks 2017-12-23T15:22:01Z stassats: scymtym_: have you tried breaking it? 2017-12-23T15:24:39Z scymtym_: stassats: not yet. i'm also thinking about parallelizing the backends 2017-12-23T15:24:59Z scymtym_: breaking it now 2017-12-23T15:25:08Z stassats: having different build configurations? 2017-12-23T15:25:41Z stassats: am i subscribed to the failures? 2017-12-23T15:26:27Z scymtym_: you should be receiving an email if i managed to break the build 2017-12-23T15:27:10Z scymtym_: i guess i could do multiple "axis" on for configuration and one for backend, but that would be a lot of builds 2017-12-23T15:27:25Z scymtym_: not sure i could still justify that as necessary for my work 2017-12-23T15:27:33Z stassats: can it depend on the upstream binary? 2017-12-23T15:27:48Z scymtym_: probably. what do you have in mind excatly? 2017-12-23T15:28:11Z stassats: from https://ci.cor-lab.org/job/sbcl-master/ 2017-12-23T15:28:32Z scymtym_: in general, yes 2017-12-23T15:29:19Z scymtym_: it could, for example, copy the some output files from the --fancy build before starting the build 2017-12-23T15:29:47Z scymtym_: did you get the email? 2017-12-23T15:30:07Z stassats: yes 2017-12-23T15:30:35Z scymtym_: the downside with the current setup is that the job name doesn't tell you which backend failed 2017-12-23T15:30:49Z scymtym_: so it might be better to have an axis for the backend 2017-12-23T15:31:22Z stassats: how does https://ci.cor-lab.org/job/sbcl-master-compare-outputs/ operate? 2017-12-23T15:32:07Z scymtym_: when it still worked, it copied the (cold, i think) cores from sbcl-master for different hosts and compared them 2017-12-23T15:32:58Z stassats: so crossbuild-runner could copy sbcl and sbcl.core 2017-12-23T15:34:12Z scymtym_: yes 2017-12-23T15:38:40Z scymtym_: ok, so copy src/runtime/sbcl, output/sbcl.core from sbcl-master default-x86_64 into the workspace, execute the body of the loop in crossbuild-runner for one backend. repeat for all backends? 2017-12-23T15:39:21Z nyef`` quit (Ping timeout: 264 seconds) 2017-12-23T15:52:52Z stassats: scymtym_: x86 and x86-64 could probably be skipped 2017-12-23T15:56:56Z scymtym_: stassats: as in doing only one? sure, i still have to say from where exactly the artifact should be copied 2017-12-23T16:05:33Z scymtym_: should the crossbuild job clone from sourceforge and copy specific files from sbcl-master or instead copy the entire workspace from sbcl-master as a starting point? 2017-12-23T16:19:05Z jibanes quit (Ping timeout: 252 seconds) 2017-12-23T16:20:50Z jibanes joined #sbcl 2017-12-23T16:21:15Z stassats: scymtym_: as in doing neither, x86oids are covered by all other tests 2017-12-23T16:21:31Z stassats: i guess doesn't even have to clone anew, just copy whatever sbcl-master-default-x86-64 produces 2017-12-23T16:23:09Z scymtym_: let met try that 2017-12-23T16:23:30Z scymtym_: unrelated: with one 300-byte function for each base, %OUTPUT-REASONABLE-INTEGER-IN-BASE (for fixnums) can be between 3 times and 5 times faster. worth it? 2017-12-23T16:38:41Z scymtym_: stassats: this is what i ended up with: https://techfak.de/~jmoringe/cross-build-setup.png . the architecture variable ranges over everything except x86 and x86_64. if that seems fine to you, i will leave it like that and re-enable email notification 2017-12-23T16:40:47Z milanj joined #sbcl 2017-12-23T16:41:11Z milanj quit (Client Quit) 2017-12-23T16:56:28Z stassats: scymtym_: add --lose-on-corruption 2017-12-23T16:56:30Z stassats: and --disable-ldb 2017-12-23T16:57:56Z scymtym_: stassats: got it. anything else? 2017-12-23T17:02:52Z Jesin joined #sbcl 2017-12-23T17:06:07Z scymtym_: (i'm asking because i want to test the whole chain: start sbcl-master, have it start sbcl-cross-build-master) 2017-12-23T17:07:37Z stassats: no recent funcallable-instance failures, over 15 builds 2017-12-23T17:07:53Z stassats: i guess i could write "More reliably signal handling on macOS" into NEWS 2017-12-23T17:08:19Z stassats: maybe some more test runs, though now there's not that many commits 2017-12-23T17:10:53Z scymtym_: builds can be started at anyone's discretion 2017-12-23T17:11:19Z stassats: i know, but don't want to run things unnecessarily 2017-12-23T17:11:33Z scymtym_: ok 2017-12-23T17:11:56Z scymtym_: that said, i'm doing one additional build now to test the pipeline 2017-12-23T17:11:59Z stassats: looks like the mach exception api is better for shared libraries, but it appears it's not allowed on iOS 2017-12-23T17:13:08Z stassats: scymtym_: my test is not reliable, so each additional build makes the confidence approach 100%, never touching it 2017-12-23T17:13:55Z stassats: and i couldn't analytically check the failure path, so i'm just hoping that it's fixed 2017-12-23T17:17:39Z scymtym_: with reduced flakiness and other false positives, we should be in a much better position to notice real but rare problems 2017-12-23T17:19:00Z stassats: there's a timer test hanging on x86, not reproducible locally 2017-12-23T17:19:31Z stassats: i could read the code and think hard with darwin, since it uses a different scheme, but i would know where to look with x86 2017-12-23T17:19:39Z stassats: wouldn't 2017-12-23T18:40:23Z scymtym_ quit (Ping timeout: 265 seconds) 2017-12-23T18:54:50Z fiddlerwoaroof joined #sbcl 2017-12-23T19:03:21Z eschatologist quit (Ping timeout: 264 seconds) 2017-12-23T19:09:18Z jack_rabbit quit (Read error: Connection reset by peer) 2017-12-23T19:19:33Z eschatologist joined #sbcl 2017-12-23T19:19:47Z varjag joined #sbcl 2017-12-23T20:39:21Z scymtym joined #sbcl 2017-12-23T20:56:17Z varjag quit (Ping timeout: 252 seconds) 2017-12-23T20:56:52Z varjag joined #sbcl 2017-12-23T22:12:47Z stassats quit (Ping timeout: 248 seconds) 2017-12-23T22:16:06Z Bike joined #sbcl 2017-12-23T23:22:39Z stassats joined #sbcl 2017-12-23T23:47:42Z nyef`` joined #sbcl 2017-12-23T23:54:54Z Bike quit (Ping timeout: 260 seconds) 2017-12-23T23:59:38Z nyef``: In (lambda (f x) (let ((z (let ((w (list x))) (list w x)))) (declare (dynamic-extent z)) (funcall f z))), should W be stack allocated? Why or why not? 2017-12-24T00:01:32Z smurfrobot joined #sbcl 2017-12-24T00:05:51Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-24T00:32:51Z varjag quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-12-24T00:50:23Z oleo2 joined #sbcl 2017-12-24T00:55:27Z oleo2 quit (Ping timeout: 265 seconds) 2017-12-24T00:56:47Z stassats` joined #sbcl 2017-12-24T00:57:36Z stassats`: nyef``: but it should be 2017-12-24T00:58:41Z stassats quit (Ping timeout: 248 seconds) 2017-12-24T01:04:18Z stassats`: but we don't handle that case because it's actually the same as (list (list x) x) after let arg propagation 2017-12-24T01:11:31Z stassats` quit (Ping timeout: 260 seconds) 2017-12-24T01:56:12Z nyef``: So, I claim that W should be stack allocated, that SBCL doesn't currently do so, and that declaring W to be DYNAMIC-EXTENT would be wrong because the value escapes. 2017-12-24T01:57:04Z nyef``: Hrm. Actually, the value merely escaping might not make it wrong, so long as nothing actually references the value? 2017-12-24T02:11:00Z dougk_ joined #sbcl 2017-12-24T03:36:27Z dougk_ quit (Ping timeout: 240 seconds) 2017-12-24T03:58:07Z nyef``: ... The compiler can tell that the result of calling LIST is a CONS, but can't tell that the result of calling LIST with two or more arguments is a (CONS * CONS)? 2017-12-24T03:58:30Z nyef`` sighs. 2017-12-24T03:58:35Z nyef``: Another one for the list, I guess. /-: 2017-12-24T04:15:15Z nyef``: Best guess as to the REASON why it can't make that derivation is that the program could RPLACD the new CONS. 2017-12-24T04:15:27Z nyef``: ... but there are ways around that. 2017-12-24T04:17:54Z pkhuong: yeah, without escape analysis, we're stuck with CONS 2017-12-24T04:31:28Z nyef``: Am I going to find anything about escape analysis in Muchnick? 2017-12-24T04:33:54Z nyef``: Muchnick is '97, earliest reference (of only four!) on Wikipedia is '03. 2017-12-24T04:55:18Z smurfrobot joined #sbcl 2017-12-24T04:59:27Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-24T05:17:07Z pkhuong: that doesn't sound right... 2017-12-24T05:57:26Z pkhuong: https://pdfs.semanticscholar.org/8059/ddbc4ead7f6f263cfc81e9fde8e210b5464e.pdf from '92, for lisp. 2017-12-24T05:57:32Z pkhuong: (pure lisp, looks like) 2017-12-24T05:57:59Z pkhuong: before java, I don't think anyone cared about escape analysis except us weird FP people. 2017-12-24T05:58:22Z pkhuong: now clang will even replace malloc/free with stack allocation or a scalarised struct 2017-12-24T07:10:50Z smurfrobot joined #sbcl 2017-12-24T07:15:32Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-24T07:56:15Z nimiux quit (Ping timeout: 248 seconds) 2017-12-24T08:26:41Z scymtym quit (Remote host closed the connection) 2017-12-24T08:40:39Z stassats` joined #sbcl 2017-12-24T08:47:14Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-24T08:48:58Z attila_lendvai joined #sbcl 2017-12-24T09:19:11Z stassats` quit (Read error: Connection reset by peer) 2017-12-24T09:19:19Z stassats` joined #sbcl 2017-12-24T09:24:03Z stassats` left #sbcl 2017-12-24T10:09:56Z jibanes quit (Ping timeout: 252 seconds) 2017-12-24T10:11:57Z jibanes joined #sbcl 2017-12-24T10:12:44Z Posterdati quit (Remote host closed the connection) 2017-12-24T10:16:32Z Posterdati joined #sbcl 2017-12-24T10:18:12Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-24T10:19:19Z attila_lendvai joined #sbcl 2017-12-24T10:30:17Z josemanuel joined #sbcl 2017-12-24T10:58:46Z karlosz joined #sbcl 2017-12-24T11:11:16Z smurfrobot joined #sbcl 2017-12-24T11:14:06Z karlosz quit (Ping timeout: 260 seconds) 2017-12-24T11:15:45Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-24T12:21:50Z smurfrobot joined #sbcl 2017-12-24T12:22:48Z pfdietz joined #sbcl 2017-12-24T12:40:32Z smurfrobot quit (Remote host closed the connection) 2017-12-24T13:07:36Z smurfrobot joined #sbcl 2017-12-24T13:11:50Z ave1 quit (Ping timeout: 276 seconds) 2017-12-24T13:37:27Z smurfrobot quit (Remote host closed the connection) 2017-12-24T14:07:55Z stassats joined #sbcl 2017-12-24T14:16:42Z smurfrobot joined #sbcl 2017-12-24T14:20:44Z stassats: got (values (truncate (the double-float x))) to not cons 2017-12-24T14:21:00Z stassats: solve by introducing (locally (declare (flushable %double-float))) 2017-12-24T14:26:55Z smurfrobot quit (Remote host closed the connection) 2017-12-24T14:56:50Z stassats: i wonder what else can i apply locally FLUSHABLE to 2017-12-24T14:57:54Z stassats: ok, ROUND needs it as well 2017-12-24T15:01:42Z stassats: doesn't work, lexenv not being propagated properly or something 2017-12-24T15:12:25Z varjag joined #sbcl 2017-12-24T15:16:14Z stassats: right 2017-12-24T15:19:43Z smurfrobot joined #sbcl 2017-12-24T15:20:12Z stassats: it would've been better to make %double-float flushable based on the argument type, but a declaration is easier to implement 2017-12-24T15:24:18Z stassats: but how often do people leave unused values and expect things to be fast, truncate's unused values come from the system, so it makes sense to optimize 2017-12-24T15:32:01Z pkhuong: can do "unsafely" flush values that are dropped by VALUES? 2017-12-24T15:35:01Z pkhuong: *can we 2017-12-24T15:35:12Z pkhuong: probably not standard compliant :\ 2017-12-24T15:35:24Z stassats: yes, but in TRUNCATE %double-float can be safely flushed 2017-12-24T15:39:51Z stassats: though %double-float isn't even marked unsafely-flushable 2017-12-24T16:36:10Z nyef``: ... I'm semi-tempted to try and write a new compiler for SBCL... and to call it "Ruby". 2017-12-24T16:40:26Z stassats: not Perl? 2017-12-24T16:46:33Z nyef``: "Perl" would be far less plausible. 2017-12-24T16:49:31Z smurfrobot quit (Remote host closed the connection) 2017-12-24T16:54:16Z smurfrobot joined #sbcl 2017-12-24T16:55:06Z smurfrobot quit (Remote host closed the connection) 2017-12-24T16:55:21Z smurfrobot joined #sbcl 2017-12-24T17:21:39Z smurfrobot quit (Remote host closed the connection) 2017-12-24T17:25:42Z smurfrobot joined #sbcl 2017-12-24T17:31:36Z stassats: Pearl then? 2017-12-24T17:37:03Z nyef``: Too great a price. d-: 2017-12-24T17:54:36Z smurfrobot quit (Remote host closed the connection) 2017-12-24T18:22:36Z smurfrobot joined #sbcl 2017-12-24T18:27:51Z Bike joined #sbcl 2017-12-24T18:29:20Z smurfrobot quit (Ping timeout: 252 seconds) 2017-12-24T18:33:29Z shka joined #sbcl 2017-12-24T18:47:21Z Jesin quit (Quit: Leaving) 2017-12-24T18:52:33Z smurfrobot joined #sbcl 2017-12-24T18:53:43Z nyef``: Oh, great. My VPN host machine is dead. /-: 2017-12-24T18:57:03Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-24T18:58:11Z smurfrobot joined #sbcl 2017-12-24T19:00:12Z nyef``: ... corrupt root filesystem. Lovely. 2017-12-24T19:02:13Z nyef``: ... root filesystem device isn't responding? 2017-12-24T19:02:21Z Jesin joined #sbcl 2017-12-24T19:02:53Z smurfrobot quit (Ping timeout: 252 seconds) 2017-12-24T19:18:27Z smurfrobot joined #sbcl 2017-12-24T19:23:11Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-24T19:28:59Z smurfrobot joined #sbcl 2017-12-24T19:32:51Z lacedaemon is now known as fe[nl]ix 2017-12-24T19:33:14Z Bike quit (Ping timeout: 260 seconds) 2017-12-24T19:33:21Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-24T19:36:09Z smurfrobot joined #sbcl 2017-12-24T19:40:49Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-24T19:42:03Z smurfrobot joined #sbcl 2017-12-24T19:43:33Z varjag quit (Ping timeout: 264 seconds) 2017-12-24T19:45:06Z smurfrob_ joined #sbcl 2017-12-24T19:46:53Z smurfrobot quit (Ping timeout: 252 seconds) 2017-12-24T19:49:53Z smurfrob_ quit (Ping timeout: 256 seconds) 2017-12-24T19:50:33Z smurfrobot joined #sbcl 2017-12-24T19:55:37Z smurfrobot quit (Ping timeout: 268 seconds) 2017-12-24T19:56:08Z smurfrobot joined #sbcl 2017-12-24T20:00:27Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-24T20:01:20Z smurfrobot joined #sbcl 2017-12-24T20:06:19Z smurfrobot quit (Ping timeout: 256 seconds) 2017-12-24T20:08:54Z smurfrobot joined #sbcl 2017-12-24T20:09:08Z varjag joined #sbcl 2017-12-24T20:13:57Z varjag quit (Ping timeout: 240 seconds) 2017-12-24T20:25:13Z jibanes quit (Ping timeout: 268 seconds) 2017-12-24T20:27:02Z jibanes joined #sbcl 2017-12-24T20:57:12Z stassats: got (defun foo (bar) (multiple-value-call bar 1 2)) to not use tail-call-variable 2017-12-24T20:57:28Z stassats: with some ad-hoc ir surgery, need to abstract that bit away 2017-12-24T21:01:30Z stassats: (right now only (multiple-value-call #'bar 1 2) works) 2017-12-24T21:02:03Z stassats: since it's only able to change refs, i'm making it work on LVARs 2017-12-24T21:03:37Z stassats: revisited my "Optimize (multiple-value-call bar 1)" note, and "oh, that's easy" 2017-12-24T21:04:16Z smurfrobot quit (Remote host closed the connection) 2017-12-24T21:05:30Z stassats: not many optimizations this month, and i already have a couple for the next cycle 2017-12-24T21:09:57Z smurfrobot joined #sbcl 2017-12-24T21:14:45Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-24T21:21:37Z smurfrobot joined #sbcl 2017-12-24T21:25:53Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-24T21:29:45Z Jesin quit (Ping timeout: 264 seconds) 2017-12-24T21:31:33Z smurfrobot joined #sbcl 2017-12-24T21:36:02Z Jesin joined #sbcl 2017-12-24T21:36:05Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-24T21:36:56Z smurfrobot joined #sbcl 2017-12-24T21:41:50Z smurfrobot quit (Ping timeout: 252 seconds) 2017-12-24T21:43:05Z shka quit (Ping timeout: 240 seconds) 2017-12-24T21:44:26Z smurfrobot joined #sbcl 2017-12-24T21:48:59Z smurfrobot quit (Ping timeout: 252 seconds) 2017-12-24T21:54:40Z smurfrobot joined #sbcl 2017-12-24T21:59:16Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-24T22:04:52Z stassats: breaks self call recognition for some reason, which is strange, since it's done at ir1 conversion time 2017-12-24T22:15:58Z stassats: a missing reoptimize-lvar 2017-12-24T22:45:58Z varjag joined #sbcl 2017-12-24T22:51:47Z karlosz joined #sbcl 2017-12-24T22:53:27Z smurfrobot joined #sbcl 2017-12-24T22:58:17Z smurfrobot quit (Ping timeout: 252 seconds) 2017-12-24T23:07:53Z smurfrobot joined #sbcl 2017-12-24T23:12:46Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-24T23:13:43Z smurfrobot joined #sbcl 2017-12-24T23:18:36Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-24T23:24:03Z smurfrobot joined #sbcl 2017-12-24T23:28:27Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-24T23:34:11Z smurfrobot joined #sbcl 2017-12-24T23:38:26Z smurfrobot quit (Ping timeout: 252 seconds) 2017-12-24T23:44:27Z smurfrobot joined #sbcl 2017-12-24T23:48:53Z smurfrobot quit (Ping timeout: 252 seconds) 2017-12-24T23:54:35Z smurfrobot joined #sbcl 2017-12-24T23:54:59Z Bike joined #sbcl 2017-12-24T23:59:26Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-25T00:04:06Z stassats quit (Ping timeout: 260 seconds) 2017-12-25T00:04:47Z smurfrobot joined #sbcl 2017-12-25T00:08:29Z karlosz quit (Quit: karlosz) 2017-12-25T00:09:17Z varjag quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-12-25T00:09:21Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-25T00:14:56Z smurfrobot joined #sbcl 2017-12-25T00:19:11Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-25T00:25:11Z smurfrobot joined #sbcl 2017-12-25T00:29:53Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-25T00:35:22Z smurfrobot joined #sbcl 2017-12-25T00:40:02Z smurfrobot quit (Ping timeout: 252 seconds) 2017-12-25T00:42:48Z smurfrobot joined #sbcl 2017-12-25T00:47:30Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-25T00:51:13Z josemanuel quit (Quit: leaving) 2017-12-25T01:28:40Z smurfrobot joined #sbcl 2017-12-25T01:33:23Z smurfrobot quit (Ping timeout: 252 seconds) 2017-12-25T01:34:28Z whoman: nyef``, whoa , hardware failure ? 2017-12-25T01:41:27Z smurfrobot joined #sbcl 2017-12-25T01:50:25Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-25T02:05:29Z smurfrobot joined #sbcl 2017-12-25T02:10:33Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-25T02:15:28Z smurfrobot joined #sbcl 2017-12-25T02:20:19Z smurfrobot quit (Ping timeout: 256 seconds) 2017-12-25T02:25:38Z smurfrobot joined #sbcl 2017-12-25T02:30:25Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-25T02:34:02Z smurfrobot joined #sbcl 2017-12-25T02:38:38Z smurfrobot quit (Read error: Connection reset by peer) 2017-12-25T02:38:54Z smurfrobot joined #sbcl 2017-12-25T02:40:00Z smurfrobot quit (Read error: Connection reset by peer) 2017-12-25T02:40:15Z smurfrobot joined #sbcl 2017-12-25T02:44:47Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-25T02:45:53Z smurfrobot joined #sbcl 2017-12-25T02:48:57Z smurfrob_ joined #sbcl 2017-12-25T02:50:38Z smurfrobot quit (Ping timeout: 268 seconds) 2017-12-25T02:53:08Z smurfrob_ quit (Ping timeout: 252 seconds) 2017-12-25T03:35:19Z smurfrobot joined #sbcl 2017-12-25T03:39:27Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-25T03:40:34Z smurfrobot joined #sbcl 2017-12-25T03:45:31Z smurfrobot quit (Ping timeout: 268 seconds) 2017-12-25T03:45:39Z smurfrobot joined #sbcl 2017-12-25T03:46:15Z smurfrobot quit (Read error: Connection reset by peer) 2017-12-25T03:46:42Z smurfrobot joined #sbcl 2017-12-25T03:49:50Z smurfrobot quit (Read error: Connection reset by peer) 2017-12-25T03:50:03Z smurfrobot joined #sbcl 2017-12-25T03:54:31Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-25T04:12:28Z nyef``: whoman: Yeah, looks like the USB stick that was holding the root filesystem died. And, of course, my only backup is from when I originally set it up in the first place. 2017-12-25T04:15:54Z smurfrobot joined #sbcl 2017-12-25T04:20:45Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-25T04:23:44Z smurfrobot joined #sbcl 2017-12-25T04:28:17Z smurfrobot quit (Ping timeout: 252 seconds) 2017-12-25T04:30:31Z whoman: ahh =( 2017-12-25T04:40:33Z nyef``: "In spinning rust we trust." 2017-12-25T04:42:00Z nyef``: Unfortunately, IIRC, this thing won't boot from spinning rust, because it takes too long to spin up, so a hybrid approach is probably going to be the sanest option. 2017-12-25T05:02:28Z smurfrobot joined #sbcl 2017-12-25T05:05:22Z whoman: actual rust ? 2017-12-25T05:06:41Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-25T05:08:24Z nyef``: I have no idea how much oxidation is involved in the manufacture or typical aging of rigid-platter rotational magnetic storage. 2017-12-25T05:08:59Z nyef``: For that matter, even though it's magnetic storage, I have no idea if it's actually ferrous or not. 2017-12-25T05:09:29Z nyef``: But it's a nice turn of phrase, "spinning rust". 2017-12-25T05:19:55Z nyef``: If it were a mylar disk in a protective sheath, then it would definitely be actual rust: the magnetic storage medium is a surface coating involving iron oxide particles. 2017-12-25T05:20:55Z nyef``: But those have lousy data density, and in the higher-density cases can have poor retention lifetimes as the magnetic regions interfere with each other. 2017-12-25T06:36:24Z smurfrobot joined #sbcl 2017-12-25T06:41:15Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-25T06:41:23Z smurfrobot quit (Ping timeout: 252 seconds) 2017-12-25T06:44:08Z attila_lendvai joined #sbcl 2017-12-25T06:44:08Z attila_lendvai quit (Changing host) 2017-12-25T06:44:08Z attila_lendvai joined #sbcl 2017-12-25T07:06:45Z smurfrobot joined #sbcl 2017-12-25T07:11:56Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-25T07:23:18Z smurfrobot joined #sbcl 2017-12-25T07:28:15Z smurfrobot quit (Ping timeout: 265 seconds) 2017-12-25T07:34:39Z smurfrobot joined #sbcl 2017-12-25T07:36:32Z smurfrobot quit (Read error: Connection reset by peer) 2017-12-25T07:36:58Z smurfrobot joined #sbcl 2017-12-25T07:41:19Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-25T07:44:38Z smurfrobot joined #sbcl 2017-12-25T07:49:19Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-25T08:17:24Z Bike quit (Ping timeout: 260 seconds) 2017-12-25T08:59:21Z smurfrobot joined #sbcl 2017-12-25T09:11:31Z shka joined #sbcl 2017-12-25T09:27:01Z smurfrobot quit (Remote host closed the connection) 2017-12-25T09:33:51Z smurfrobot joined #sbcl 2017-12-25T09:38:21Z smurfrobot quit (Ping timeout: 256 seconds) 2017-12-25T10:23:52Z stassats joined #sbcl 2017-12-25T10:29:55Z jibanes quit (Ping timeout: 256 seconds) 2017-12-25T10:31:26Z jibanes joined #sbcl 2017-12-25T10:47:10Z smurfrobot joined #sbcl 2017-12-25T10:51:43Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-25T12:03:35Z smurfrobot joined #sbcl 2017-12-25T12:22:26Z smurfrobot quit (Remote host closed the connection) 2017-12-25T13:19:05Z karlosz joined #sbcl 2017-12-25T13:22:59Z smurfrobot joined #sbcl 2017-12-25T13:27:56Z smurfrobot quit (Remote host closed the connection) 2017-12-25T13:28:10Z smurfrobot joined #sbcl 2017-12-25T13:52:22Z attila_lendvai quit (Quit: Leaving.) 2017-12-25T13:57:00Z smurfrobot quit (Remote host closed the connection) 2017-12-25T14:11:39Z smurfrobot joined #sbcl 2017-12-25T14:15:08Z karlosz quit (Quit: karlosz) 2017-12-25T14:25:52Z smurfrobot quit (Remote host closed the connection) 2017-12-25T14:27:33Z attila_lendvai joined #sbcl 2017-12-25T14:32:17Z varjag joined #sbcl 2017-12-25T14:32:55Z smurfrobot joined #sbcl 2017-12-25T14:32:59Z smurfrobot quit (Remote host closed the connection) 2017-12-25T14:33:15Z smurfrobot joined #sbcl 2017-12-25T14:36:01Z dougk_ joined #sbcl 2017-12-25T14:42:57Z dougk_ quit (Ping timeout: 264 seconds) 2017-12-25T14:44:03Z karlosz joined #sbcl 2017-12-25T14:50:21Z smurfrobot quit (Remote host closed the connection) 2017-12-25T14:55:27Z smurfrobot joined #sbcl 2017-12-25T15:00:04Z karlosz quit (Quit: karlosz) 2017-12-25T15:00:15Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-25T15:25:26Z smurfrobot joined #sbcl 2017-12-25T15:33:31Z smurfrobot quit (Ping timeout: 265 seconds) 2017-12-25T15:40:01Z smurfrobot joined #sbcl 2017-12-25T15:42:24Z attila_lendvai quit (Ping timeout: 272 seconds) 2017-12-25T15:44:47Z smurfrobot quit (Ping timeout: 252 seconds) 2017-12-25T15:48:11Z DeadTrickster joined #sbcl 2017-12-25T15:49:23Z DeadTrickster: hello, I'm having trouble decode cp1251 string coming from mysql. it has € sign which is #x88 and sblc doesn't know about it https://github.com/sbcl/sbcl/blob/master/src/code/external-formats/enc-win.lisp#L96 2017-12-25T15:53:38Z DeadTrickster: no per mille too - which is #x98 and #x2030 in Unicode 2017-12-25T15:54:25Z nyef``: #x98, or #x89? 2017-12-25T15:54:45Z DeadTrickster: #x88 is euro sign 2017-12-25T15:54:59Z DeadTrickster: #x98 is per mille, both currently set to nil 2017-12-25T15:55:10Z DeadTrickster: https://en.wikipedia.org/wiki/Windows-1251 2017-12-25T15:56:11Z nyef``: Look closer: that chart gives per mille at #x89, not #x98. 2017-12-25T15:57:27Z attila_lendvai joined #sbcl 2017-12-25T15:57:27Z shka quit (Remote host closed the connection) 2017-12-25T15:58:20Z shka joined #sbcl 2017-12-25T15:58:23Z smurfrobot joined #sbcl 2017-12-25T15:58:25Z nyef``: Also, see https://msdn.microsoft.com/en-us/library/cc195053.aspx where code point 88 is associated with unicode #xfffe, and the descriptive name "NOT USED". 2017-12-25T15:59:24Z nyef``: Not A Bug. 2017-12-25T15:59:57Z nyef``: (Attempts to portray the Wikipedia chart as authoritative will be laughed at.) 2017-12-25T16:02:12Z DeadTrickster: http://www.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/WINDOWS/CP1251.TXT 2017-12-25T16:02:41Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-25T16:04:12Z nyef``: Conflicts with publicly-available data from the vendor, and is inconsistent with the timeline: The Euro symbol wasn't yet invented when CP1251 was originally specified. 2017-12-25T16:04:54Z nyef``: Open an issue for it in launchpad? 2017-12-25T16:05:04Z attila_lendvai quit (Quit: Leaving.) 2017-12-25T16:05:32Z DeadTrickster: you provided enough feedback on the issue. thank you for your time 2017-12-25T16:09:16Z nyef``: No, seriously. Please open an issue for it in launchpad. If the vendors are going to lie about what the encodings are, a decision has to be made as to what to do about it. And we're in code freeze right now anyway, so no change will be made until at least after the Feast of Saint. Stephen. 2017-12-25T16:10:17Z nyef``: (And there's also the argument that if we're going to take the unicode vendor mappings as authoritative then we should also derive our support code from those mappings automatically.) 2017-12-25T16:13:33Z _death: nyef: the same file shows other encoding of the same age having euro sign though.. 2017-12-25T16:13:38Z _death: *encodings 2017-12-25T16:16:56Z stassats: who uses non-utf encodings these days anyway 2017-12-25T16:17:36Z _death: 90s textfiles tend to use cp437 :) 2017-12-25T16:20:13Z smurfrobot joined #sbcl 2017-12-25T16:20:44Z |3b|: https://www.microsoft.com/typography/unicode/1251.htm has euro and per mille 2017-12-25T16:24:34Z smurfrob_ joined #sbcl 2017-12-25T16:24:57Z smurfrobot quit (Ping timeout: 263 seconds) 2017-12-25T16:33:04Z smurfrob_ quit (Ping timeout: 272 seconds) 2017-12-25T16:34:09Z nyef``: stassats: I had to add macroman support a while ago because it was getting used at work. 2017-12-25T16:35:45Z stassats: do you also use roman numerals? 2017-12-25T16:36:08Z _death: MMXVIII soon 2017-12-25T16:41:37Z dougk_ joined #sbcl 2017-12-25T16:43:21Z smurfrobot joined #sbcl 2017-12-25T16:46:16Z dougk_ quit (Ping timeout: 260 seconds) 2017-12-25T18:04:45Z smurfrobot quit (Remote host closed the connection) 2017-12-25T18:12:47Z varjag quit (Ping timeout: 248 seconds) 2017-12-25T19:05:15Z smurfrobot joined #sbcl 2017-12-25T19:07:51Z Bike joined #sbcl 2017-12-25T19:09:53Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-25T19:15:24Z smurfrobot joined #sbcl 2017-12-25T19:20:09Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-25T19:27:54Z nimiux joined #sbcl 2017-12-25T19:51:17Z smurfrobot joined #sbcl 2017-12-25T19:56:09Z smurfrobot quit (Ping timeout: 268 seconds) 2017-12-25T19:56:48Z smurfrobot joined #sbcl 2017-12-25T20:01:05Z smurfrobot quit (Ping timeout: 252 seconds) 2017-12-25T20:18:14Z stassats: hacked (x 1 2 3 4 5) to not allocate the caller stack space 2017-12-25T20:18:59Z stassats: just by ignoring growing the sc if the tn goes to CALL-NAMED, need something better, maybe a new SC, :control-stack-arg 2017-12-25T20:21:08Z karlosz joined #sbcl 2017-12-25T20:42:52Z jamtho_ joined #sbcl 2017-12-25T20:45:38Z jamtho quit (Ping timeout: 252 seconds) 2017-12-25T20:46:29Z stylewarning: Merry Christmas 2017-12-25T20:57:30Z smurfrobot joined #sbcl 2017-12-25T21:01:15Z DeadTrickster quit (Quit: Leaving) 2017-12-25T21:02:05Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-25T21:03:02Z kowals98 joined #sbcl 2017-12-25T21:03:13Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! fvxmfgfw: malm bkst_ copec mood jasom fe[nl]ix brucem Bike GreaseMonkey drmeister nyef`` nicdev galdor karlosz foom2 Blkt_ shka whoman Lord_Nightmare specbot dustinm` jamtho_ cromachina jdz Intensity kini jsnell dim Jesin 2017-12-25T21:03:18Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! qadgoquij: Lord_Nightmare nyef`` stassats alandipert Blkt_ GreaseMonkey MetaYan lonjil tonton joshe Jesin aeth mood jdz kini luis eschatologist fiddlerwoaroof nimiux myrkra 2017-12-25T21:03:23Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! xkdazgon: tonton Bike Lord_Nightmare specbot joshe alandipert p_l pchrist_ stassats leah2 nicdev jasom eschatologist MetaYan kini drmeister jibanes jsnell whoman aeth irsol fe[nl]ix copec shka jdz lonjil mood fiddlerwoaroof _death Jesin Blkt_ 2017-12-25T21:03:28Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! mofojrvd: Bike whoman |3b| Blkt_ bkst_ kini pfdietz sigjuice irsol copec mood pchrist_ tonton specbot jdz oleo leah2 nicdev luis xristos cromachina alandipert Jesin shka ny 2017-12-25T21:03:33Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! cgxxvdito: jsnell DGASAU p_l dougk stassats lonjil drmeister MetaYan Blkt_ myrkraverk GreaseMonkey copec christoph_debian alandipert sigjuice galdor malm xristos whoman Kevslinger ni 2017-12-25T21:03:38Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! mlnmhcpy: nyef`` copec _death p_l brucem dim christoph_debian Jesin luis nicdev cromachina specbot whoman irsol dustinm` |3b| jasom fiddlerwoaroof fe[nl]ix jamtho_ pfdietz GreaseMonkey dougk Blkt_ nimiux karlosz tonton kini alandipert Kevslin 2017-12-25T21:03:43Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! gbhacwoovu: |3b| xristos libreman nicdev jamtho_ shka dustinm` alandipert malm _death brucem Jesin p_l whoman mood pchrist_ fe[nl]ix drmeister kini Lord_Nightmare dim fiddl 2017-12-25T21:03:48Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! hljku: brucem karlosz galdor cromachina Posterdati fe[nl]ix stassats whoman jdz pfdietz bkst_ xristos MetaYan p_l luis shka jibanes dustinm` Bike nicdev _death Intensity sigjuice specbot nyef`` DGASAU alandipert 2017-12-25T21:03:53Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! cksfeuqfie: dougk karlosz oleo jibanes kini Posterdati aeth p_l alandipert luis nicdev GreaseMonkey fiddlerwoaroof jdz |3b| bkst_ stassats jamtho_ Blkt_ irsol nimiux malm d 2017-12-25T21:03:58Z kowals98: ▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! slttchvnhd: leah2 Kevslinger drmeister cromachina Jesin myrkraverk christoph_debian jdz sigjuice Blkt_ p_l oleo GreaseMonkey jsnell malm foom2 _death nyef`` jasom dougk alandipert copec libreman fiddlerwoaroof xristos dustinm` Bike nimiux galdor dim irsol |3b| bkst_ aeth 2017-12-25T21:04:03Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! owcnzbs: oleo lonjil drmeister dustinm` |3b| jibanes Bike sigjuice nicdev nyef`` shka kini whoman Intensity galdor Posterdati dougk luis irsol christoph_debian jdz p_l Blkt_ jamtho_ bkst_ xristos dim Lord_Nightmare MetaYan Kevslinge 2017-12-25T21:04:04Z pfdietz slaps kowals98 around a bit with a large trout 2017-12-25T21:04:08Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! oxwanfw: Intensity alandipert galdor cromachina Jesin pchrist_ Posterdati |3b| eschatologist jdz Blkt_ bkst_ joshe drmeister Lord_Nightmare jasom fiddlerwoaroof christoph_debian mood foom2 oleo shka MetaYan brucem malm karlosz leah2 dougk fe[ 2017-12-25T21:04:13Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! xymfnowk: Intensity nimiux shka Posterdati jsnell |3b| christoph_debian jamtho_ kini Jesin nicdev Kevslinger mood leah2 dim bkst_ jibanes whoman nyef`` aeth galdor Bike Met 2017-12-25T21:04:19Z shka left #sbcl 2017-12-25T21:04:21Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! liajcjeqs: bkst_ Jesin nimiux irsol |3b| Intensity Bike dougk aeth libreman eschatologist alandipert jibanes lonjil brucem fiddlerwoaroof oleo fe[nl]ix foom2 myrkraverk pchrist_ karl 2017-12-25T21:04:23Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! vbsrijqo: Intensity leah2 bkst_ pchrist_ joshe whoman nicdev libreman jdz aeth lonjil copec jibanes GreaseMonkey oleo dim malm eschatologist brucem Bike myrkraverk karlosz dustinm` f 2017-12-25T21:04:28Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! hnhsh: copec whoman christoph_debian jasom jsnell eschatologist mood joshe bkst_ libreman alandipert jibanes p_l pfdietz nimiux Bike fe[nl]ix luis GreaseMonkey Lord_Nightmare dim kini lonjil dougk Blkt_ drmeister |3b| tonton irsol nicdev sigj 2017-12-25T21:04:30Z Shinmera: Oh hey the bot evolved to only message every five seconds to avoid the spam auto-ban 2017-12-25T21:04:33Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! qgbailu: sigjuice Jesin shka stassats jibanes specbot aeth copec eschatologist pfdietz lonjil pchrist_ dustinm` galdor brucem Blkt_ p_l kini whoman malm alandipert Lord_Nightmare dim jdz nicdev drmeister luis Intensity leah2 jamtho_ nyef`` li 2017-12-25T21:04:38Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! qjmplp: brucem Posterdati copec myrkraverk fe[nl]ix libreman MetaYan sigjuice whoman stassats jibanes oleo irsol jsnell nimiux |3b| malm bkst_ tonton DGASAU galdor Jesin shka specbot dougk Intensity jasom joshe n 2017-12-25T21:04:43Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! pbmyqxg: sigjuice bkst_ dougk karlosz p_l |3b| alandipert kini Intensity DGASAU pchrist_ fiddlerwoaroof joshe _death jibanes eschatologist Jesin xristos Bike Posterdati Lord_Nightmare myrkraverk specbot foom2 Kevslinger jdz irsol fe[nl]ix stassats drme 2017-12-25T21:04:48Z kowals98: ▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! ovleuy: drmeister foom2 brucem copec fiddlerwoaroof eschatologist luis nyef`` Jesin karlosz dougk _death Kevslinger dustinm` bkst_ mood GreaseMonkey specbot jasom nicdev lonjil oleo xristos Lord_Nightmare MetaYan DGASAU dim jibanes irsol Blkt_ malm aeth |3b| Intensity ala 2017-12-25T21:04:53Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! rgbqmuakt: MetaYan jdz jasom brucem pfdietz p_l cromachina libreman tonton irsol fe[nl]ix nyef`` galdor copec mood |3b| Bike dustinm` luis Intensity xristos foom2 bkst_ kini dim christoph_debian DGASAU karlosz joshe pchrist_ lonjil aeth whoman sigjuice dougk ala 2017-12-25T21:04:59Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! favqxh: dustinm` alandipert shka whoman specbot pfdietz galdor Posterdati kini GreaseMonkey leah2 Jesin tonton jamtho_ |3b| bkst_ mood nyef`` pchrist_ luis Lord_Nightmare libreman jasom MetaYan drmeiste 2017-12-25T21:05:03Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! cfhicabbqx: Blkt_ libreman dustinm` christoph_debian karlosz jamtho_ Posterdati dim p_l drmeister foom2 pchrist_ bkst_ aeth Bike |3b| shka Intensity nimiux jibanes fe[nl]ix eschatologist Jesin leah2 lonjil Grease 2017-12-25T21:05:08Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! krdbbxiun: Kevslinger dougk p_l pfdietz jsnell galdor shka joshe sigjuice cromachina jamtho_ xristos leah2 kini specbot bkst_ nyef`` GreaseMonkey luis copec eschatologist d 2017-12-25T21:05:13Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! mpiylf: whoman pchrist_ alandipert galdor mood lonjil bkst_ GreaseMonkey myrkraverk cromachina Bike Blkt_ libreman fe[nl]ix stassats Kevslinger Intensity eschatologist irsol jamtho_ leah2 pfdietz drmeister kini malm DGASAU 2017-12-25T21:05:18Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! abrsyxxw: lonjil GreaseMonkey brucem jdz joshe mood Intensity alandipert eschatologist copec kini Jesin jsnell Bike foom2 Kevslinger bkst_ galdor jibanes DGASAU karlosz Posterdati jasom fiddlerwoaroof dim MetaYan nicdev jamtho_ nyef`` aeth christoph_de 2017-12-25T21:05:23Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! eidlgzpin: fe[nl]ix cromachina libreman |3b| jsnell jdz p_l DGASAU foom2 bkst_ aeth irsol myrkraverk specbot brucem copec Bike sigjuice christoph_debian dim stassats jibane 2017-12-25T21:05:28Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! zpzmpoad: brucem joshe pchrist_ Posterdati p_l foom2 Intensity _death dustinm` xristos jdz pfdietz dougk tonton specbot |3b| bkst_ eschatologist shka copec Lord_Nightmare nyef`` Meta 2017-12-25T21:05:33Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! znpnzuii: nicdev jibanes Jesin Posterdati pfdietz shka galdor |3b| oleo alandipert tonton whoman drmeister sigjuice dustinm` xristos _death lonjil nyef`` jdz Kevslinger dougk joshe malm jasom DGASAU myrkraverk nimiux specbot foom2 aeth karlosz Bike jsnell Lord_N 2017-12-25T21:05:38Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! vfmlto: foom2 fe[nl]ix eschatologist jasom irsol luis MetaYan kini jibanes Bike Posterdati fiddlerwoaroof jdz Blkt_ _death Kevslinger christoph_debian nicdev aeth DGASAU ny 2017-12-25T21:05:43Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! hwtxgnn: GreaseMonkey brucem copec jamtho_ jibanes p_l Lord_Nightmare aeth whoman drmeister oleo dustinm` kini christoph_debian nyef`` karlosz alandipert leah2 joshe Bike jasom stassats mood dim xristos nimiux ni 2017-12-25T21:05:43Z oleo: ~xpekcybv@c-71-200-150-186.hsd1.de.comcast.net 2017-12-25T21:05:48Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! zxveuqwqx: alandipert jamtho_ Lord_Nightmare tonton joshe GreaseMonkey eschatologist bkst_ Posterdati Jesin jsnell galdor p_l dim stassats fe[nl]ix myrkraverk libreman mood kini jasom aeth jdz sigjuice 2017-12-25T21:05:53Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! yqcgd: whoman jsnell lonjil tonton brucem oleo Kevslinger Lord_Nightmare alandipert jamtho_ jibanes libreman copec luis DGASAU Bike kini dougk Blkt_ jdz foom2 specbot xristos irsol P 2017-12-25T21:05:59Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! lqlyunsz: sigjuice myrkraverk MetaYan drmeister fe[nl]ix luis jasom |3b| lonjil nyef`` specbot bkst_ irsol Blkt_ Kevslinger alandipert Jesin jdz dim Bike dougk GreaseMonkey eschatologist oleo copec Intensity _death libreman brucem nicdev nimiux pchrist 2017-12-25T21:06:02Z Lord_Nightmare: god damn it he's in here too 2017-12-25T21:06:03Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! qngcqiaadk: christoph_debian galdor nicdev tonton dustinm` jamtho_ nyef`` DGASAU Blkt_ brucem jasom p_l specbot Intensity stassats pfdietz joshe |3b| pchrist_ GreaseMonkey Lord_Night 2017-12-25T21:06:06Z Lord_Nightmare: who owns this channel? 2017-12-25T21:06:08Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! bfctjbu: pchrist_ christoph_debian shka Kevslinger jsnell foom2 specbot jasom cromachina lonjil luis Blkt_ Intensity xristos jdz jibanes Posterdati nyef`` karlosz dustinm` aeth joshe pfdietz nicdev tonton _death MetaYan mood fe[nl]i 2017-12-25T21:06:13Z kowals98: ▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! fwpnw: nyef`` jdz libreman jibanes sigjuice cromachina Lord_Nightmare p_l |3b| jamtho_ dustinm` myrkraverk xristos pchrist_ shka irsol brucem jasom copec Blkt_ _death bkst_ dougk Bike christoph_debian Jesin aeth fe[nl]ix nimiux tonton galdor jsnell DGASAU eschatologist al 2017-12-25T21:06:18Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! awwnq: christoph_debian pchrist_ stassats jibanes DGASAU oleo Posterdati brucem mood kini sigjuice aeth |3b| jasom p_l nimiux xristos leah2 nyef`` cromachina Lord_Nightmare joshe tonton shka jamtho_ Jesin jdz lon 2017-12-25T21:06:24Z kowals98: ▄▄▄▄▄▄▄▄▄▄▄▄ HAPPY NIGGER MAS!! IF YOU WANT JOIN A CELEBRATION THAT IS NIGGER FREE PLEASE JOIN #/JOIN RIGHT HERE ON THIS NETWORK!! zmvhk: jsnell specbot galdor MetaYan dougk dim drmeister jasom Jesin irsol shka Intensity christoph_debian kini foom2 lonjil pfdietz pchrist_ aeth copec dustinm` libreman GreaseMonkey Blkt_ nimiux eschatologist myrkraverk luis leah2 fiddlerwoaroof |3b| 2017-12-25T21:06:25Z kowals98 quit (K-Lined) 2017-12-25T21:07:35Z p_l: well, got k-lined 2017-12-25T21:07:45Z p_l: though I banned it preemptively in #lisp 2017-12-25T21:08:19Z christoph_debian: it's a dozend nicks 2017-12-25T21:08:21Z christoph_debian: ;-) 2017-12-25T21:10:50Z p_l: yeah, noticed somewhere else 2017-12-25T21:11:04Z p_l: hard to combat that kind of spam without requiring registration 2017-12-25T21:11:42Z stassats: killer drones? 2017-12-25T21:11:58Z christoph_debian: auto-klines on $regex get somewhere I guess 2017-12-25T21:12:17Z christoph_debian: after all it's the (at least) third iteration of this one 2017-12-25T21:12:38Z christoph_debian: apart from that jep .. the prive of having the channel accessible 2017-12-25T21:16:47Z stylewarning: auto K-line on any response to stassats 2017-12-25T21:32:46Z Posterdati: hi 2017-12-25T21:32:51Z Posterdati: spammers 2017-12-25T21:33:02Z Posterdati: it is not the first time 2017-12-25T21:33:20Z Posterdati: anyway Merry Christmass to all 2017-12-25T21:35:41Z smurfrobot joined #sbcl 2017-12-25T21:57:10Z attila_lendvai joined #sbcl 2017-12-25T21:57:10Z attila_lendvai quit (Changing host) 2017-12-25T21:57:10Z attila_lendvai joined #sbcl 2017-12-25T21:59:42Z karlosz quit (Quit: karlosz) 2017-12-25T22:12:55Z DeadTrickster joined #sbcl 2017-12-25T22:22:09Z smurfrobot quit (Remote host closed the connection) 2017-12-25T22:23:14Z varjag joined #sbcl 2017-12-25T22:37:43Z stassats quit (Ping timeout: 268 seconds) 2017-12-25T22:42:50Z dougk_ joined #sbcl 2017-12-25T22:47:11Z dougk_ quit (Ping timeout: 252 seconds) 2017-12-25T23:22:42Z smurfrobot joined #sbcl 2017-12-25T23:27:57Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-26T00:24:12Z smurfrobot joined #sbcl 2017-12-26T00:29:09Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-26T00:47:12Z smurfrobot joined #sbcl 2017-12-26T00:51:01Z smurfrobot quit (Remote host closed the connection) 2017-12-26T01:04:50Z varjag quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-12-26T01:51:33Z smurfrobot joined #sbcl 2017-12-26T01:52:38Z dougk_ joined #sbcl 2017-12-26T01:56:21Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-26T03:06:21Z tonton quit (Ping timeout: 264 seconds) 2017-12-26T03:07:47Z tonton joined #sbcl 2017-12-26T03:53:56Z leo_song joined #sbcl 2017-12-26T04:24:53Z dougk_ quit (Ping timeout: 252 seconds) 2017-12-26T04:51:33Z Jesin quit (Quit: Leaving) 2017-12-26T04:59:49Z cromachina quit (Read error: Connection reset by peer) 2017-12-26T05:51:11Z Jesin joined #sbcl 2017-12-26T06:36:29Z oleo quit (Quit: Leaving) 2017-12-26T07:01:04Z smurfrobot joined #sbcl 2017-12-26T07:05:52Z smurfrobot quit (Ping timeout: 265 seconds) 2017-12-26T07:08:27Z oleo joined #sbcl 2017-12-26T07:58:59Z oleo quit (Quit: Leaving) 2017-12-26T08:01:48Z smurfrobot joined #sbcl 2017-12-26T08:06:46Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-26T08:23:54Z karlosz joined #sbcl 2017-12-26T08:25:48Z oleo joined #sbcl 2017-12-26T08:27:09Z dougk_ joined #sbcl 2017-12-26T08:42:44Z Bike quit (Quit: Page closed) 2017-12-26T08:55:01Z karlosz quit (Quit: karlosz) 2017-12-26T08:59:11Z smurfrobot joined #sbcl 2017-12-26T09:04:14Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-26T09:06:27Z smurfrobot joined #sbcl 2017-12-26T09:09:47Z dougk_ quit (Ping timeout: 252 seconds) 2017-12-26T09:11:09Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-26T09:14:38Z smurfrobot joined #sbcl 2017-12-26T09:16:52Z karlosz joined #sbcl 2017-12-26T09:18:55Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-26T09:57:55Z smurfrobot joined #sbcl 2017-12-26T10:03:10Z karlosz quit (Quit: karlosz) 2017-12-26T10:11:40Z smurfrobot quit (Remote host closed the connection) 2017-12-26T10:21:57Z smurfrobot joined #sbcl 2017-12-26T10:22:04Z stassats joined #sbcl 2017-12-26T10:27:54Z smurfrobot quit (Ping timeout: 265 seconds) 2017-12-26T10:48:39Z karlosz joined #sbcl 2017-12-26T10:56:31Z karlosz quit (Ping timeout: 260 seconds) 2017-12-26T11:04:17Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-26T11:04:18Z smurfrobot joined #sbcl 2017-12-26T11:05:46Z attila_lendvai joined #sbcl 2017-12-26T11:07:55Z karlosz joined #sbcl 2017-12-26T11:08:04Z karlosz quit (Client Quit) 2017-12-26T11:51:02Z smurfrobot quit (Remote host closed the connection) 2017-12-26T11:54:31Z stassats: found a reasonable solution for (defun z () (x 1 2 3 4 5) 1) allocating in the caller frame 2017-12-26T11:54:39Z stassats: but (defun foo () (labels ((abc () (x 1 2 3 4 5))) (declare (notinline abc)) (abc) 10)) 2017-12-26T11:54:55Z stassats: still allocates both in the parent and child frames 2017-12-26T11:57:09Z stassats: in fact, if i allocate stack spaces in the parent frame, it's also allocated in the child 2017-12-26T11:57:12Z stassats: there's no separation 2017-12-26T11:59:15Z stassats: and that's trickier than just doing full calls 2017-12-26T11:59:38Z stassats: i need to figure out in which frame a stack location is used, during register allocation 2017-12-26T12:00:46Z stassats: or maybe can be done at ir2 conversion time 2017-12-26T12:01:36Z stassats: but TNs would basically have to point to the storage base, and each frame will have its own sb 2017-12-26T12:05:10Z smurfrobot joined #sbcl 2017-12-26T12:12:58Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-26T12:20:22Z oleo quit (Quit: Leaving) 2017-12-26T12:38:00Z oleo joined #sbcl 2017-12-26T13:02:25Z stassats quit (Ping timeout: 248 seconds) 2017-12-26T13:09:50Z smurfrobot joined #sbcl 2017-12-26T13:13:21Z smurfrob_ joined #sbcl 2017-12-26T13:13:35Z smurfrobot quit (Remote host closed the connection) 2017-12-26T13:26:20Z smurfrob_ quit (Remote host closed the connection) 2017-12-26T13:35:05Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-26T13:36:41Z attila_lendvai joined #sbcl 2017-12-26T13:54:18Z dougk_ joined #sbcl 2017-12-26T14:00:08Z smurfrobot joined #sbcl 2017-12-26T14:05:50Z karlosz joined #sbcl 2017-12-26T14:19:45Z karlosz quit (Ping timeout: 248 seconds) 2017-12-26T14:22:54Z sjl joined #sbcl 2017-12-26T14:29:34Z smurfrobot quit (Remote host closed the connection) 2017-12-26T14:39:58Z smurfrobot joined #sbcl 2017-12-26T14:44:17Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-26T14:46:18Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-26T14:46:50Z smurfrobot joined #sbcl 2017-12-26T14:49:10Z attila_lendvai joined #sbcl 2017-12-26T14:51:05Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-26T14:57:51Z karlosz joined #sbcl 2017-12-26T15:01:01Z karlosz quit (Client Quit) 2017-12-26T15:10:01Z smurfrobot joined #sbcl 2017-12-26T15:15:00Z smurfrobot quit (Ping timeout: 265 seconds) 2017-12-26T15:19:16Z smurfrobot joined #sbcl 2017-12-26T15:25:03Z smurfrobot quit (Ping timeout: 256 seconds) 2017-12-26T15:47:28Z smurfrobot joined #sbcl 2017-12-26T15:52:33Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-26T15:54:14Z smurfrobot joined #sbcl 2017-12-26T15:59:16Z smurfrobot quit (Ping timeout: 268 seconds) 2017-12-26T15:59:42Z smurfrobot joined #sbcl 2017-12-26T16:27:03Z varjag joined #sbcl 2017-12-26T16:27:37Z pfdietz left #sbcl 2017-12-26T16:27:44Z pfdietz joined #sbcl 2017-12-26T16:30:51Z smurfrobot quit (Remote host closed the connection) 2017-12-26T16:31:25Z smurfrobot joined #sbcl 2017-12-26T16:35:33Z smurfrobot quit (Ping timeout: 246 seconds) 2017-12-26T16:50:10Z stassats joined #sbcl 2017-12-26T16:54:32Z smurfrobot joined #sbcl 2017-12-26T17:15:27Z smurfrobot quit (Remote host closed the connection) 2017-12-26T17:34:27Z dougk_ quit (Ping timeout: 240 seconds) 2017-12-26T18:10:00Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-26T18:11:24Z attila_lendvai joined #sbcl 2017-12-26T18:11:24Z attila_lendvai quit (Changing host) 2017-12-26T18:11:24Z attila_lendvai joined #sbcl 2017-12-26T18:16:19Z smurfrobot joined #sbcl 2017-12-26T18:20:49Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-26T18:27:25Z rgrau joined #sbcl 2017-12-26T19:13:29Z fortitude joined #sbcl 2017-12-26T19:17:06Z smurfrobot joined #sbcl 2017-12-26T19:20:38Z smurfrobot quit (Remote host closed the connection) 2017-12-26T19:20:51Z smurfrobot joined #sbcl 2017-12-26T19:42:39Z smurfrobot quit (Remote host closed the connection) 2017-12-26T20:32:43Z stassats: now to determine to which lambda a TN belongs, at ltn time? there are some delayed lvars 2017-12-26T20:33:38Z stassats: looking at which nodes read/write from it? there's across calls and through ancestor-frame-ref 2017-12-26T20:35:14Z stassats: i guess it has to be at ltn/ir2-convert time, and calls handled separately 2017-12-26T20:36:22Z oleo: lol 2017-12-26T20:36:45Z stassats: what's so funny? 2017-12-26T20:36:49Z oleo: i just thought how alien that all sounds hahahaha 2017-12-26T20:43:11Z smurfrobot joined #sbcl 2017-12-26T20:46:36Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-26T20:47:59Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-26T21:02:47Z attila_lendvai joined #sbcl 2017-12-26T21:02:47Z attila_lendvai quit (Changing host) 2017-12-26T21:02:47Z attila_lendvai joined #sbcl 2017-12-26T21:10:18Z lima4 joined #sbcl 2017-12-26T21:14:54Z smurfrobot joined #sbcl 2017-12-26T21:22:04Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-26T21:28:13Z varjag quit (Remote host closed the connection) 2017-12-26T21:28:26Z varjag joined #sbcl 2017-12-26T21:33:26Z lima4 left #sbcl 2017-12-26T21:42:53Z smurfrobot joined #sbcl 2017-12-26T21:47:28Z smurfrobot quit (Ping timeout: 265 seconds) 2017-12-26T21:49:18Z leah2 quit (Ping timeout: 272 seconds) 2017-12-26T21:56:10Z dougk_ joined #sbcl 2017-12-26T22:03:29Z leah2 joined #sbcl 2017-12-26T22:03:35Z fortitude quit (Ping timeout: 240 seconds) 2017-12-26T22:25:38Z rgrau quit (Ping timeout: 252 seconds) 2017-12-26T22:35:30Z fortitude joined #sbcl 2017-12-26T22:44:45Z sjl quit (Ping timeout: 264 seconds) 2017-12-26T23:42:18Z Jesin quit (Quit: Leaving) 2017-12-27T00:25:03Z aeth quit (Ping timeout: 248 seconds) 2017-12-27T00:27:01Z aeth joined #sbcl 2017-12-27T00:59:21Z stassats quit (Ping timeout: 265 seconds) 2017-12-27T01:07:20Z varjag quit (Ping timeout: 252 seconds) 2017-12-27T01:18:22Z varjag joined #sbcl 2017-12-27T01:23:22Z varjag quit (Ping timeout: 272 seconds) 2017-12-27T01:42:57Z dougk_ quit (Ping timeout: 248 seconds) 2017-12-27T01:53:26Z dougk_ joined #sbcl 2017-12-27T02:13:04Z fortitude_ joined #sbcl 2017-12-27T02:14:27Z fortitude quit (Ping timeout: 240 seconds) 2017-12-27T02:37:05Z Kevslinger quit (Quit: Connection closed for inactivity) 2017-12-27T02:41:27Z leo_song quit (Quit: ZNC 1.6.5+deb1 - http://znc.in) 2017-12-27T02:44:09Z smurfrobot joined #sbcl 2017-12-27T02:44:58Z Kevslinger joined #sbcl 2017-12-27T02:48:31Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-27T03:18:40Z varjag joined #sbcl 2017-12-27T03:23:11Z varjag quit (Ping timeout: 252 seconds) 2017-12-27T03:49:36Z fortitude__ joined #sbcl 2017-12-27T03:52:51Z fortitude joined #sbcl 2017-12-27T03:53:26Z fortitude_ quit (Ping timeout: 252 seconds) 2017-12-27T03:56:00Z fortitude__ quit (Ping timeout: 272 seconds) 2017-12-27T03:57:01Z dougk_ quit (Ping timeout: 256 seconds) 2017-12-27T05:08:25Z smurfrobot joined #sbcl 2017-12-27T05:13:11Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-27T05:18:58Z varjag joined #sbcl 2017-12-27T05:23:13Z varjag quit (Ping timeout: 248 seconds) 2017-12-27T06:58:03Z varjag joined #sbcl 2017-12-27T07:02:45Z varjag quit (Ping timeout: 264 seconds) 2017-12-27T07:24:18Z smurfrobot joined #sbcl 2017-12-27T07:28:29Z smurfrobot quit (Ping timeout: 252 seconds) 2017-12-27T08:58:15Z varjag joined #sbcl 2017-12-27T09:02:41Z varjag quit (Ping timeout: 265 seconds) 2017-12-27T09:03:56Z varjag joined #sbcl 2017-12-27T09:05:14Z jdz quit (Quit: ZNC - http://znc.in) 2017-12-27T09:05:40Z jdz_ joined #sbcl 2017-12-27T09:09:06Z varjag quit (Ping timeout: 268 seconds) 2017-12-27T09:54:11Z smurfrobot joined #sbcl 2017-12-27T10:27:50Z smurfrobot quit (Remote host closed the connection) 2017-12-27T10:41:37Z sjl__ joined #sbcl 2017-12-27T10:45:53Z sjl__ quit (Ping timeout: 248 seconds) 2017-12-27T10:56:43Z rgrau joined #sbcl 2017-12-27T11:10:19Z mjl joined #sbcl 2017-12-27T11:18:00Z smurfrobot joined #sbcl 2017-12-27T11:23:08Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-27T11:26:02Z smurfrobot joined #sbcl 2017-12-27T11:26:44Z scymtym joined #sbcl 2017-12-27T11:27:06Z Kevslinger quit (Quit: Connection closed for inactivity) 2017-12-27T11:34:31Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-27T11:35:34Z attila_lendvai joined #sbcl 2017-12-27T11:35:34Z attila_lendvai quit (Changing host) 2017-12-27T11:35:34Z attila_lendvai joined #sbcl 2017-12-27T11:44:49Z Xof joined #sbcl 2017-12-27T11:46:53Z smurfrobot quit (Remote host closed the connection) 2017-12-27T11:49:14Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-27T11:50:12Z attila_lendvai joined #sbcl 2017-12-27T11:54:27Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-27T11:57:09Z attila_lendvai joined #sbcl 2017-12-27T11:58:25Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-27T11:58:32Z smurfrobot joined #sbcl 2017-12-27T11:59:38Z attila_lendvai joined #sbcl 2017-12-27T12:03:09Z stassats joined #sbcl 2017-12-27T12:03:37Z smurfrobot quit (Ping timeout: 268 seconds) 2017-12-27T12:18:53Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-27T12:20:12Z attila_lendvai joined #sbcl 2017-12-27T12:23:45Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-27T12:26:32Z attila_lendvai joined #sbcl 2017-12-27T12:26:32Z attila_lendvai quit (Changing host) 2017-12-27T12:26:32Z attila_lendvai joined #sbcl 2017-12-27T12:26:36Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-27T12:29:00Z attila_lendvai joined #sbcl 2017-12-27T12:29:00Z attila_lendvai quit (Changing host) 2017-12-27T12:29:00Z attila_lendvai joined #sbcl 2017-12-27T12:30:54Z stassats quit (Ping timeout: 272 seconds) 2017-12-27T12:32:39Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-27T12:33:33Z attila_lendvai joined #sbcl 2017-12-27T12:33:33Z attila_lendvai quit (Changing host) 2017-12-27T12:33:33Z attila_lendvai joined #sbcl 2017-12-27T12:44:25Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-27T12:46:53Z attila_lendvai joined #sbcl 2017-12-27T12:49:06Z Kevslinger joined #sbcl 2017-12-27T12:53:05Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-27T12:53:46Z attila_lendvai joined #sbcl 2017-12-27T12:55:12Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-27T12:57:10Z attila_lendvai joined #sbcl 2017-12-27T13:24:26Z stassats joined #sbcl 2017-12-27T13:48:24Z dougk_ joined #sbcl 2017-12-27T14:06:04Z sjl__ joined #sbcl 2017-12-27T14:07:43Z sjl joined #sbcl 2017-12-27T14:10:32Z sjl__ quit (Ping timeout: 252 seconds) 2017-12-27T14:56:31Z dougk_ quit (Ping timeout: 260 seconds) 2017-12-27T15:00:31Z dougk_ joined #sbcl 2017-12-27T15:07:13Z smurfrobot joined #sbcl 2017-12-27T15:10:49Z eudoxia joined #sbcl 2017-12-27T15:15:38Z nyef``: ... that feeling when the test suite takes too damned long to run, and then turns out not to call any function that you've injected a fault into because you're looking to change it and need to know which tests would be affected. 2017-12-27T15:18:03Z varjag joined #sbcl 2017-12-27T15:19:08Z scymtym: nyef``: sometimes 1) sh find-tests.sh FUNCTION 2) sh run-tests.sh FILES can serve as a first approximation 2017-12-27T15:31:20Z nyef``: Hrm. Sure, but not likely in this case, as it 2017-12-27T15:31:46Z nyef``: 's primarily internal debugger functions that I'm looking at. 2017-12-27T15:34:32Z nyef``: Thanks for pointing out find-tests.sh, though. I didn't know about that one. 2017-12-27T15:44:46Z scymtym: i see, won't work in that case. find-tests is relatively recent 2017-12-27T15:53:12Z pfdietz: I'd like coverage information on SBCL internals. 2017-12-27T15:53:58Z pfdietz: Random test generation + incremental/recoverable coverage information ==> automatic generation of tests that increase coverage, even if the tests don't fail. 2017-12-27T15:55:03Z smurfrobot quit (Remote host closed the connection) 2017-12-27T15:55:42Z nyef``: Hmm. I like that angle. 2017-12-27T15:56:03Z pfdietz: At one point I hacked up Waters' COVER package to do this, but I don't have permission to release those changes yet. 2017-12-27T15:58:32Z stassats: anything that should be done in sb-cover? 2017-12-27T15:59:26Z pfdietz: COVER and SB-COVER are rather different, if I understand SB-COVER correctly. 2017-12-27T16:03:05Z pfdietz: The big change I made to COVER was to make the structure POINT that was associated with branch points more generic, so other classes could go there. Points supporting checkpointing and rollback, points supporting serialization of coverage information to files. 2017-12-27T16:05:33Z smurfrobot joined #sbcl 2017-12-27T16:13:20Z dougk_ quit (Ping timeout: 265 seconds) 2017-12-27T16:38:27Z Jesin joined #sbcl 2017-12-27T17:10:25Z varjag quit (Ping timeout: 248 seconds) 2017-12-27T17:18:16Z varjag joined #sbcl 2017-12-27T17:19:59Z rgrau quit (Ping timeout: 248 seconds) 2017-12-27T17:47:51Z rgrau joined #sbcl 2017-12-27T17:55:14Z nyef``: WTF? MAP-REFERENCING-OBJECTS uses WITH-PINNED-OBJECTS on CHENEYGC only? 2017-12-27T18:24:29Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-27T18:26:04Z attila_lendvai joined #sbcl 2017-12-27T18:27:54Z Bike joined #sbcl 2017-12-27T18:28:53Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-27T18:30:09Z attila_lendvai joined #sbcl 2017-12-27T18:30:09Z attila_lendvai quit (Changing host) 2017-12-27T18:30:09Z attila_lendvai joined #sbcl 2017-12-27T18:33:48Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-27T18:35:49Z attila_lendvai joined #sbcl 2017-12-27T18:42:40Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-27T18:44:38Z attila_lendvai joined #sbcl 2017-12-27T18:53:09Z Bike quit (Ping timeout: 260 seconds) 2017-12-27T18:53:58Z Bike joined #sbcl 2017-12-27T18:53:58Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-27T18:55:59Z attila_lendvai joined #sbcl 2017-12-27T19:01:55Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-27T19:03:38Z attila_lendvai joined #sbcl 2017-12-27T19:10:13Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-27T19:12:31Z attila_lendvai joined #sbcl 2017-12-27T19:13:26Z mjl quit (Read error: Connection reset by peer) 2017-12-27T19:13:26Z gendl quit (Read error: Connection reset by peer) 2017-12-27T19:13:34Z stylewarning quit (Ping timeout: 264 seconds) 2017-12-27T19:13:36Z drmeister quit (Read error: Connection reset by peer) 2017-12-27T19:13:56Z jyc quit (Ping timeout: 255 seconds) 2017-12-27T19:13:59Z Kevslinger quit (Ping timeout: 252 seconds) 2017-12-27T19:14:01Z angular_mike quit (Ping timeout: 250 seconds) 2017-12-27T19:14:02Z p_l quit (Ping timeout: 255 seconds) 2017-12-27T19:14:27Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-27T19:17:13Z attila_lendvai joined #sbcl 2017-12-27T19:25:43Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-27T19:28:11Z attila_lendvai joined #sbcl 2017-12-27T19:32:38Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-27T19:33:33Z attila_lendvai joined #sbcl 2017-12-27T19:34:10Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-27T19:36:12Z attila_lendvai joined #sbcl 2017-12-27T19:36:12Z attila_lendvai quit (Changing host) 2017-12-27T19:36:12Z attila_lendvai joined #sbcl 2017-12-27T19:36:28Z nyef``: Okay, figured out why I couldn't get a test-suite hit on these functions: They're not used on a handful of platforms, of which my main test system is one. 2017-12-27T19:41:44Z mjl joined #sbcl 2017-12-27T19:41:53Z gendl joined #sbcl 2017-12-27T19:43:56Z drmeister joined #sbcl 2017-12-27T19:46:19Z angular_mike joined #sbcl 2017-12-27T19:50:57Z Kevslinger joined #sbcl 2017-12-27T19:53:13Z jyc joined #sbcl 2017-12-27T19:55:22Z stylewarning joined #sbcl 2017-12-27T20:04:55Z stassats quit (Quit: ZNC 1.6.2+deb1 - http://znc.in) 2017-12-27T20:06:21Z rgrau quit (Ping timeout: 265 seconds) 2017-12-27T20:19:10Z Xof: let's play the "I wonder what's broken in the release script this month" game 2017-12-27T20:19:28Z Xof: I should really release more often so that I actually remember what's broken and fix the bugs 2017-12-27T20:20:19Z Xof: stassats: sb-cover needs some care and attention to bootstrap through PCL 2017-12-27T20:20:43Z Xof: I think it builds src/code and src/compiler OK (or it did many years ago when I last tried it) 2017-12-27T20:21:26Z Xof: the PCL difficulty is because sb-cover causes the make-method-lambda optimizations not to fire (because they basically rewrite the code completely) but PCL bootstrap needs those optimizations 2017-12-27T20:22:18Z nyef`` dislikes MAKE-METHOD-LAMBDA. 2017-12-27T20:23:47Z rpg joined #sbcl 2017-12-27T20:28:09Z eudoxia quit (Quit: Leaving) 2017-12-27T20:28:34Z eudoxia joined #sbcl 2017-12-27T20:32:52Z nyef``: Oh, neat. There's a race condition in REPLACE-FRAME-CATCH-TAG on x86oids. 2017-12-27T20:35:14Z Bike quit (Ping timeout: 260 seconds) 2017-12-27T20:49:29Z eudoxia quit (Quit: Leaving) 2017-12-27T20:57:35Z scymtym quit (Ping timeout: 250 seconds) 2017-12-27T21:05:22Z rgrau joined #sbcl 2017-12-27T21:09:28Z oleo quit (Remote host closed the connection) 2017-12-27T21:10:15Z oleo joined #sbcl 2017-12-27T21:12:56Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-12-27T21:18:39Z scymtym joined #sbcl 2017-12-27T21:19:44Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-27T21:20:51Z attila_lendvai joined #sbcl 2017-12-27T21:20:51Z attila_lendvai quit (Changing host) 2017-12-27T21:20:51Z attila_lendvai joined #sbcl 2017-12-27T21:23:57Z rpg joined #sbcl 2017-12-27T21:24:39Z DeadTrickster_ joined #sbcl 2017-12-27T21:25:49Z Bike joined #sbcl 2017-12-27T21:27:29Z DeadTrickster quit (Ping timeout: 248 seconds) 2017-12-27T21:28:08Z Xof: immobile-space.c:310: warning: implicit declaration of function '__atomic_load' 2017-12-27T21:28:08Z Xof: immobile-space.c:310: error: '__ATOMIC_SEQ_CST' undeclared (first use in this function) 2017-12-27T21:29:37Z Xof: today is not looking like a good sbcl-release-day 2017-12-27T21:29:51Z Xof: this is presumably because I am building with an utterly ancient toolchain 2017-12-27T21:32:12Z pfdietz: Thank you for continuing to do this. 2017-12-27T21:34:47Z p_l joined #sbcl 2017-12-27T21:36:51Z Xof: is __atomic_load(&x, &hint, __ATOMIC_SEQ_CST); approximately equal to hint = __sync_fetch_and_add(&x, 0); ? 2017-12-27T21:40:32Z oleo: is it normal to get heap-exhausted when serializing an image via sbcl which contains the packag drei-mcclim/test ? 2017-12-27T21:41:27Z oleo quit (Quit: Leaving) 2017-12-27T21:45:00Z oleo joined #sbcl 2017-12-27T21:47:08Z dougk_ joined #sbcl 2017-12-27T21:50:05Z oleo quit (Remote host closed the connection) 2017-12-27T21:52:40Z oleo joined #sbcl 2017-12-27T22:15:42Z josemanuel joined #sbcl 2017-12-27T22:15:53Z jack_rabbit joined #sbcl 2017-12-27T22:16:57Z josemanuel quit (Client Quit) 2017-12-27T22:33:13Z rpg quit (Quit: My MacBook has gone to sleep. ZZZzzz…) 2017-12-27T22:48:37Z Jesin quit (Quit: Leaving) 2017-12-27T22:50:22Z rpg joined #sbcl 2017-12-27T22:57:17Z sjl quit (Ping timeout: 268 seconds) 2017-12-27T23:01:04Z Bike quit (Ping timeout: 260 seconds) 2017-12-27T23:40:15Z rgrau quit (Ping timeout: 248 seconds) 2017-12-28T00:27:56Z varjag quit (Quit: ERC (IRC client for Emacs 25.2.1)) 2017-12-28T00:38:00Z Bike joined #sbcl 2017-12-28T00:53:23Z milanj joined #sbcl 2017-12-28T01:12:57Z eschatologist quit (Ping timeout: 264 seconds) 2017-12-28T01:13:13Z eschatologist joined #sbcl 2017-12-28T02:48:31Z luis quit (Ping timeout: 248 seconds) 2017-12-28T02:49:39Z luis joined #sbcl 2017-12-28T02:53:14Z Bike quit (Ping timeout: 260 seconds) 2017-12-28T03:04:33Z luis quit (Ping timeout: 248 seconds) 2017-12-28T03:05:11Z luis joined #sbcl 2017-12-28T03:07:38Z rpg quit (Quit: Textual IRC Client: www.textualapp.com) 2017-12-28T03:34:48Z jasom: Is the calling-convention for each architecture documented anywhere? If not, is it explicit in the code somewhere? 2017-12-28T03:36:21Z nyef``: jasom: Try doc/internals/calling-convention.texinfo ? 2017-12-28T03:37:15Z Jesin joined #sbcl 2017-12-28T03:40:09Z jasom: nyef``: thanks; any reason that r8-r11 aren't used for arguments/return-values? on x64? 2017-12-28T03:40:59Z nyef``: I have no idea. 2017-12-28T03:41:47Z nyef``: It could be anything from "register pressure" to "nobody thought of it" to "nobody wanted to do the work", and that's just off the top of my head. Could be other reasons as well. 2017-12-28T03:47:12Z nyef``: jasom: Oh, and that document antedates the ARM ports, which have their own quirk on the calling convention because of register pressure issues, and doesn't appear to cover things like the use of FDEFNs, the ARM and SPARC twist on FDEFNs, and so on. 2017-12-28T03:47:32Z nyef``: Treat it as a starting point for your own investigation, not as anything particularly authoritative. 2017-12-28T03:59:51Z nyef``: Oh, and it also antedates all of the new x86-64 immobile-whatnot wackyness. 2017-12-28T04:07:11Z nyef``: Ugh. Just wasted several (slow!) builds because I used FLET instead of LABELS. 2017-12-28T05:26:26Z milanj quit (Quit: This computer has gone to sleep) 2017-12-28T05:43:05Z dougk_ quit (Ping timeout: 240 seconds) 2017-12-28T06:55:36Z myrkraverk_ joined #sbcl 2017-12-28T06:57:27Z myrkraverk quit (Ping timeout: 240 seconds) 2017-12-28T08:15:30Z myrkraverk_ is now known as myrkraverk 2017-12-28T09:48:19Z whoman quit (Quit: Leaving) 2017-12-28T09:49:21Z whoman joined #sbcl 2017-12-28T10:00:09Z phoe joined #sbcl 2017-12-28T10:00:12Z phoe: On SBCL: (trace (setf config)) ;;=> WARNING: (SETF CONFIG) is not a valid function name, not tracing. 2017-12-28T10:00:15Z phoe: where #'(setf config) ;;=> # 2017-12-28T10:00:22Z phoe: is this expected? 2017-12-28T10:03:10Z phoe: Found the error, it was on my side. Thanks. 2017-12-28T10:13:39Z m00natic joined #sbcl 2017-12-28T10:21:36Z rgrau joined #sbcl 2017-12-28T10:54:54Z scymtym: i think there might be a regression in DISASSEMBLE: while working on something unrelated, i have seen the first label output as "L" instead of "L0". can anybody confirm? 2017-12-28T10:56:09Z rgrau quit (Ping timeout: 264 seconds) 2017-12-28T11:01:34Z phoe: 1.4.2 shows it as L0 2017-12-28T11:03:12Z scymtym: sorry, it's my integer output optimization change 2017-12-28T11:18:49Z rgrau joined #sbcl 2017-12-28T12:14:11Z jdz_ is now known as jdz 2017-12-28T12:51:21Z rgrau quit (Ping timeout: 260 seconds) 2017-12-28T13:07:06Z Ionic quit (Ping timeout: 246 seconds) 2017-12-28T13:13:01Z dougk_ joined #sbcl 2017-12-28T13:16:24Z rgrau joined #sbcl 2017-12-28T13:18:29Z dougk_ quit (Ping timeout: 256 seconds) 2017-12-28T13:23:40Z rgrau quit (Ping timeout: 272 seconds) 2017-12-28T13:34:06Z karswell joined #sbcl 2017-12-28T13:39:10Z stylewarning: nyef``: Misuse of FLET should issue a restart! 2017-12-28T13:41:27Z cromachina joined #sbcl 2017-12-28T13:57:34Z dougk_ joined #sbcl 2017-12-28T14:02:57Z dougk_ quit (Ping timeout: 240 seconds) 2017-12-28T14:07:40Z dougk_ joined #sbcl 2017-12-28T14:10:45Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-28T14:15:56Z sjl__ joined #sbcl 2017-12-28T14:32:04Z dougk_ quit (Ping timeout: 272 seconds) 2017-12-28T14:46:24Z attila_lendvai joined #sbcl 2017-12-28T14:55:28Z dougk_ joined #sbcl 2017-12-28T15:24:51Z pkhuong: Xof: if anything, FAA is stronger 2017-12-28T15:31:44Z nyef``: Ugh. "PC-OFFSET not in code object" is because the debugger relies on reg_CODE to be correct for the program counter unless it's within an assembly routine, but that is KNOWN to not be the case. 2017-12-28T16:10:44Z Bike joined #sbcl 2017-12-28T16:18:50Z smurfrobot quit (Remote host closed the connection) 2017-12-28T16:19:36Z sjl__ is now known as sjl 2017-12-28T16:25:32Z smurfrobot joined #sbcl 2017-12-28T16:43:54Z smurfrobot quit (Remote host closed the connection) 2017-12-28T16:45:48Z smurfrobot joined #sbcl 2017-12-28T16:51:02Z smurfrobot quit (Remote host closed the connection) 2017-12-28T17:05:05Z dougk_ quit (Ping timeout: 268 seconds) 2017-12-28T17:05:53Z leah2 quit (Ping timeout: 252 seconds) 2017-12-28T17:08:20Z rpg joined #sbcl 2017-12-28T17:08:42Z smurfrobot joined #sbcl 2017-12-28T17:13:33Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-28T17:16:48Z leah2 joined #sbcl 2017-12-28T17:17:52Z smurfrobot joined #sbcl 2017-12-28T17:31:21Z eudoxia joined #sbcl 2017-12-28T18:11:36Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-28T18:13:00Z attila_lendvai joined #sbcl 2017-12-28T18:32:45Z jasom: is there a suggested set of benchmark(s) for testing changes to sbcl? 2017-12-28T18:41:11Z nyef``: I mostly rely on the test suite, TBH. 2017-12-28T18:42:00Z nyef``: But then, I mostly deal with correctness issues. 2017-12-28T19:05:55Z varjag joined #sbcl 2017-12-28T19:11:28Z smurfrobot quit (Remote host closed the connection) 2017-12-28T19:21:27Z smurfrobot joined #sbcl 2017-12-28T19:24:13Z rgrau joined #sbcl 2017-12-28T19:26:51Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-28T19:42:49Z pfdietz quit 2017-12-28T20:02:58Z nyef``: The more I dig into debugger stuff, the more problems I find. /-: 2017-12-28T20:15:17Z dougk_ joined #sbcl 2017-12-28T20:15:20Z DeadTrickster_ quit (Remote host closed the connection) 2017-12-28T20:18:53Z nyef``: Does the x86oid version of FIND-ESCAPED-FRAME (debug-int.lisp) really need WITHOUT-GCING, or can I kill it? 2017-12-28T20:19:47Z nyef``: (I'm thinking that it doesn't, but I'd like for someone else to weigh in.) 2017-12-28T20:21:35Z eudoxia quit (Remote host closed the connection) 2017-12-28T20:39:57Z dougk_ quit (Ping timeout: 240 seconds) 2017-12-28T21:19:56Z DeadTrickster joined #sbcl 2017-12-28T21:20:47Z Xof: pkhuong: I have to make a call, as I'm going somewhere for a few days which might have (shock! horror!) no internet access 2017-12-28T21:22:30Z Xof: fetch_and_add looks stronger to me too but I was a bit concerned at not seeing any mfence in dissasembly (I see lock cmpxchg which I guess has the same effect) 2017-12-28T21:23:40Z Xof: I'm mostly worried about building a subtly broken binary 2017-12-28T21:23:46Z Xof: (building and releasing) 2017-12-28T21:25:12Z Xof: but if fetch_and_add is stronger, then all I need is some kind of check that I'm using it correctly 2017-12-28T21:36:05Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-28T21:36:34Z DeadTrickster joined #sbcl 2017-12-28T22:05:58Z varjag quit (Remote host closed the connection) 2017-12-28T22:06:09Z varjag joined #sbcl 2017-12-28T22:10:19Z rgrau quit (Read error: Connection reset by peer) 2017-12-28T22:10:54Z rgrau` joined #sbcl 2017-12-28T22:21:58Z sjl quit (Ping timeout: 252 seconds) 2017-12-28T22:41:13Z stassats joined #sbcl 2017-12-28T22:41:31Z stassats: Xof: lock cmpxchg is for __sync_val_compare_and_swap 2017-12-28T22:42:22Z stassats: i see two mfences from __sync_fetch_and_add with clang, i guess gcc knows that it's not needed 2017-12-28T22:42:47Z smurfrobot joined #sbcl 2017-12-28T22:42:58Z stassats: and it shouldn't be needed on x86-64, but is it needed on alpha? but immobile-space is only supported on x86-64 2017-12-28T22:47:58Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-28T23:01:50Z jasom: nyef``: I finally discovered why... r8-r10 are used for &more and r11 of course is the temp register 2017-12-28T23:03:54Z jasom: r13+ could be used I suppose, but they do have larger encodings, and there are places where the x64 backend generates code for all arg registers regardless of whether or not they are used... 2017-12-28T23:03:58Z stassats: jasom: r8 and r10 aren't wired for &more 2017-12-28T23:04:09Z stassats: any other register can be used 2017-12-28T23:05:15Z jasom: stassats: https://github.com/sbcl/sbcl/blob/master/src/compiler/x86-64/call.lisp#L1040 2017-12-28T23:05:51Z stassats: what do you want to say with that? 2017-12-28T23:06:20Z jasom: r8, r9, and r10 can't be used as arg registers without changing at least that code, right? 2017-12-28T23:07:26Z nyef``: That seems about right. 2017-12-28T23:07:56Z stassats: copy-more-arg should be changed to use lifetime information 2017-12-28T23:08:08Z stassats: but r8 is not abi, it just uses the unused registers 2017-12-28T23:08:14Z jasom tried swapping r8 for rsi in *register-arg-tns* and it blew up very early in the build as r8 was in use; I'm not super familiar with sbcl's internals but that appeared to be the reason 2017-12-28T23:08:28Z jasom: stassats: isn't the ABI whatever call.lisp defines? 2017-12-28T23:09:25Z nyef``: jasom: There's also call_into_lisp, the debugger, fake_foreign_function_call(), and so on. 2017-12-28T23:10:01Z stassats: jasom: &more is not in the ABI 2017-12-28T23:10:05Z jasom: nyef``: ah, good point 2017-12-28T23:10:43Z stassats: copy-more-arg is manually using unused registers, it doesn't encode the ABI 2017-12-28T23:11:07Z stassats: changing copy-more-arg wouldn't change the ABI 2017-12-28T23:25:01Z Jesin quit (Quit: Leaving) 2017-12-28T23:34:49Z jasom: heh call_into_lisp wastes space by doing e.g. xor rax,rax instead of xor eax,eax 2017-12-28T23:38:14Z nyef``: Does it, or does the assembler use the more compact encoding anyway? 2017-12-28T23:38:50Z rgrau` quit (Quit: ERC (IRC client for Emacs 26.0.50.1)) 2017-12-28T23:38:54Z jasom: nyef``: I'll have to check. Optimizing assemblers weird me out. 2017-12-28T23:42:24Z rgrau joined #sbcl 2017-12-28T23:43:37Z smurfrobot joined #sbcl 2017-12-28T23:48:11Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-28T23:48:23Z rgrau quit (Quit: ZNC 1.6.3+deb1 - http://znc.in) 2017-12-28T23:49:55Z rpg quit (Quit: Textual IRC Client: www.textualapp.com) 2017-12-28T23:50:01Z rgrau joined #sbcl 2017-12-28T23:50:04Z rgrau quit (Remote host closed the connection) 2017-12-28T23:54:22Z m00natic quit (Remote host closed the connection) 2017-12-28T23:54:25Z rgrau joined #sbcl 2017-12-29T00:19:19Z sjl joined #sbcl 2017-12-29T00:24:21Z sjl quit (Ping timeout: 264 seconds) 2017-12-29T00:44:23Z smurfrobot joined #sbcl 2017-12-29T00:50:12Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-29T00:59:17Z stassats quit (Read error: No route to host) 2017-12-29T01:45:32Z Bike_ joined #sbcl 2017-12-29T01:45:43Z smurfrobot joined #sbcl 2017-12-29T01:48:44Z Bike quit (Ping timeout: 260 seconds) 2017-12-29T01:49:30Z Bike_ is now known as Bike 2017-12-29T01:50:35Z smurfrobot quit (Ping timeout: 252 seconds) 2017-12-29T01:53:35Z mjl quit (Read error: Connection reset by peer) 2017-12-29T01:54:28Z mjl joined #sbcl 2017-12-29T01:58:34Z Bike_ joined #sbcl 2017-12-29T01:59:52Z varjag quit (Ping timeout: 272 seconds) 2017-12-29T02:01:44Z dougk_ joined #sbcl 2017-12-29T02:02:09Z Bike quit (Ping timeout: 260 seconds) 2017-12-29T02:03:19Z Bike_ quit (Ping timeout: 260 seconds) 2017-12-29T02:20:11Z sjl joined #sbcl 2017-12-29T02:24:33Z sjl quit (Ping timeout: 248 seconds) 2017-12-29T02:32:03Z aeth: If I pass a closure from Thread A to Thread B, and then call that closure, which passes data from Thread A to a data structure in Thread B, what happens internally? Does it cons? 2017-12-29T02:33:02Z aeth: I'm trying to think of a way to pass messages between threads in a 0-consing way, if possible. Even if it means serializing and deserializing bytes or something. (It only has to be 0-consing in SBCL, it merely has to work in other CLs.) 2017-12-29T02:33:42Z nyef``: aeth: Creating a closure in SBCL will cons unless the closure is declared to be DYNAMIC-EXTENT. 2017-12-29T02:34:00Z aeth: nyef``: I don't care about consing before the loop is run, I just don't want to cons within the loop. 2017-12-29T02:34:26Z nyef``: If the closure is DYNAMIC-EXTENT, then you must prevent the call frame that allocates the closure from returning until after you're done with the closure. 2017-12-29T02:35:02Z nyef``: Given a pre-existing closure, merely calling it shouldn't cons unless the closure itself conses. 2017-12-29T02:35:07Z aeth: I have a game loop that runs the logic at 100 times per second and the rendering synced to the monitor framerate. My own code is 0-consing within this loop. (One library I uses conses slightly. I will eventually replace it.) I mostly get away with this by preallocating just before the loop starts. 2017-12-29T02:35:43Z nyef``: ... So, the logic runs slower than the renderer on some systems? 2017-12-29T02:36:01Z aeth: Possibly. 2017-12-29T02:37:09Z aeth: What's important is that the logic advances in a fixed time step. 2017-12-29T02:37:49Z nyef``: True. Wouldn't want the game to slow down or speed up purely from being run on the other side of the pond. (-: 2017-12-29T02:40:23Z aeth: I've managed to preallocate just about everything (only the cl-sdl2 input conses some... I'll probably eventually replace this with directly talking to X or the Win API, which could eliminate consing and also afaik make packaging very easy). The few things that can't be preallocated (some matrices) are declared dynamic-extent. 2017-12-29T02:42:24Z aeth: Just did a simple sb-profile:report and game-loop conses 448 bytes (hmm... I think that's just one array that's initialized once; yes, it's double-float and of size 7 and (/ 448 7d0) is 64.0d0) 2017-12-29T02:42:35Z aeth: But sdl-input! conses 32,768 bytes. 2017-12-29T02:43:11Z aeth: But the important thing is that I've managed to essentially have a 0-consing loop (at least in my own code) and I'd like to keep it that way when I add threads (probably starting with sound, and then maybe I'll offload some AI or physics in the near future) 2017-12-29T02:44:14Z aeth: Afaik, profiling game-loop and sdl-input! when game-loop calls sdl-input! means that all of the consing in game-loop minus sdl-input! is in one place and all of the consing in sdl-input! is in the other. 2017-12-29T02:45:28Z aeth: s/448 bytes/448 bits/ ?? 2017-12-29T02:45:36Z aeth: The units aren't labelled. 2017-12-29T02:46:27Z smurfrobot joined #sbcl 2017-12-29T02:50:26Z aeth: nyef``: So, just to be clear, I can pass any data between threads and as long as those data are non-consing, I can keep my loop non-consing? 2017-12-29T02:51:33Z aeth: Does that mean that e.g. an array message will cons and be copied across threads or something? If I have to send arrays, should I do something like preallocate arrays on both sides and send the contents in a loop? 2017-12-29T02:52:23Z varjag joined #sbcl 2017-12-29T02:52:26Z nyef``: Right. If you have shared state then you have shared state. You just bought yourself a pile of synchronization problems, but also the opportunity to communicate without consing. 2017-12-29T02:52:44Z aeth: bt:with-lock should work, right? 2017-12-29T02:52:51Z aeth: e.g. I could set up a queue and use that? 2017-12-29T02:53:20Z nyef``: I have no idea. 2017-12-29T02:54:05Z nyef``: Amazingly enough, I mostly don't write programs that involve synchronizing multiple threads. 2017-12-29T02:54:29Z aeth: I try to avoid threads where I can get away with doing so, which is almost always. 2017-12-29T02:54:54Z nyef``: (The SBCL/PPC thread port a few years ago and the safepoint fixes this past month notwithstanding.) 2017-12-29T02:55:41Z aeth: I'm writing a game engine so I'm only testing on x86-64. 2017-12-29T02:56:36Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-29T02:57:05Z varjag quit (Ping timeout: 268 seconds) 2017-12-29T02:57:45Z nyef``: Odd, if I were writing a game engine there's a decent chance that I'd be trying to target PPC or MIPS. 2017-12-29T02:58:06Z aeth: It's possible that other 64-bit architectures might be useful later, but that complicates things too much and I make too many 64-bit assumptions to port to 32-bit. 2017-12-29T02:58:57Z aeth: I think it's safe to assume that the client will always be x86-64 unless mobile or Nintendo Switch (neither of which I'm supporting), but if I do add networking support there's no reason why the *server* would have to be x86-64. 2017-12-29T03:00:10Z nyef``: You know how to spot an allocation sequence in a trace-file or in disassemble output, right? 2017-12-29T03:00:20Z aeth: in disassemble, yes 2017-12-29T03:00:39Z aeth: I mostly use disassemble and sb-profile to check for allocations 2017-12-29T03:00:40Z nyef``: Okay, a trace-file is pretty similar. 2017-12-29T03:02:55Z leo_song joined #sbcl 2017-12-29T03:13:43Z Bike joined #sbcl 2017-12-29T03:30:39Z smurfrobot joined #sbcl 2017-12-29T03:35:17Z smurfrobot quit (Ping timeout: 256 seconds) 2017-12-29T03:56:22Z varjag joined #sbcl 2017-12-29T04:01:21Z varjag quit (Ping timeout: 260 seconds) 2017-12-29T04:22:33Z smurfrobot joined #sbcl 2017-12-29T04:27:01Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-29T04:27:53Z smurfrobot joined #sbcl 2017-12-29T04:29:58Z smurfrobot quit (Read error: Connection reset by peer) 2017-12-29T04:30:16Z smurfrobot joined #sbcl 2017-12-29T04:35:02Z smurfrobot quit (Ping timeout: 252 seconds) 2017-12-29T04:37:37Z smurfrobot joined #sbcl 2017-12-29T04:42:21Z smurfrobot quit (Ping timeout: 265 seconds) 2017-12-29T04:49:42Z smurfrobot joined #sbcl 2017-12-29T04:58:07Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-29T05:12:07Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-29T05:13:42Z attila_lendvai joined #sbcl 2017-12-29T05:50:08Z smurfrobot joined #sbcl 2017-12-29T05:53:35Z dougk_ quit (Ping timeout: 240 seconds) 2017-12-29T05:56:14Z White_Flame joined #sbcl 2017-12-29T05:57:57Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-29T06:34:40Z smurfrobot joined #sbcl 2017-12-29T06:43:43Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-29T06:59:28Z smurfrobot joined #sbcl 2017-12-29T07:00:59Z Kevslinger quit (Quit: Connection closed for inactivity) 2017-12-29T07:04:01Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-29T07:14:27Z smurfrobot joined #sbcl 2017-12-29T07:17:45Z Bike quit (Quit: Page closed) 2017-12-29T07:18:56Z smurfrobot quit (Ping timeout: 252 seconds) 2017-12-29T07:25:04Z smurfrobot joined #sbcl 2017-12-29T07:26:15Z smurfrobot quit (Read error: Connection reset by peer) 2017-12-29T07:26:37Z smurfrobot joined #sbcl 2017-12-29T07:32:57Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-29T07:51:35Z smurfrobot joined #sbcl 2017-12-29T07:56:20Z smurfrobot quit (Ping timeout: 252 seconds) 2017-12-29T07:58:05Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-29T07:58:43Z DeadTrickster joined #sbcl 2017-12-29T08:10:26Z pkhuong quit (Ping timeout: 260 seconds) 2017-12-29T08:18:54Z smurfrobot joined #sbcl 2017-12-29T08:23:40Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-29T08:34:19Z smurfrobot joined #sbcl 2017-12-29T09:39:33Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-29T09:39:58Z DeadTrickster joined #sbcl 2017-12-29T09:42:26Z stassats joined #sbcl 2017-12-29T10:23:59Z stassats quit (Ping timeout: 248 seconds) 2017-12-29T10:26:22Z Xof: *sigh* my clever plan is not quite as clever as I wanted it to be 2017-12-29T10:31:43Z Xof: however, sbcl is sort-of released now 2017-12-29T10:31:58Z Xof: source and x86 binaries are on sourceforge 2017-12-29T10:32:02Z Xof: manual is building now 2017-12-29T10:32:34Z Xof: sha256 hashes gpg signature should be OK but were done by hand (well obviously not completely by hand but unscripted) 2017-12-29T10:38:45Z stassats joined #sbcl 2017-12-29T10:48:06Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-29T10:50:00Z attila_lendvai joined #sbcl 2017-12-29T11:05:37Z milanj joined #sbcl 2017-12-29T11:06:45Z varjag joined #sbcl 2017-12-29T11:14:09Z stassats quit (Ping timeout: 264 seconds) 2017-12-29T11:16:50Z stassats joined #sbcl 2017-12-29T11:24:57Z stassats quit (Ping timeout: 240 seconds) 2017-12-29T11:27:03Z stassats joined #sbcl 2017-12-29T11:40:05Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-29T11:41:11Z DeadTrickster joined #sbcl 2017-12-29T12:20:04Z pkhuong joined #sbcl 2017-12-29T12:20:28Z pkhuong is now known as Guest26041 2017-12-29T12:21:33Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-29T12:22:08Z DeadTrickster joined #sbcl 2017-12-29T12:33:53Z Kevslinger joined #sbcl 2017-12-29T12:39:56Z scymtym quit (Ping timeout: 260 seconds) 2017-12-29T12:56:30Z scymtym joined #sbcl 2017-12-29T14:09:17Z zulu_inuoe joined #sbcl 2017-12-29T14:17:44Z dougk_ joined #sbcl 2017-12-29T14:39:18Z scymtym: Xof: thanks for doing the release work. also, since you seem to "own" much of the manual, what is your opinion on using a different style for the HTML version: https://techfak.de/~jmoringe/sbcl.html 2017-12-29T14:43:06Z jack_rabbit quit (Quit: Leaving) 2017-12-29T14:49:22Z varjag quit (Remote host closed the connection) 2017-12-29T14:49:33Z varjag joined #sbcl 2017-12-29T14:55:04Z varjag quit (Ping timeout: 272 seconds) 2017-12-29T15:13:21Z dougk_ quit (Ping timeout: 246 seconds) 2017-12-29T16:01:18Z scymtym: our pathname accessors do not work on synonym streams. i'm pretty sure they are supposed to 2017-12-29T16:05:42Z Jesin joined #sbcl 2017-12-29T16:08:27Z stassats quit (Ping timeout: 240 seconds) 2017-12-29T16:29:20Z eudoxia joined #sbcl 2017-12-29T16:30:39Z dougk_ joined #sbcl 2017-12-29T16:34:19Z josemanuel joined #sbcl 2017-12-29T16:48:03Z Jesin quit (Ping timeout: 256 seconds) 2017-12-29T17:15:13Z Jesin joined #sbcl 2017-12-29T17:20:47Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-29T17:22:07Z attila_lendvai joined #sbcl 2017-12-29T17:22:07Z attila_lendvai quit (Changing host) 2017-12-29T17:22:07Z attila_lendvai joined #sbcl 2017-12-29T17:24:18Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-29T17:26:05Z attila_lendvai joined #sbcl 2017-12-29T17:26:05Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-29T17:27:50Z attila_lendvai joined #sbcl 2017-12-29T17:37:24Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-29T17:38:37Z attila_lendvai joined #sbcl 2017-12-29T17:44:48Z dougk_ quit (Ping timeout: 272 seconds) 2017-12-29T18:03:48Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-29T18:06:11Z attila_lendvai joined #sbcl 2017-12-29T18:06:11Z attila_lendvai quit (Changing host) 2017-12-29T18:06:11Z attila_lendvai joined #sbcl 2017-12-29T18:09:21Z cromachina quit (Read error: Connection reset by peer) 2017-12-29T18:11:10Z cromachina joined #sbcl 2017-12-29T18:25:02Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-29T18:25:31Z DeadTrickster joined #sbcl 2017-12-29T18:27:41Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-29T18:29:32Z attila_lendvai joined #sbcl 2017-12-29T18:29:32Z attila_lendvai quit (Changing host) 2017-12-29T18:29:32Z attila_lendvai joined #sbcl 2017-12-29T18:45:35Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-29T18:45:57Z DeadTrickster joined #sbcl 2017-12-29T19:06:11Z smurfrobot quit (Remote host closed the connection) 2017-12-29T19:10:44Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-29T19:12:14Z attila_lendvai joined #sbcl 2017-12-29T19:17:18Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-29T19:18:01Z attila_lendvai joined #sbcl 2017-12-29T19:23:56Z varjag joined #sbcl 2017-12-29T19:31:14Z foom joined #sbcl 2017-12-29T19:33:08Z foom2 quit (Ping timeout: 265 seconds) 2017-12-29T20:06:43Z smurfrobot joined #sbcl 2017-12-29T20:11:27Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-29T20:14:01Z smurfrobot joined #sbcl 2017-12-29T20:23:08Z smurfrobot quit (Remote host closed the connection) 2017-12-29T20:29:39Z smurfrobot joined #sbcl 2017-12-29T20:29:57Z eudoxia quit (Quit: Leaving) 2017-12-29T20:34:09Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-29T20:35:42Z smurfrobot joined #sbcl 2017-12-29T20:40:05Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-29T20:41:05Z smurfrobot joined #sbcl 2017-12-29T20:42:13Z dougk_ joined #sbcl 2017-12-29T20:45:51Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-29T20:46:27Z dougk_ quit (Ping timeout: 240 seconds) 2017-12-29T20:49:45Z smurfrobot joined #sbcl 2017-12-29T20:59:32Z varjag quit (Ping timeout: 252 seconds) 2017-12-29T20:59:51Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-29T21:02:34Z varjag joined #sbcl 2017-12-29T21:07:12Z smurfrobot joined #sbcl 2017-12-29T21:14:27Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-29T21:20:15Z zulu_inuoe quit (Read error: Connection reset by peer) 2017-12-29T21:25:51Z scymtym quit (Ping timeout: 240 seconds) 2017-12-29T21:30:33Z smurfrobot joined #sbcl 2017-12-29T21:35:25Z smurfrobot quit (Ping timeout: 265 seconds) 2017-12-29T21:41:53Z dougk_ joined #sbcl 2017-12-29T21:43:54Z smurfrobot joined #sbcl 2017-12-29T21:47:12Z scymtym joined #sbcl 2017-12-29T21:49:02Z smurfrobot quit (Ping timeout: 252 seconds) 2017-12-29T21:50:14Z smurfrobot joined #sbcl 2017-12-29T21:54:41Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-29T22:02:20Z cromachina_ joined #sbcl 2017-12-29T22:05:57Z cromachina quit (Ping timeout: 256 seconds) 2017-12-29T22:11:44Z White_Flame quit (Remote host closed the connection) 2017-12-29T22:28:13Z smurfrobot joined #sbcl 2017-12-29T22:30:41Z White_Flame joined #sbcl 2017-12-29T22:32:45Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-29T22:53:57Z smurfrobot joined #sbcl 2017-12-29T22:59:13Z smurfrobot quit (Ping timeout: 256 seconds) 2017-12-29T23:02:45Z eschatologist quit (Ping timeout: 264 seconds) 2017-12-29T23:07:16Z eschatologist joined #sbcl 2017-12-29T23:19:10Z smurfrobot joined #sbcl 2017-12-29T23:23:38Z smurfrobot quit (Ping timeout: 252 seconds) 2017-12-29T23:29:31Z smurfrobot joined #sbcl 2017-12-29T23:33:47Z Jesin quit (Quit: Leaving) 2017-12-29T23:34:24Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-29T23:41:04Z smurfrobot joined #sbcl 2017-12-29T23:45:37Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-30T00:01:37Z eschatologist quit (Remote host closed the connection) 2017-12-30T00:02:26Z Greasy-Gappers joined #sbcl 2017-12-30T00:04:28Z eschatologist joined #sbcl 2017-12-30T00:15:49Z smurfrobot joined #sbcl 2017-12-30T00:19:57Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-30T00:19:57Z dougk_ quit (Ping timeout: 240 seconds) 2017-12-30T00:21:14Z smurfrobot joined #sbcl 2017-12-30T00:26:02Z smurfrobot quit (Ping timeout: 265 seconds) 2017-12-30T00:28:39Z smurfrobot joined #sbcl 2017-12-30T00:33:05Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-30T00:34:32Z smurfrobot joined #sbcl 2017-12-30T00:44:09Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-30T00:53:31Z smurfrobot joined #sbcl 2017-12-30T00:58:07Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-30T01:01:37Z libreman quit (Ping timeout: 256 seconds) 2017-12-30T01:03:40Z smurfrobot joined #sbcl 2017-12-30T01:08:45Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-30T01:09:42Z smurfrobot joined #sbcl 2017-12-30T01:10:52Z dougk_ joined #sbcl 2017-12-30T01:14:09Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-30T01:15:04Z libreman joined #sbcl 2017-12-30T01:15:26Z smurfrobot joined #sbcl 2017-12-30T01:20:10Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-30T01:26:35Z smurfrobot joined #sbcl 2017-12-30T01:30:57Z smurfrobot quit (Read error: Connection reset by peer) 2017-12-30T01:31:18Z smurfrobot joined #sbcl 2017-12-30T01:36:11Z smurfrobot quit (Ping timeout: 256 seconds) 2017-12-30T01:36:38Z varjag quit (Ping timeout: 272 seconds) 2017-12-30T01:37:56Z karswell quit (Read error: Connection reset by peer) 2017-12-30T01:38:18Z karswell joined #sbcl 2017-12-30T01:47:34Z varjag joined #sbcl 2017-12-30T01:48:59Z smurfrobot joined #sbcl 2017-12-30T01:52:08Z varjag quit (Ping timeout: 252 seconds) 2017-12-30T01:53:45Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-30T02:06:26Z dougk_ quit (Ping timeout: 252 seconds) 2017-12-30T02:08:21Z varjag joined #sbcl 2017-12-30T02:09:46Z dougk_ joined #sbcl 2017-12-30T02:13:01Z varjag quit (Ping timeout: 256 seconds) 2017-12-30T02:49:59Z smurfrobot joined #sbcl 2017-12-30T02:54:57Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-30T03:00:28Z smurfrobot joined #sbcl 2017-12-30T03:05:09Z smurfrobot quit (Ping timeout: 256 seconds) 2017-12-30T03:06:51Z dougk_ quit (Ping timeout: 256 seconds) 2017-12-30T03:10:43Z smurfrobot joined #sbcl 2017-12-30T03:15:26Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-30T03:20:45Z smurfrobot joined #sbcl 2017-12-30T03:25:33Z smurfrobot quit (Ping timeout: 256 seconds) 2017-12-30T03:31:02Z smurfrobot joined #sbcl 2017-12-30T03:35:45Z smurfrobot quit (Ping timeout: 256 seconds) 2017-12-30T04:25:17Z bkst_ quit (Ping timeout: 265 seconds) 2017-12-30T04:27:37Z bkst joined #sbcl 2017-12-30T04:27:37Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-30T04:29:21Z attila_lendvai joined #sbcl 2017-12-30T04:29:21Z attila_lendvai quit (Changing host) 2017-12-30T04:29:21Z attila_lendvai joined #sbcl 2017-12-30T04:31:51Z smurfrobot joined #sbcl 2017-12-30T04:35:57Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-30T04:42:21Z smurfrobot joined #sbcl 2017-12-30T04:47:09Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-30T04:52:37Z smurfrobot joined #sbcl 2017-12-30T04:57:01Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-30T05:12:57Z smurfrobot joined #sbcl 2017-12-30T05:17:45Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-30T05:23:04Z smurfrobot joined #sbcl 2017-12-30T05:27:56Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-30T05:43:35Z smurfrobot joined #sbcl 2017-12-30T05:48:26Z smurfrobot quit (Ping timeout: 268 seconds) 2017-12-30T06:03:55Z smurfrobot joined #sbcl 2017-12-30T06:04:48Z smurfrobot quit (Remote host closed the connection) 2017-12-30T06:05:04Z smurfrobot joined #sbcl 2017-12-30T08:17:06Z dougk_ joined #sbcl 2017-12-30T08:31:27Z dougk_ quit (Ping timeout: 248 seconds) 2017-12-30T09:10:42Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-30T09:11:15Z DeadTrickster joined #sbcl 2017-12-30T09:20:05Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-30T09:22:53Z attila_lendvai joined #sbcl 2017-12-30T09:22:53Z attila_lendvai quit (Changing host) 2017-12-30T09:22:53Z attila_lendvai joined #sbcl 2017-12-30T09:27:47Z phoe left #sbcl 2017-12-30T09:39:16Z milanj quit (Quit: This computer has gone to sleep) 2017-12-30T10:51:03Z varjag joined #sbcl 2017-12-30T11:11:11Z milanj joined #sbcl 2017-12-30T11:42:06Z BitPuffin|osx joined #sbcl 2017-12-30T12:07:02Z stassats joined #sbcl 2017-12-30T12:19:21Z stassats quit (Ping timeout: 256 seconds) 2017-12-30T12:20:09Z stassats joined #sbcl 2017-12-30T12:22:23Z stassats: allocation-information.7 is now failing on the x86 CI instance all the time 2017-12-30T12:22:45Z stassats: doesn't fail on darwin-x86 2017-12-30T12:28:57Z stassats: huh, x86 binaries on sbcl.org 2017-12-30T12:30:33Z varjag quit (Ping timeout: 265 seconds) 2017-12-30T12:37:52Z stassats: and of course, ALLOCATION-INFORMATION.7 succeeds on linux-x86 2017-12-30T12:38:28Z attila_lendvai quit (Ping timeout: 272 seconds) 2017-12-30T12:39:58Z stassats: .6 2017-12-30T12:41:59Z stassats: ;; This FORMAT call has the effect of consuming enough stack space 2017-12-30T12:42:10Z stassats: i did reduce stack space usage, maybe that's the problem 2017-12-30T12:46:25Z varjag joined #sbcl 2017-12-30T12:48:22Z attila_lendvai joined #sbcl 2017-12-30T12:51:31Z varjag quit (Ping timeout: 255 seconds) 2017-12-30T12:51:55Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-30T12:53:06Z DeadTrickster joined #sbcl 2017-12-30T12:58:11Z dougk_ joined #sbcl 2017-12-30T13:02:25Z dougk_ quit (Ping timeout: 256 seconds) 2017-12-30T13:05:18Z stassats quit (Read error: No route to host) 2017-12-30T13:10:48Z stassats joined #sbcl 2017-12-30T13:31:02Z BitPuffin|osx quit (Ping timeout: 272 seconds) 2017-12-30T13:39:40Z milanj quit (Quit: This computer has gone to sleep) 2017-12-30T13:50:57Z stassats quit (Ping timeout: 240 seconds) 2017-12-30T14:13:44Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-30T14:14:27Z DeadTrickster joined #sbcl 2017-12-30T14:16:11Z dougk_ joined #sbcl 2017-12-30T14:37:22Z White__Flame joined #sbcl 2017-12-30T14:41:31Z White_Flame quit (Ping timeout: 260 seconds) 2017-12-30T15:11:06Z dougk_ quit (Ping timeout: 272 seconds) 2017-12-30T15:16:28Z dougk_ joined #sbcl 2017-12-30T15:27:57Z dougk_ quit (Ping timeout: 240 seconds) 2017-12-30T16:26:28Z attila_lendvai quit (Ping timeout: 272 seconds) 2017-12-30T16:32:03Z BitPuffin|osx joined #sbcl 2017-12-30T16:32:52Z varjag joined #sbcl 2017-12-30T16:39:31Z attila_lendvai joined #sbcl 2017-12-30T16:41:01Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-30T16:42:21Z attila_lendvai joined #sbcl 2017-12-30T16:44:47Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-30T16:46:02Z attila_lendvai joined #sbcl 2017-12-30T16:49:31Z pagnol joined #sbcl 2017-12-30T16:50:27Z pagnol: Hi, I'm trying to debug some code with slime and sbcl, and when I do C-c C-k and try to jump from the backtrace to the offending line in the code, I get the following error: 2017-12-30T16:50:43Z pagnol: 'unhandled DEBUG-CONDITION: # has no debug-block information.' 2017-12-30T16:51:03Z dougk_ joined #sbcl 2017-12-30T16:51:16Z pagnol: my sbclrc has the line (declaim (optimize (speed 0) (debug 3) (safety 3))) 2017-12-30T16:53:42Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-30T16:55:49Z attila_lendvai joined #sbcl 2017-12-30T16:58:51Z whoman quit (Ping timeout: 240 seconds) 2017-12-30T17:18:53Z dougk_ quit (Ping timeout: 252 seconds) 2017-12-30T17:21:37Z nyef``: pagnol: Is MINROOT one of your functions, or from somewhere else? 2017-12-30T17:21:46Z pagnol: yes 2017-12-30T17:21:53Z pagnol: it's one of my functions 2017-12-30T17:21:57Z nyef``: Hrm. 2017-12-30T17:22:33Z pagnol: my problem looks similar to this one: https://sourceforge.net/p/sbcl/mailman/sbcl-help/thread/1379432208.15972.23086941.66F551D5@webmail.messagingengine.com/ 2017-12-30T17:25:20Z nyef``: So, on the one hand, the lack of debug-block information isn't good. But on the other hand, you're using software that I don't, so I don't have any way to reasonably try to reproduce the effect. 2017-12-30T18:01:05Z whoman joined #sbcl 2017-12-30T18:21:59Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-30T18:36:28Z attila_lendvai joined #sbcl 2017-12-30T18:39:21Z BitPuffin|osx quit (Ping timeout: 264 seconds) 2017-12-30T18:55:29Z White__Flame is now known as White_Flame 2017-12-30T18:56:48Z Jesin joined #sbcl 2017-12-30T19:06:32Z smurfrobot quit (Remote host closed the connection) 2017-12-30T19:09:15Z smurfrobot joined #sbcl 2017-12-30T19:10:02Z milanj joined #sbcl 2017-12-30T19:24:58Z smurfrobot quit (Remote host closed the connection) 2017-12-30T19:30:34Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-30T19:33:20Z attila_lendvai joined #sbcl 2017-12-30T19:34:54Z smurfrobot joined #sbcl 2017-12-30T19:39:57Z smurfrobot quit (Ping timeout: 265 seconds) 2017-12-30T19:45:39Z smurfrobot joined #sbcl 2017-12-30T20:00:16Z smurfrobot quit (Remote host closed the connection) 2017-12-30T20:10:11Z smurfrobot joined #sbcl 2017-12-30T20:12:56Z smurfrob_ joined #sbcl 2017-12-30T20:15:21Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-30T20:17:37Z smurfrob_ quit (Ping timeout: 256 seconds) 2017-12-30T20:53:17Z smurfrobot joined #sbcl 2017-12-30T20:57:46Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-30T21:33:08Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-30T21:35:27Z attila_lendvai joined #sbcl 2017-12-30T21:35:38Z josemanuel quit (Quit: leaving) 2017-12-30T21:54:02Z smurfrobot joined #sbcl 2017-12-30T21:56:33Z cromachina joined #sbcl 2017-12-30T21:59:01Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-30T21:59:09Z cromachina_ quit (Ping timeout: 264 seconds) 2017-12-30T22:37:40Z jack_rabbit joined #sbcl 2017-12-30T22:40:07Z |3b|: hmm, sbcl breaks if i interrupt it from slime while it is already in debugger... wonder if my local changes broke something 2017-12-30T22:40:13Z |3b|: (windows, x8664) 2017-12-30T22:41:26Z |3b| tries a clean build 2017-12-30T22:49:31Z |3b|: yeah, still broken 2017-12-30T22:50:48Z |3b|: sometimes breaks on first interrupt too 2017-12-30T22:52:21Z nyef``: What sort of "breaks", and what version of SBCL? 2017-12-30T22:52:35Z |3b|: Maximum error nesting depth exceeded 2017-12-30T22:52:46Z |3b| isn't sure what specifically beyond that yet 2017-12-30T22:52:50Z nyef``: Ah. Lovely. 2017-12-30T22:53:06Z |3b|: x8664 windows, just pulled from git a few minutes ago 2017-12-30T22:53:36Z |3b| will try updating slime too and see if that helps 2017-12-30T22:54:22Z nyef``: Mmm. I might be able to help a bit with windows, but I certainly can't do much about slime. 2017-12-30T22:54:45Z smurfrobot joined #sbcl 2017-12-30T22:55:48Z |3b| sees a slime commit about recursive locks, and something about recursive locks in backtrace, so may be that 2017-12-30T22:57:35Z jack_rabbit quit (Ping timeout: 248 seconds) 2017-12-30T22:59:41Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-30T23:00:40Z |3b|: yeah, looks like it works with slime from git 2017-12-30T23:09:13Z smurfrobot joined #sbcl 2017-12-30T23:11:02Z jack_rabbit joined #sbcl 2017-12-30T23:17:51Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-30T23:47:51Z Bike joined #sbcl 2017-12-30T23:59:30Z smurfrobot joined #sbcl 2017-12-31T00:04:17Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-31T00:20:07Z smurfrobot joined #sbcl 2017-12-31T00:22:32Z smurfrobot quit (Remote host closed the connection) 2017-12-31T00:28:18Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-31T00:32:53Z attila_lendvai joined #sbcl 2017-12-31T00:36:18Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-31T00:38:28Z attila_lendvai joined #sbcl 2017-12-31T00:45:32Z attila_lendvai quit (Ping timeout: 272 seconds) 2017-12-31T00:53:53Z attila_lendvai joined #sbcl 2017-12-31T00:53:53Z attila_lendvai quit (Changing host) 2017-12-31T00:53:53Z attila_lendvai joined #sbcl 2017-12-31T00:58:31Z varjag quit (Ping timeout: 252 seconds) 2017-12-31T01:03:40Z varjag joined #sbcl 2017-12-31T01:04:02Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-31T01:08:47Z varjag quit (Ping timeout: 248 seconds) 2017-12-31T01:09:09Z attila_lendvai joined #sbcl 2017-12-31T01:22:20Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-31T01:23:05Z smurfrobot joined #sbcl 2017-12-31T01:23:45Z attila_lendvai joined #sbcl 2017-12-31T01:23:53Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-31T01:25:54Z attila_lendvai joined #sbcl 2017-12-31T01:25:54Z attila_lendvai quit (Changing host) 2017-12-31T01:25:54Z attila_lendvai joined #sbcl 2017-12-31T01:27:03Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-31T01:27:59Z attila_lendvai joined #sbcl 2017-12-31T01:27:59Z attila_lendvai quit (Changing host) 2017-12-31T01:27:59Z attila_lendvai joined #sbcl 2017-12-31T01:28:09Z smurfrobot quit (Ping timeout: 256 seconds) 2017-12-31T01:43:24Z smurfrobot joined #sbcl 2017-12-31T01:44:39Z smurfrobot quit (Remote host closed the connection) 2017-12-31T01:46:48Z dougk_ joined #sbcl 2017-12-31T01:47:50Z stassats joined #sbcl 2017-12-31T01:52:02Z stassats quit (Ping timeout: 252 seconds) 2017-12-31T02:22:26Z pagnol quit (Ping timeout: 272 seconds) 2017-12-31T02:43:44Z dougk_ quit (Ping timeout: 252 seconds) 2017-12-31T02:48:36Z dougk_ joined #sbcl 2017-12-31T02:59:55Z |3b|: is SB-VM::ALLOC-TRAMP just consing in general, or should i look for something more specific causing it? (near top of profile, but i don't have any caller info in my hacked sprof so not sure what is calling it) 2017-12-31T03:21:19Z nyef``: It's for when the allocation would exceed the size of the currently-open allocation region, or some other reasons. It's pretty much consing in general. 2017-12-31T03:39:06Z BitPuffin|osx joined #sbcl 2017-12-31T03:57:19Z dougk_ quit (Ping timeout: 248 seconds) 2017-12-31T05:08:59Z smurfrobot joined #sbcl 2017-12-31T05:24:56Z smurfrobot quit (Remote host closed the connection) 2017-12-31T05:27:25Z milanj quit (Quit: This computer has gone to sleep) 2017-12-31T05:33:50Z smurfrobot joined #sbcl 2017-12-31T06:29:35Z smurfrobot quit (Remote host closed the connection) 2017-12-31T06:39:35Z smurfrobot joined #sbcl 2017-12-31T06:44:38Z smurfrobot quit (Ping timeout: 252 seconds) 2017-12-31T06:50:13Z smurfrobot joined #sbcl 2017-12-31T06:54:23Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-31T07:00:25Z smurfrobot joined #sbcl 2017-12-31T07:04:27Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-31T07:05:01Z Bike quit (Quit: Lost terminal) 2017-12-31T07:10:36Z smurfrobot joined #sbcl 2017-12-31T07:14:53Z smurfrobot quit (Ping timeout: 252 seconds) 2017-12-31T07:18:43Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-31T07:19:10Z DeadTrickster joined #sbcl 2017-12-31T07:20:45Z smurfrobot joined #sbcl 2017-12-31T07:25:09Z smurfrobot quit (Ping timeout: 256 seconds) 2017-12-31T07:31:00Z smurfrobot joined #sbcl 2017-12-31T07:35:29Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-31T07:41:03Z smurfrobot joined #sbcl 2017-12-31T07:46:08Z smurfrobot quit (Ping timeout: 268 seconds) 2017-12-31T07:51:21Z smurfrobot joined #sbcl 2017-12-31T07:55:43Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-31T08:01:31Z smurfrobot joined #sbcl 2017-12-31T08:06:16Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-31T08:11:44Z smurfrobot joined #sbcl 2017-12-31T08:16:39Z smurfrobot quit (Ping timeout: 265 seconds) 2017-12-31T08:21:56Z smurfrobot joined #sbcl 2017-12-31T08:22:07Z milanj joined #sbcl 2017-12-31T08:26:45Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-31T08:29:18Z angavrilov joined #sbcl 2017-12-31T08:32:07Z smurfrobot joined #sbcl 2017-12-31T08:36:27Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-31T08:38:00Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-31T08:39:36Z attila_lendvai joined #sbcl 2017-12-31T08:42:17Z smurfrobot joined #sbcl 2017-12-31T08:47:06Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-31T08:47:40Z smurfrobot joined #sbcl 2017-12-31T08:52:34Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-31T09:08:30Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-31T09:10:12Z attila_lendvai joined #sbcl 2017-12-31T09:31:54Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-31T09:32:53Z attila_lendvai joined #sbcl 2017-12-31T09:32:53Z attila_lendvai quit (Changing host) 2017-12-31T09:32:53Z attila_lendvai joined #sbcl 2017-12-31T09:36:41Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-31T09:38:40Z attila_lendvai joined #sbcl 2017-12-31T09:38:40Z attila_lendvai quit (Changing host) 2017-12-31T09:38:40Z attila_lendvai joined #sbcl 2017-12-31T09:45:56Z smurfrobot joined #sbcl 2017-12-31T09:56:53Z attila_lendvai quit (Quit: Leaving.) 2017-12-31T10:03:27Z scymtym quit (Ping timeout: 240 seconds) 2017-12-31T10:08:50Z smurfrobot quit (Remote host closed the connection) 2017-12-31T10:11:14Z stassats joined #sbcl 2017-12-31T10:12:49Z smurfrobot joined #sbcl 2017-12-31T10:23:14Z scymtym joined #sbcl 2017-12-31T10:31:08Z smurfrobot quit (Remote host closed the connection) 2017-12-31T10:46:48Z smurfrobot joined #sbcl 2017-12-31T10:49:43Z milanj quit (Quit: This computer has gone to sleep) 2017-12-31T10:51:05Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-31T10:51:54Z shka joined #sbcl 2017-12-31T10:52:58Z smurfrobot joined #sbcl 2017-12-31T10:57:52Z stassats: |3b|: the way sb-sprof is tracking allocations is through alloc-tramp 2017-12-31T11:00:22Z stassats: i wonder if that's broken RISCs 2017-12-31T11:00:51Z stassats: since alloc() is in C, and sb-sprof wouldn't travel into lisp code (different stacks) 2017-12-31T11:01:12Z stassats: easy to rectify, but debug-int already does that, so should expose some stack walker to sb-sprof 2017-12-31T11:07:02Z smurfrobot quit (Remote host closed the connection) 2017-12-31T11:09:21Z stassats quit (Read error: Connection reset by peer) 2017-12-31T11:28:49Z stassats joined #sbcl 2017-12-31T11:39:41Z varjag joined #sbcl 2017-12-31T11:42:43Z milanj joined #sbcl 2017-12-31T12:00:33Z pagnol joined #sbcl 2017-12-31T12:07:30Z smurfrobot joined #sbcl 2017-12-31T12:12:17Z smurfrobot quit (Ping timeout: 248 seconds) 2017-12-31T12:21:12Z karlosz joined #sbcl 2017-12-31T12:39:39Z karlosz quit (Ping timeout: 256 seconds) 2017-12-31T12:58:38Z stassats quit (Ping timeout: 252 seconds) 2017-12-31T13:08:58Z smurfrobot joined #sbcl 2017-12-31T13:13:47Z smurfrobot quit (Ping timeout: 250 seconds) 2017-12-31T13:40:00Z stassats joined #sbcl 2017-12-31T13:51:16Z smurfrobot joined #sbcl 2017-12-31T13:58:31Z smurfrobot quit (Remote host closed the connection) 2017-12-31T13:59:06Z smurfrobot joined #sbcl 2017-12-31T14:05:57Z milanj quit (Quit: This computer has gone to sleep) 2017-12-31T14:11:07Z angavrilov quit (Remote host closed the connection) 2017-12-31T14:11:09Z dougk_ joined #sbcl 2017-12-31T14:13:18Z karlosz joined #sbcl 2017-12-31T14:16:27Z dougk_ quit (Ping timeout: 240 seconds) 2017-12-31T14:19:53Z karlosz quit (Quit: karlosz) 2017-12-31T14:24:34Z nyef``: stassats: We had a report yesterday from pagnol about a COMPILED-DEBUG-FUN not having debug-block information, something about C-c C-k in SLIME? 2017-12-31T14:24:58Z pagnol: nyef``, yes, that's correct 2017-12-31T14:25:19Z stassats: that has been fixed, hasn't it? 2017-12-31T14:25:46Z nyef``: I have no idea? 2017-12-31T14:26:04Z karlosz joined #sbcl 2017-12-31T14:26:14Z smurfrobot quit (Remote host closed the connection) 2017-12-31T14:26:31Z pagnol: err no, but I should do some more work to describe the situation in detail and make it reproducible for others 2017-12-31T14:26:42Z pagnol: I didn't get around to it yet 2017-12-31T14:27:00Z nyef``: If it can be reproduced without involving SLIME, so much the better. 2017-12-31T14:27:20Z stassats: the link you have provided, it works here 2017-12-31T14:27:20Z nyef``: On the other paw, it might be something that SLIME itself (well, SWANK) is doing. 2017-12-31T14:28:12Z stassats: https://bugs.launchpad.net/sbcl/+bug/540276 2017-12-31T14:28:55Z karlosz quit (Client Quit) 2017-12-31T14:29:04Z nyef``: So, is it an older SBCL, the fix falling out in the meantime, or another cause? 2017-12-31T14:29:33Z stassats: the fix still works 2017-12-31T14:31:04Z pagnol: I'm really new to lisp and the whole sbcl-slime-swank environment... maybe I just did something wrong somewhere 2017-12-31T14:31:21Z pagnol: I will make sure I have the most recent version of every component and get back to you if the problem persists 2017-12-31T14:31:51Z stassats: e16e5ca9c2014cf71aee22f3768edd259c821f31 is in sbcl-1.3.15 2017-12-31T14:40:02Z nyef``: Should I be expecting compiler.impure.lisp / FTYPE-RETURN-TYPE-CONFLICT to fail? 2017-12-31T14:40:26Z stassats: after doing what? 2017-12-31T14:42:09Z nyef``: Building HEAD + a few changes to the debugger? 2017-12-31T14:44:07Z karlosz joined #sbcl 2017-12-31T14:44:58Z stassats: well, if you are breaking it 2017-12-31T14:46:56Z nyef``: Ah. No, it's checking for a TYPE-ERROR, but what's being produced is a TYPE-STYLE-WARNING. Someone else broke it. 2017-12-31T14:47:54Z stassats: no test failures on https://ci.cor-lab.org/job/sbcl-master/ 2017-12-31T14:48:14Z stassats: and after my yesterday's change, all the rows pass 2017-12-31T14:48:42Z stassats: save for the non-deterministic failures which might appear in the future 2017-12-31T14:49:08Z nyef``: Well, I guess we find out soon... or not. 2017-12-31T14:51:31Z Bike joined #sbcl 2017-12-31T15:01:22Z nyef``: ... Intermittent failure, possibly triggered by make-parallel? 2017-12-31T15:01:42Z stassats: doubt it 2017-12-31T15:01:52Z smurfrobot joined #sbcl 2017-12-31T15:06:51Z smurfrobot quit (Ping timeout: 260 seconds) 2017-12-31T15:14:07Z nyef``: Ohh... I know what's going on. 2017-12-31T15:14:34Z nyef``: It's a build option that I was using: --without-unwind-to-frame-and-call-vop. 2017-12-31T15:15:21Z nyef``: Which would imply that the test usually fails on non-x86oid, non-ARM targets. 2017-12-31T15:17:51Z stassats quit (Read error: Connection reset by peer) 2017-12-31T15:17:59Z stassats joined #sbcl 2017-12-31T15:22:37Z scymtym: stassats: didn't you fix https://bugs.launchpad.net/sbcl/+bug/758168 ? 2017-12-31T15:23:20Z stassats quit (Ping timeout: 272 seconds) 2017-12-31T15:25:52Z nyef``: Yeah, it's the build option. 2017-12-31T15:28:14Z nyef``: ... Probably because there's a CATCH block or something like that? 2017-12-31T15:35:24Z karswell_ joined #sbcl 2017-12-31T15:37:36Z pagnol quit (Ping timeout: 248 seconds) 2017-12-31T15:37:36Z White_Flame quit (Ping timeout: 248 seconds) 2017-12-31T15:37:36Z karswell quit (Ping timeout: 248 seconds) 2017-12-31T15:38:32Z White_Flame joined #sbcl 2017-12-31T15:40:57Z p_l quit (Ping timeout: 240 seconds) 2017-12-31T15:49:28Z pagnol joined #sbcl 2017-12-31T16:00:18Z karlosz quit (Quit: karlosz) 2017-12-31T16:02:41Z smurfrobot joined #sbcl 2017-12-31T16:07:29Z smurfrobot quit (Ping timeout: 268 seconds) 2017-12-31T16:30:10Z p_l joined #sbcl 2017-12-31T16:43:04Z dougk_ joined #sbcl 2017-12-31T16:47:14Z milanj joined #sbcl 2017-12-31T16:47:46Z dougk_ quit (Ping timeout: 260 seconds) 2017-12-31T17:05:26Z stassats joined #sbcl 2017-12-31T17:07:44Z stassats quit (Remote host closed the connection) 2017-12-31T17:08:05Z stassats joined #sbcl 2017-12-31T17:08:48Z stassats: scymtym: looks like it 2017-12-31T17:10:52Z stassats: wonder if SB-EXT:*PRINT-VECTOR-LENGTH* would be better than SB-EXT:*PRINT-SEQUENCE-LENGTH* 2017-12-31T17:11:44Z stassats: it only really affects strings and bit-vectors 2017-12-31T17:13:05Z stassats: so, VECTOR isn't the best name, but better than SEQUENCE 2017-12-31T17:22:28Z nyef``: What about multi-D arrays? 2017-12-31T17:22:46Z stassats: nyef``: *print-length* does that 2017-12-31T17:22:58Z nyef``: Hunh. Okay then. 2017-12-31T17:23:53Z stassats: i made *print-vector-length* only control the unhandled cases, for simplicity 2017-12-31T17:25:00Z nyef``: Right, saves on defining precedence if they conflict. 2017-12-31T17:25:22Z stassats: exactly 2017-12-31T18:04:14Z smurfrobot joined #sbcl 2017-12-31T18:11:24Z pchrist_ is now known as pchrist 2017-12-31T18:13:42Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-31T18:13:53Z scymtym: another pattern unparsing problem 2017-12-31T18:13:56Z scymtym sighs 2017-12-31T18:33:21Z stassats quit (Ping timeout: 264 seconds) 2017-12-31T18:58:01Z angavrilov joined #sbcl 2017-12-31T19:10:06Z dougk_ joined #sbcl 2017-12-31T19:10:20Z smurfrobot joined #sbcl 2017-12-31T19:14:57Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-31T19:19:08Z milanj quit (Quit: This computer has gone to sleep) 2017-12-31T19:19:10Z pagnol: is there a way to make a runtime error message like 'invalid number of arguments: 5' a little more informative? 2017-12-31T19:21:43Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-31T19:22:05Z DeadTrickster joined #sbcl 2017-12-31T19:23:19Z nyef``: Oh, probably. What more information would you like? 2017-12-31T19:24:11Z pagnol: things such as the file, line number 2017-12-31T19:24:41Z nyef``: ... Of the callee? 2017-12-31T19:24:44Z smurfrobot joined #sbcl 2017-12-31T19:25:11Z pagnol: that would be helpful, yes 2017-12-31T19:25:58Z nyef``: Is there a reason that you can't "just" hit "view source" in the debugger? 2017-12-31T19:26:34Z nyef`` can think of a couple of reasons why you might not be able to, but knowing about more failure modes can be helpful. 2017-12-31T19:26:52Z pagnol: this would be probably be the solution, never having used a debugger with lisp it didn't occur to me, sorry 2017-12-31T19:31:42Z nyef``: For what it's worth, I mostly don't use a debugger either, and when I do it's typically "get a backtrace, pick a restart". 2017-12-31T19:32:22Z nyef``: (Okay, when working on SBCL, it's more typically "go down a few frames, grab an argument, call this function on it.") 2017-12-31T19:33:30Z smurfrobot quit (Ping timeout: 272 seconds) 2017-12-31T19:37:44Z pagnol: so while I can use a debugger I do find it rather odd that such things as the line number are not included by default, I can't remember having used a compiler or interpreter that didn't 2017-12-31T19:43:46Z scymtym: pagnol: https://www.snellman.net/blog/archive/2007-12-19-pretty-sbcl-backtraces.html may be helpful for customizing things. the code would probably need some tweaking to work with current SBCL and SLIME, though 2017-12-31T19:59:14Z fortitude: aside from application-specific issues, is it safe to load fasls when other threads are running? 2017-12-31T20:06:57Z BitPuffin|osx quit (Ping timeout: 264 seconds) 2017-12-31T20:25:54Z smurfrobot joined #sbcl 2017-12-31T20:30:58Z smurfrobot quit (Ping timeout: 255 seconds) 2017-12-31T20:32:21Z dougk_ quit (Ping timeout: 260 seconds) 2017-12-31T20:34:44Z smurfrobot joined #sbcl 2017-12-31T20:38:51Z smurfrobot quit (Ping timeout: 240 seconds) 2017-12-31T20:44:31Z smurfrobot joined #sbcl 2017-12-31T21:14:49Z scymtym quit (Ping timeout: 265 seconds) 2017-12-31T21:22:06Z smurfrobot quit (Remote host closed the connection) 2017-12-31T21:44:43Z DeadTrickster quit (Read error: Connection reset by peer) 2017-12-31T21:45:09Z DeadTrickster joined #sbcl 2017-12-31T21:52:05Z smurfrobot joined #sbcl 2017-12-31T21:53:42Z Kevslinger quit (Quit: Connection closed for inactivity) 2017-12-31T21:57:21Z smurfrobot quit (Ping timeout: 264 seconds) 2017-12-31T22:03:14Z scymtym joined #sbcl 2017-12-31T22:04:15Z attila_lendvai joined #sbcl 2017-12-31T22:04:16Z attila_lendvai quit (Changing host) 2017-12-31T22:04:16Z attila_lendvai joined #sbcl 2017-12-31T22:31:56Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-31T22:34:30Z smurfrobot joined #sbcl 2017-12-31T22:34:35Z attila_lendvai joined #sbcl 2017-12-31T22:36:22Z attila_lendvai quit (Read error: Connection reset by peer) 2017-12-31T22:37:33Z attila_lendvai joined #sbcl 2017-12-31T22:37:58Z cryptomarauder: !msg nickserv 2017-12-31T22:37:59Z cryptomarauder: shit 2017-12-31T22:38:03Z cryptomarauder: sorry 2017-12-31T22:50:46Z nyef``: cryptomarauder: Hey, at least you didn't screw it up to the point that you have to change your password. (-: 2017-12-31T22:56:51Z Jesin quit (Quit: Leaving) 2017-12-31T23:15:31Z cryptomarauder: lol thought that as well 2017-12-31T23:16:55Z stassats joined #sbcl 2017-12-31T23:21:57Z shka quit (Ping timeout: 240 seconds) 2017-12-31T23:31:41Z nyef``: ... That feeling when you discover that one of your build machines is slow enough that you can start an SBCL build before dinner, and find it still running host-2 when you've finished eating. 2017-12-31T23:32:06Z smurfrobot quit (Remote host closed the connection) 2017-12-31T23:52:55Z dougk_ joined #sbcl 2017-12-31T23:55:50Z smurfrobot joined #sbcl