Re: Need help from a VAX abi expert (was: Reproducable kernel crash)
Martin Husemann <[email protected]>
| Newsgroups | gmane.os.netbsd.ports.vax |
|---|---|
| Message-ID | <[email protected]> |
On Sat, Jan 11, 2025 at 05:20:42PM +0100, Anders Magnusson wrote: > Anyway; adding the settings of the page registers to cpu_lwp_fork() is > non-trivial (if the goal is just to remove the pmap_activate() call). No, that part should not happen there, only the initialiization of the PCB list. The registers will be set by another pmap_activate() call later in the sequence before that lwp first time makes it to userland. But again I am not claiming to fully understand what is going on and I am seriously confused by some parts of the code - I will add instrumentation and try to debug it further, now that you explained why this is needed here. > > Side note: > > what I don't undstand is why VAX needs a list of PCBs in its struct pmap. > > Doesn't this always map 1:1 to the list pcbs of all lwp's in the process? > > This list handling seems to be different to all other pmaps I have seen. > Do you mean the list in PCB; pcb_pmnext? IIRC it had to do with the logic > for handling the page table resource map (since all lwp:s in a process share > the same page table but have different PCBs). Ok, I will read more code and ask questions... Martin