lkcl | cesar[m]1, thanks for spotting the spec updates needed | 12:17 |
---|---|---|
lkcl | cesar[m]1, i'm also adding an (unused) bit of code so you can modify svstate.srcstep and have it go into the State Regfile | 12:22 |
lkcl | https://git.libre-soc.org/?p=soc.git;a=commitdiff;h=e4327f3fe04f1ff2fee29683c9ce478b691b1e43 | 12:23 |
lxo | victory! at last! | 16:30 |
lkcl | ada unit test passing? | 16:30 |
lxo | yes | 16:30 |
lkcl | hoo-rah :) | 16:30 |
lkcl | what was it? | 16:30 |
lxo | alt stack overflow | 16:31 |
lkcl | the solution i meant :) | 16:31 |
lxo | the ada runtime reserved only 16KiB for the alternate stack to be used to handle the stack overflow signal | 16:31 |
lkcl | ah | 16:31 |
lkcl | i haven't seen something like that since working for CEDAR Audio where we had our own DOS INT33 and other handlers :) | 16:32 |
lxo | with the growth in register count from 111 to 425, that was no longer enough | 16:32 |
lkcl | ya-howw | 16:33 |
lkcl | patience gets there :) | 16:35 |
lxo | I 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 nothing | 16:35 |
lkcl | the unit tests: is it actual binaries or is it testing at the IR level? | 16:36 |
lxo | only today did I notice that the initial frames in the thread got corrupted some time after handling started, and suspected something like this | 16:37 |
lkcl | overwrite down from the... yeah | 16:37 |
lxo | it's actual ada programs with tasks and infinite recursion, all designed to verify stack-checking | 16:37 |
lkcl | nice | 16:38 |
lxo | so there was nothing wrong with gcc, I only needed to adjust the ada runtime to make up for the growth | 16:38 |
lkcl | doh | 16:39 |
lkcl | that's a pisser it took such a long time | 16:39 |
lkcl | got there though | 16:39 |
lxo | but 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 anyway | 16:39 |
lxo | once we have hardware with them, and a kernel that saves them in signal frames, this will have to be revisited | 16:40 |
lkcl | yehyeh | 16:40 |
lkcl | jacob and i discussed a (bad hack) workaround for that, 2 years ago | 16:41 |
lkcl | single process per 3D Shader | 16:41 |
lkcl | pinned specifically to a core | 16:41 |
lkcl | realistically though we need an ABI | 16:41 |
lxo | or 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 registers | 16:42 |
lkcl | what's EH? | 16:43 |
lkcl | exception handling | 16:43 |
lkcl | ISACaller and TestIssuer going well adding SVP64 btw | 16:45 |
lkcl | ISACaller has prefix decoding and VL loops on GPRs | 16:45 |
lxo | maybe 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 fallout | 16:45 |
lxo | EH = exception handling | 16:45 |
lxo | yeah | 16:45 |
lkcl | TestIssuer has prefix decoding | 16:45 |
lkcl | ahh you should have said, although it's retrospective / hindsight. | 16:46 |
lxo | I hadn't been able to connect the dots; too tired for that ;-) | 16:46 |
lkcl | there's neurological damage similar to strokes (affecting memory) | 16:47 |
lkcl | stuff you can take which helps | 16:47 |
lxo | around Wednesday this week I started getting decent sleep again (the thing messed that up too), and then it all made sense | 16:47 |
lkcl | been there, many many times. | 16:48 |
lxo | I can't recall any other relevant symptoms ;-P | 16:48 |
lkcl | i got mono when i was... 20? 30 years later i still have it. | 16:48 |
lkcl | the rule i live by now: "when tired equals sleep" | 16:48 |
lxo | yeah, 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 clockwork | 16:50 |
lxo | but 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 sleep | 16:52 |
lxo | which is all stuff that happens to me when I catch regular flu-like viruses | 16:52 |
lxo | but it lasts for the few days of the virus cycle, and then it's all normal again | 16:52 |
lxo | this one was like 4 or 5 cycles in a row | 16:53 |
lkcl | sounds veery familiar | 16:53 |
lxo | sucks to agree with bolsonaro that it was just a minor flu ;-D | 16:53 |
lxo | but it was more like *several* *weeks* of minor flu | 16:53 |
lxo | fortunately nothing more serious | 16:53 |
lxo | and now I'm getting back to action | 16:54 |
lkcl | yay | 17:00 |
lxo | yay indeed :-) it's amazing how much of a difference decent sleep makes | 17:10 |
lkcl | study on slashdot (few months back) - toxic chemical chains in neurons build up during wake | 17:10 |
lkcl | which are removed during sleep. | 17:11 |
lkcl | if you don't get enough, then you're far more susceptible to alzheimer's, parkinson's etc. etc. | 17:11 |
lkcl | it real simple | 17:11 |
lxo | *nod*. it's not just caffeine receptors getting blocked | 17:11 |
lxo | weirdly, 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 afterwards | 17:13 |
lxo | it 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 words | 17:15 |
lxo | I woke up several hours after the meeting. feeling really well for the first time in weeks | 17:15 |
lkcl | lol | 17:16 |
lkcl | it must have been a fantastic meeting | 17:17 |
lkcl | oof. need to get up. tea :) | 17:19 |
lxo | heh | 17:23 |
cesar[m]1 | lkcl: These last few commits, for adding SRAM to the chip, should have been done in the ls180 branch, maybe? | 18:55 |
cesar[m]1 | I 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 Guest3879 | 20:30 | |
lkcl | cesar[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 way | 20:37 |
lkcl | cesar[m]1: ah yes i've forgotten to set the attribute. i think. | 20:42 |
lkcl | yay got Rc=1 working in ISACaller | 23:38 |
lxo | https://www.fsfla.org/ikiwiki/blogs/lxo/2021-02-20-longest-debugging-session.en.html | 23:40 |
lkcl | nice! | 23:50 |
lkcl | linked that on articles | 23:51 |
Generated by irclog2html.py 2.17.1 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!