freebsd with flexible iflib nic queues
dd4a485085
- /sys/i386/i386/swapgeneric.c is just plain broke. But fear not, for I have unbroken it. One thing that swapgeneric.c does is walk through the list of configured devices searching for a boot device. The only easy way to accomplish this in 2.0 is to use Garret Wollman's kern_devconf stuff. *BUT*, the head of the kern_devconf linked list (dc_list) is declared static in /sys/kern/kern_devconf.c. This means that swapgeneric.c can't see it at link time. I had to remove the 'static' keyword to get around this little problem. I hope this doesn't break anything anywhere. *Furthermore,* there's a small matter of making the call to setconf() in swapgeneric.c disappear when 'config kernel swap generic' isn't used. You could change /sbin/config to create a dummy setconf() function in swapkernel.c, but that seems messy somehow. (It's also someting of an 'it isn't broken, why are you fixing it' situation.) My solution was to do what the NetBSD people did and put an #ifdef GENERIC around the call to setconf(). If your kernel is called GENERIC or you define 'options GENERIC,' then you can use 'config kernel swap generic' and it'll work. That aside, the upshot is that: a) swapgeneric.c actually works, and and b) the -a boot flag now works as well. If you boot with -a, as in "Boot: wd(0,a)/kernel -a" you will be presented with a 'root device?' prompt after the autoconfig phase, at which point you can specify what device you want mounted as root. Regrettably, you can't specify an NFS filesystem. Yet. Three files are affected: /sys/i386/i386/swapgeneric.c, /sys/i386/i386/autoconf.c and /sys/kern/kern_devconf.c. Submitted by: wpaul |
||
---|---|---|
bin | ||
eBones | ||
etc | ||
games | ||
gnu | ||
include | ||
lib | ||
libexec | ||
lkm | ||
release | ||
sbin | ||
secure | ||
share | ||
sys | ||
tools/regression/usr.bin/sed | ||
usr.bin | ||
usr.sbin | ||
COPYRIGHT | ||
CVS-INFO | ||
HW.TROUBLE | ||
Makefile | ||
README | ||
TODO |
----------------------------------------- FreeBSD 2.0 --- ALPHA Release , , ----------------------------------------- /( )` \ \___ / | Welcome to the ALPHA release of FreeBSD 2.0 - the /- _ `-/ ' first public snapshot of our new 4.4BSD Lite based (/\/ \ \ /\ operating system environment. This install proce- / / | ` \ dure is also at the ALPHA stage, and contains only O O ) / | the minimum functionality required by an `-^--'`< ' *EXPERIENCED* person to install the system. (_.) _ ) / It is our hope, of course, that the feedback `.___/` / provided from this snapshot will `-----' / greatly assist us in making the release <----. __ / __ \ of 2.0 much more user friendly. Your <----|====O)))==) \) /==== comments and criticisms are very <----' `--' `.__,' \ valuable to us, so please don't hesitate | | in contacting us! Full details on where and \ / /\ how to provide feedback are given below. ______( (_ / \______/ ,' ,-----' | This install procedure is ALPHA code, and `--{__________) may very possibly *DESTROY* the contents of your ENTIRE DISK! Please do not proceed with this installation unless you've adequately backed up your data first! If any errors occur during this installation, you can see them by toggling over to the alternate screen - type ALT-F2 to switch over, ALT-F1 to switch back to the install screen. The debugging output on the second screen may be very valuable to us in understanding your bug report, so please be sure to take note of it when reporting any failures in the installation! Thanks! Menus and scrolling output windows may be traversed with the arrow and Page Up/Page Down keys. To suspend the installation at any point, hit ESC twice. Hitting TAB will move the focus to different controls. If you've ever dealt with a DOS installation, you'll know how to deal with this. For a more complete description of what's new in this release, please see the release notes. For more documentation on this system, it is recommended that you purchase the 4.4BSD Document Set from O'Reilly Associates and the USENIX Association. ISBN 1-56592-082-1 We have no connection with O'Reilly, we're just satisfied customers! Have fun, and please let us know of any problems you encounter with this release! Comments should be sent to: hackers@FreeBSD.org Bug reports should be sent using the `send-pr' utility, if you were able to get the system installed, otherwise to: bugs@FreeBSD.org And general questions to: questions@FreeBSD.org Please have patience if your questions are not answered right away - this is an especially busy time for us, and our volunteer resources are often strained to the limit (if not somewhat past!). Thanks! The FreeBSD Project