Subject: Re: netboot
To: Mark H. Levine <yba@polytronics.com>
From: Matthias Drochner <drochner@zelux6.zel.kfa-juelich.de>
List: port-alpha
Date: 11/04/1997 21:10:36
Excerpts from netbsd: 4-Nov-97 Re: netboot "Mark H. Levine"@polytro (1946)

> At the moment, the 1.3 alpha release seems to use the "sa" value as
> the tftp server, and the bootp server address as the nfs server.  I
> was surprised by this, too, perhaps it is just the message from the
> kernel saying "root is on ..." that is wrong

I just investigated this, and I found that the kernel does The
Right Thing. (It's quite hard to use the bootp server address
here - it is not present in the bootp reply.)
The "root on" message simply prints the string in the "bp_sname"
field of the bootp reply, this might be wrong. (I'm using
the ISC dhcpd at the moment, and it leaves this field empty.
Perhaps it can be switched on with an option, but I don't care.)
"tcpdump" should tell you more, and if this proves that the
BOOTP server sends nonsense (and it is a popular one),
the kernel should probably not print the server name in the future
to avoid confusion.

To be able to load kernels other than "netbsd", the appended patch
could be of use for you. It emulates the behaviour of the
original OSF/1 bootblocks - "boot -fl i" lets you type in the
desired filename interactively.

best regards
Matthias


Index: boot.c
===================================================================
RCS file: /cvsroot/src/sys/arch/alpha/stand/common/boot.c,v
retrieving revision 1.6
diff -c -2 -r1.6 boot.c
*** boot.c	1997/09/06 14:03:56	1.6
--- boot.c	1997/11/04 19:54:38
***************
*** 104,107 ****
--- 104,112 ----
  	(void)printf("Boot flags: %s\n", boot_flags);
  
+ 	if (strchr(boot_flags, 'i') || strchr(boot_flags, 'I')) {
+ 		printf("Boot file: ");
+ 		gets(boot_file);
+ 	}
+ 
  	if (boot_file[0] != '\0')
  		win = (loadfile(name = boot_file, &entry) == 0);