Saturday, 2021-02-20

lkclcesar[m]1, thanks for spotting the spec updates needed12:17
lkclcesar[m]1, i'm also adding an (unused) bit of code so you can modify svstate.srcstep and have it go into the State Regfile12:22
lkclhttps://git.libre-soc.org/?p=soc.git;a=commitdiff;h=e4327f3fe04f1ff2fee29683c9ce478b691b1e4312:23
lxovictory!  at last!16:30
lkclada unit test passing?16:30
lxoyes16:30
lkclhoo-rah :)16:30
lkclwhat was it?16:30
lxoalt stack overflow16:31
lkclthe solution i meant :)16:31
lxothe ada runtime reserved only 16KiB for the alternate stack to be used to handle the stack overflow signal16:31
lkclah16:31
lkcli haven't seen something like that since working for CEDAR Audio where we had our own DOS INT33 and other handlers :)16:32
lxowith the growth in register count from 111 to 425, that was no longer enough16:32
lkclya-howw16:33
lkclpatience gets there :)16:35
lxoI wasted a *lot* of time learning how the unwinder dealt with signal handlers, found suspicious code in libgcc that turned out to be unused (would only be used if the kernel didn't have frame info for sigtramp in vdso), went back to trying to find something wrong in the unwinding, and nothing16:35
lkclthe unit tests: is it actual binaries or is it testing at the IR level?16:36
lxoonly today did I notice that the initial frames in the thread got corrupted some time after handling started, and suspected something like this16:37
lkcloverwrite down from the... yeah16:37
lxoit's actual ada programs with tasks and infinite recursion, all designed to verify stack-checking16:37
lkclnice16:38
lxoso there was nothing wrong with gcc, I only needed to adjust the ada runtime to make up for the growth16:38
lkcldoh16:39
lkclthat's a pisser it took such a long time16:39
lkclgot there though16:39
lxobut what I'm actually going to do is to use the work-around I found the other day, namely, lower the register count exposed to the EH runtime, since none of our new registers needs restoring anyway16:39
lxoonce we have hardware with them, and a kernel that saves them in signal frames, this will have to be revisited16:40
lkclyehyeh16:40
lkcljacob and i discussed a (bad hack) workaround for that, 2 years ago16:41
lkclsingle process per 3D Shader16:41
lkclpinned specifically to a core16:41
lkclrealistically though we need an ABI16:41
lxoor maybe not even then.  since we unwind into EH landing pads, that only expect call-saved registers to have been preserved, it will depend on the calling conventions we establish for the new registers16:42
lkclwhat's EH?16:43
lkclexception handling16:43
lkclISACaller and TestIssuer going well adding SVP64 btw16:45
lkclISACaller has prefix decoding and VL loops on GPRs16:45
lxomaybe I would have been able to figure this out sooner if I weren't sick.  at this point I suspect wife and I caught COVID-19 about a month ago, with very flu-like symptoms, and got an incredible tiredness as a longer-term fallout16:45
lxoEH = exception handling16:45
lxoyeah16:45
lkclTestIssuer has prefix decoding16:45
lkclahh you should have said, although it's retrospective / hindsight.16:46
lxoI hadn't been able to connect the dots; too tired for that ;-)16:46
lkclthere's neurological damage similar to strokes (affecting memory)16:47
lkclstuff you can take which helps16:47
lxoaround Wednesday this week I started getting decent sleep again (the thing messed that up too), and then it all made sense16:47
lkclbeen there, many many times.16:48
lxoI can't recall any other relevant symptoms ;-P16:48
lkcli got mono when i was... 20? 30 years later i still have it.16:48
lkclthe rule i live by now: "when tired equals sleep"16:48
lxoyeah, I get very decent sleep, and it used to be very predictable too.  like, when I go to bed, I know I'm going to sleep for half the time I was awake.  like clockwork16:50
lxobut since I got sick, I'd wake up long before that, or long after that and still feeling exhausted, or just sleep poorly with very intense mental activity during sleep16:52
lxowhich is all stuff that happens to me when I catch regular flu-like viruses16:52
lxobut it lasts for the few days of the virus cycle, and then it's all normal again16:52
lxothis one was like 4 or 5 cycles in a row16:53
lkclsounds veery familiar16:53
lxosucks to agree with bolsonaro that it was just a minor flu ;-D16:53
lxobut it was more like *several* *weeks* of minor flu16:53
lxofortunately nothing more serious16:53
lxoand now I'm getting back to action16:54
lkclyay17:00
lxoyay indeed :-)  it's amazing how much of a difference decent sleep makes17:10
lkclstudy on slashdot (few months back) - toxic chemical chains in neurons build up during wake17:10
lkclwhich are removed during sleep.17:11
lkclif you don't get enough, then you're far more susceptible to alzheimer's, parkinson's etc. etc.17:11
lkclit real simple17:11
lxo*nod*.  it's not just caffeine receptors getting blocked17:11
lxoweirdly, my blood pressure doesn't seem to have got higher, as it often does when I get poor sleep.  probably because I often did get long sleep, just did not feel rested afterwards17:13
lxoit was from monday to tuesday that I had my last unusual sleep cycle.  I went to bed thinking there was no way I'd sleep long enough to miss our weekly virtual cafĂ©.  heh.  famous last words17:15
lxoI woke up several hours after the meeting.  feeling really well for the first time in weeks17:15
lkcllol17:16
lkclit must have been a fantastic meeting17:17
lkcloof. need to get up.  tea :)17:19
lxoheh17:23
cesar[m]1lkcl: These last few commits, for adding SRAM to the chip, should have been done in the ls180 branch, maybe?18:55
cesar[m]1I see you used an Instance after all. How about the idea of using m.submodules.a.attrs["test"] = "value", as in https://freenode.irclog.whitequark.org/nmigen/2021-02-02#29044697; ?19:05
*** mauricio is now known as Guest387920:30
lkclcesar[m]1, yeah it's all added optionally so has no impact.  and it was a tag.  am not overly concerned unless the SVP64 work gets in the way20:37
lkclcesar[m]1: ah yes i've forgotten to set the attribute.  i think.20:42
lkclyay got Rc=1 working in ISACaller23:38
lxohttps://www.fsfla.org/ikiwiki/blogs/lxo/2021-02-20-longest-debugging-session.en.html23:40
lkclnice!23:50
lkcllinked that on articles23:51

Generated by irclog2html.py 2.17.1 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!