Welcome to the main channel on the development of MoarVM, a virtual machine for NQP and Rakudo (moarvm.org). This channel is being logged for historical purposes.
Set by lizmat on 24 May 2021.
00:02 reportable6 left 00:05 reportable6 joined 02:04 nativecallable6 left, statisfiable6 left, sourceable6 left, squashable6 left, bloatable6 left, bisectable6 left, evalable6 left, reportable6 left, greppable6 left, committable6 left, unicodable6 left, releasable6 left, notable6 left, quotable6 left, benchable6 left, linkable6 left, tellable6 left, shareable6 left, coverable6 left, coverable6 joined, sourceable6 joined, nativecallable6 joined, bisectable6 joined 02:05 quotable6 joined, unicodable6 joined, reportable6 joined, releasable6 joined 02:06 statisfiable6 joined, committable6 joined, squashable6 joined, linkable6 joined, notable6 joined, greppable6 joined, evalable6 joined 02:07 benchable6 joined, bloatable6 joined, shareable6 joined, tellable6 joined 05:32 Kaiepi left 05:33 Kaiepi joined 05:42 Kaiepi left 05:45 Kaiepi joined 06:00 Kaiepi left, Kaiepi joined 06:02 reportable6 left 06:05 reportable6 joined 06:45 frost joined 06:48 patrickb joined 08:18 patrickb left
jnthnwrthngtn Moarning. So it turns out I can turn one of the failing NQP tests after switching method dispatch to new-disp into a SEGV by deleting some of the test, and so probably the other odd failure mode is also a result of some kind of memory corruption... 08:45
Nicholas "my machine" (several of them) are currently powered down because they in Oregon, and it's hot there. 08:46
so I don't have access to anything fast with ASAN or valgrind 08:47
jnthnwrthngtn I'm guessing "hot" means "very unusually hot"... 08:50
Nicholas whole of the west coast of North America is, I believe. Canada is breaking records. 08:51
moon-child yeah, last few days have been hell
Nicholas so powering down non-essential services seemed like a good plan
09:01 patrickb joined 09:13 patrickb left
jnthnwrthngtn uhh... 09:21
MVMObject *fateres = MVM_repr_alloc_init(tc, tc->instance->boot_types.BOOTIntArray);
MVM_ASSERT_NOT_FROMSPACE(tc, fateres);
The assert fails right after allocation?!
Ah, I guess it means something wrote into the previous nursery 09:24
So it's not all zeroed 09:25
09:40 jdv left, jdv joined
Nicholas ooh fun. Once upon a time I had a hacky patch to allocate nurseries with mmap and change them to unaccessable when not in use. That would have exploded with this. 09:41
if your guess is right
hmm, I wonder *how* hacky it is, and whether it's viable to make it a conditional compile... 09:42
but not this morning. Or at least, this part of today.
jnthnwrthngtn Yeah, I did wonder about mprotect hacks 09:44
Can't rr it as it seems not to support AMD CPUs (or AMD CPUs don't support it...) 09:50
Nicholas Aaa(rr)gh
At least one of the (powered off) machines could run rr
I can't remember if it was Intel, or if there is some new enough AMD CPU that rr can work with. 09:51
Either way, can't currently help
jnthnwrthngtn Ah, it seems there are patches in rr for zen and zen 2 architectures, but I think I've zen 3 09:56
So mine is maybe too new
argh
Turns out the cheap way to get some an effect is to free the fromspace memory always after GC is done 10:04
And then let ASAN report the write to freed memory 10:05
Goodness, this finds all kinds 10:11
Bleh, though having now fixed those, it turns out they weren't the actual issue the test runs into, which instead seems to be about memory managed with the FSA 10:28
meeting and lunch now, guess I'll try to hunt it down later
nine Nicholas, jnthnwrthngtn: github.com/MoarVM/MoarVM/commit/9d...4d9f5b579c 10:48
jnthnwrthngtn: rr runs just fine on zen3. I use github.com/rr-debugger/rr/wiki/Zen...nel-module 10:51
Just load that kernel module and rr works like a charm 10:52
sena_kun jnthnwrthngtn, github.com/rr-debugger/rr/wiki/Zen says it should work. :/
jnthnwrthngtn Oh. When I ran rr it pointed me to a github issue about it, when I read through, and saw no mention of that :) 11:03
11:08 squashable6 left 11:09 squashable6 joined 11:13 patrickb joined 12:02 reportable6 left 12:04 reportable6 joined 12:12 frost left 12:25 dogbert17 joined 12:28 dogbert11 left 13:08 dogbert11 joined 13:11 dogbert12 joined, dogbert17 left 13:13 dogbert11 left
jnthnwrthngtn Current NQP HEAD compiles call and callmethod QAST nodes into dispatch instructions. 14:22
It builds. 3 failing tests, 2 a bug I need to hunt, 1 an NYI. Also an intermittent hang that I'm looking at now. 14:23
I also discovered that the QAST regex compiler will need updating since it directly emits findmeth/invoke. There are likely some other such places to update too 14:26
16:24 patrickb left, sortiz joined 17:02 sortiz left 18:02 reportable6 left 18:03 reportable6 joined 19:20 evalable6 left, linkable6 left 19:21 linkable6 joined 19:23 evalable6 joined
moon-child nine: that reminds me of the jvm XXXalot flags they use for testing 21:04
22:08 AlexDaniel left 22:09 AlexDaniel joined 22:39 cognominal left 22:41 cognominal joined