- remove kernel-like autoconfiguration to probe bootable devices
- initialize SCSI and Ethernet controllers statically instead
- reorganize device softc structures per autoconf removal
- probe and print all SCSI disks (but don't assign unit numbers)
- make sdopen() to recheck the device and allocate softc dynamically
- use controller number and SCSI target ID (ctlr * 10 + id) to specify
the boot disk on the "boot" command arg
- bump version to denote changes
Now bootloader works as the following:
---
>> NetBSD/luna68k boot, Revision 1.8 (Wed Jan 8 22:13:12 JST 2014)
>> (based on Stinger ver 0.0 [Phase-31])
Machine model = LUNA-II
Physical Memory = 0x4000000 (64 MB)
sc0 at 0xe1000000: async, parity, ID 7
ID 3: TEAC FC-1 HGF 10 rev , 512 bytes/sect x 2879 sectors
ID 6: IBM DPES-31080 rev S31Q, 512 bytes/sect x 2118143 sectors
sc1 at 0xe1000040: async, parity, ID 7
ID 6: MELCO DSC-G rev 1.00, 512 bytes/sect x 62533295 sectors
le0: Am7990 LANCE Ethernet, mem at 0x71010000
le0: Ethernet address = 00:00:0a:03:42:77
Press return to boot now, any other key for boot menu
booting sd(16,0)netbsd - starting in 0 seconds.
auto-boot sd(16,0)netbsd
1911696+96040 [280480+159179]=0x255a30
:
rest of the code is not executed.
Note that the cleanup routine is executed in a separate shell so environment
variables are not propagated and need to be set again.
shell so it can't cleanup stuff set in the environment of the first shell.
There are 2 problems:
- calling the test routine directly does not cleanup (not using
atf-run)
- when using atf-run, the cleanup routine needs state from the
running code which can only be stored in files. This will never
allow us to run tests in parallel since we need to keep a known
place to pass state.
relative to uname output when running in emulations: the magic links
are *not* affected even though uname output changes.
(This means @machine magic links can be used for e.g. amd64 vs. i386
device nodes. There's also an @emul magic link for emulation.)
Noted by apb.
Defer the destruction to sysvbfs_reclaim().
Disable test t_renamerace:sysvbfs_renamerace as it will exhaust the
inode table (sysvbfs has space for 8 inodes only).
Ok: Izumi Tsutsui <tsutsui@netbsd.org>
into both a message for the case where cngetc() doesn't work. If
there's no console attached, this won't accomplish anything; but if
there's a screen but no keyboard, or the keyboard's wedged, or
whatever, it might provide useful information.
Suggested back in 2009 by some stuff in PR 37924 and has been hanging
about in one of my trees ever since.