Am 19.05.2015 um 16:20 schrieb Christos Zoulas:
I stumbled across http://mail-index.netbsd.org/port-vax/2015/02/08/msg002401.html http://mail-index.netbsd.org/port-vax/2015/02/15/msg002402.html and can't help but ask if the two problems I see with the VS4000/60 could be connected to this very similar scenario? [...]Could be...
Looking at the netboot loader code, there are [de,le,ni,qe,ze]close() functions for all network devices, so I asked if they are called before jumping into the loaded kernel, or if the network devices keep running with possibly harmful results.
They are *not* called at all, I put debug printf()s in all these functions and tested for le and ze (I think the others are the same). The one exception seems to be niclose() for DEBNA, for which an "evil hack" exists in srt0.S...
Now looking at other architecture's boot code, the "better" ones I can find have close calls after loadfile() and before jumping into the kernel.
I call for a developer who wants to take this on, or I could come up with something myself if I have to. Should reduce to something like an appropriate close() or shutdown between loadfile() and machdep_start() in boot/boot/boot.c.
Regards, Felix