github.com/moarvm/moarvm | IRC logs at colabti.org/irclogger/irclogger_logs/moarvm
Set by AlexDaniel on 12 June 2018.
Kaiepi at some point in the future i'm thinking of auditing moarvm and using unveil(2) on openbsd wherever applicable to help make it more secure 16:22
thoughts?
this explains what pledge(2) and unveil(2) do, though pledge is pretty useless in our case www.openbsd.org/papers/BeckPledgeU...an2018.pdf
timotimo sounds like a good idea
Kaiepi if moar were split into separate processes for networking, file i/o, and stuff pledge would be useful, but atm it's not so i'd just be enabling everything with it 16:26
timotimo i haven't heard of unveil yet 16:28
Kaiepi it's new to openbsd 6.4 i think 16:29
which is the current stable version
6.5 is coming out soon, which is what i'm running 16:30
patrickb Kaiepi: I don't fully understand your last comment in r#2818 16:37
yoleaux 6 Apr 2019 23:10Z <jnthn> patrickb: GitHub organization invite sent; once you accept it you should have commit access. Welcome! :)
synopsebot_ R#2818 [open]: github.com/rakudo/rakudo/issues/2818 [BSD] Cannot run perl6 without using LD_LIBRARY_PATH on OpenBSD
Kaiepi gimme a sec patrickb, i'm in the middle of building rakudo for another issue i'm posting
patrickb no hurry
timotimo ok, so calling unveil once will make the entire filesystem except for one path disappear, and then you can put paths back with a limited rwxc 16:41
Kaiepi yep 16:50
the difference in performance is pretty huge with MVM_JIT_DISABLE, to say the least 16:54
i'm still building rakudo
good work, jit team
i don't mean that passive-aggressively, it's just one op jitted recently screwing things up that's making me use MVM_JIT_DISABLE 17:09
ugexe what is he mystery op? 17:16
the^
you'd probably have to look at MVM_SPESH_LOG=log.txt output after it blows up 17:17
Kaiepi i'll find out when rakudo finishes building 17:20
Kaiepi ugexe, how do i tell which op is to blame? there are several expr bails 17:29
ugexe i'd grep out the ops that bailed, filter to unique ops, then post the list from which i imagine we can identify any that were recently added 17:30
i dont know if this will actually work 17:31
ugexe (MVM_SPESH_LOG=log.txt perl6 -e '...') && (cat log.txt|grep bail > log2.txt) && perl6 -e '.say for "log2.txt".IO.slurp.lines.map({ $_.match(/\s*(\w+) /)[0].Str }).unique.sort' 17:33
i dug that out of my bash history
Kaiepi ugexe, R#2824 17:45
synopsebot_ R#2824 [open]: github.com/rakudo/rakudo/issues/2824 Cannot install zef (or run much of anything without MVM_JIT_DISABLE)
ugexe hmm nothing sticking out. since it seems possibly file related i would take a guess that reverting github.com/MoarVM/MoarVM/commit/e1...259df30667 and rebulding moar might be worth a shot 17:49
Kaiepi ugexe, doesn't work 18:03
unveil(2) could possibly be responsible if something required to run perl6 uses it 18:04
ugexe you might have to manually bisect to figure it out 18:05
which i generally do by just reverting some commit halfway between last release, make install, run script to see if its still broke, then repeat 18:06
MasterDuke Kaiepi: does it work if you just use MVM_JIT_EXPR_DISABLE ?
ugexe its not `make install` for moarvm doesn't require rebuilding anything else
s/not/nice/
s/reverting some commit/resetting to some commit/ 18:08
Kaiepi .tell masterduke no it still segfaults 18:11
yoleaux Kaiepi: I'll pass your message to masterduke.
Kaiepi .tell masterduke er, trace trap
yoleaux Kaiepi: I'll pass your message to masterduke.
Kaiepi for me it rebuilds everything whenever i reset to another commit ugexe 18:13
guess it depends on which make you're using
ugexe `make install` inside /MoarVM rebuilds rakudo (which is in another directory)? 18:22
i didnt expect the makefile to be aware of that 18:23
Kaiepi oh not rakudo 18:47
just moarvm
wait am i supposed to rebuild nqp and moarvm after doing changes like reverting the fileno_fh jit templates ugexe?
ugexe just moarvm 18:48
Kaiepi ok good because i didn't
i reaaalllly don't wanna manually bisect two different bugs on code that spans across three repos 18:49
i might write a script that takes a piece of code and does it for me
ugexe the number of repos is spans does not matter unless you encounter a commit that required an nqp bump 18:51
because you are just rebuilding moar and nothing else
Kaiepi the file errors may or may not be a bug in nqp or rakudo, i'm not sure yet 18:52
the trace trap i know is a legojit bug so it's not as annoying to bisect
ugexe well whatever it is happens during precomp 18:56
which creates files
github.com/rakudo/rakudo/blob/5145...#L263-L286 18:57
perhaps you can use that to golf something
timotimo the stacktrace from things called by the jit is usually completely unusable. as in, even when you think you see something in it, it's probably just leftovers/garbage that'll totally mislead you given the chance 19:31
Kaiepi i figured, timotimo 22:12
timotimo i can recommend rr to figure out what happens, but i'm not sure it runs on bsds 22:13
though rr isn't the only recording/replaying framework around, right?
ugexe werent you saying something about using unveil or something now? 22:58
are you sure that 2019.03 worked under whatever conditions you have now? 22:59
because what appears to me is that rakudo cant write to its site or home repositories 23:00
when its trying to precomp
and i'm not aware of anything since 2019.03 that should affect that