Date: Tue, 1 Oct 2002 11:01:04 -0400 From: "Brian Kohn" <bkohn@veranet.net> To: <freebsd-alpha@freebsd.org> Subject: Diskless problem with 4.6 Message-ID: <BKEMJFBPOBHCDAGLGNFJOEKECGAA.bkohn@veranet.net>
index | next in thread | raw e-mail
I have an Intel master server running 4.6.2p2. When I startup a diskless
alpha using the 4.5p20-RELEASE kernel and lower with BOOTP enabled it boots
with no problems. I have tested with 4.0, 4.1 and now 4.5p20. I have tried
to use 4.6.1p1 and now 4.6.2p2 and it only works about 50% of the time. I
get the kernel trap included below. I have tried using different master
servers, different alphas (same hardware specs), different switches and
cables, and also different kernel options in my config (included below) all
with the same results. I also have an Intel diskless cluster environment
that works with no problem using 4.6.2p2. After testing I narrowed the
problem down to a change that was made between 4.5 and 4.6 with
src/sys/netinet/in.c. I have included a patch below of how to revert that
section of code to what I have found in 4.5p20, this fixes my problem and
allows my alphas to boot 100% of the time, but I don't believe this fix is
the way to go for future development of FreeBSD. I hope this is enough
information. If there is any further testing that I can do to help please
let me know.
Brian Kohn
VeraNet Solutions
BiznessOnline
bkohn@veranet.net
Alpha Hardware:
Compaq AlphaServer DS10 466 MHz with 576 Megs of RAM
Dual DE500-BA Network Controllers
Kernel Trap:
----------------------------------------------------------------------------
-
Mounting root from nfs:
da0 at isp0 bus 0 target 0 lun 0
da0: <DEC RZ2DD-KS (C) DEC 0306> Fixed Direct Access SCSI-2 device
da0: 40.000MB/s transfers (20.000MHz, offset 8, 16bit), Tagged Queueing
Enabled
da0: 8678MB (17773524 512 byte sectors: 255H 63S/T 1106C)
bootpc_init: wired to interface 'dc1'
Sending DHCP Discover packet from interface dc1 (08:00:2b:86:72:c8)
Received DHCP Offer packet on dc1 from 172.16.0.4 (accepted) (no root path)
fatal kernel trap:
trap entry = 0x2 (memory management fault)
a0 = 0x0
a1 = 0x1
a2 = 0xffffffffffffffff
pc = 0x0
ra = 0xfffffc00005a60c0
curproc = 0
panic: trap
syncing disks...
done
Uptime: 11s
Automatic reboot in 15 seconds - press a key on the console to abort
--> Press a key on the console to reboot,
--> or switch off the system now.
----------------------------------------------------------------------------
-
Patch:
----------------------------------------------------------------------------
-
--- in.c.orig Wed May 1 04:30:36 2002
+++ in.c Thu Sep 26 13:06:31 2002
@@ -729,25 +729,11 @@
return (0);
flags |= RTF_HOST;
}
-
- /*-
- * Don't add host routes for interface addresses of
- * 0.0.0.0 --> 0.255.255.255 netmask 255.0.0.0. This makes it
- * possible to assign several such address pairs with consistent
- * results (no host route) and is required by BOOTP.
- *
- * XXX: This is ugly ! There should be a way for the caller to
- * say that they don't want a host route.
- */
- if (ia->ia_addr.sin_addr.s_addr != INADDR_ANY ||
- ia->ia_netmask != IN_CLASSA_NET ||
- ia->ia_dstaddr.sin_addr.s_addr != htonl(IN_CLASSA_HOST)) {
- if ((error = rtinit(&ia->ia_ifa, (int)RTM_ADD, flags)) != 0)
{
- ia->ia_addr = oldaddr;
- return (error);
- }
+ if ((error = rtinit(&(ia->ia_ifa), (int)RTM_ADD, flags)) == 0)
ia->ia_flags |= IFA_ROUTE;
- }
+ /* XXX check if the subnet route points to the same interface */
+ if (error == EEXIST)
+ error = 0;
/*
* If the interface supports multicast, join the "all hosts"
----------------------------------------------------------------------------
-
Kernel Config:
----------------------------------------------------------------------------
-
machine alpha
cpu EV4
cpu EV5
ident DISKLESS-ALPHA
# Platforms supported
options DEC_ST6600 # XP1000, DP264, DS20, DS10, family
options INET #InterNETworking
options FFS #Berkeley Fast Filesystem
options FFS_ROOT #FFS usable as root device [keep
this!]
options SOFTUPDATES #Enable FFS soft updates support
options UFS_DIRHASH #Improve performance on big
directories
options MFS #Memory Filesystem
options MD_ROOT #MD is a potential root device
options NFS #Network Filesystem
options NFS_ROOT #NFS usable as root device
options MSDOSFS #MSDOS Filesystem
options CD9660 #ISO 9660 Filesystem
options CD9660_ROOT #CD-ROM usable as root device
options PROCFS #Process filesystem
options COMPAT_43 #Compatible with BSD 4.3 [KEEP
THIS!]
options SCSI_DELAY=3000 #Delay (in ms) before probing SCSI
options UCONSOLE #Allow users to grab the console
options KTRACE #ktrace(1) syscall trace support
options SYSVSHM #SYSV-style shared memory
options SYSVMSG #SYSV-style message queues
options SYSVSEM #SYSV-style semaphores
options P1003_1B #Posix P1003_1B real-time extentions
options _KPOSIX_PRIORITY_SCHEDULING
options ICMP_BANDLIM #Rate limit bad replies
# Standard busses
device isa
device pci
# Floppy drives
device fdc0 at isa? port IO_FD1 irq 6 drq 2
device fd0 at fdc0 drive 0
# ATA and ATAPI devices
device ata
device atadisk # ATA disk drives
device atapicd # ATAPI CDROM drives
device atapifd # ATAPI floppy drives
device atapist # ATAPI tape drives
# SCSI Controllers
device ahc # AHA2940 and onboard AIC7xxx devices
device isp # Qlogic family
device ncr # NCR/Symbios Logic
device sym # NCR/Symbios Logic (newer chipsets)
# SCSI peripherals
device scbus # SCSI bus (required)
device da # Direct Access (disks)
device sa # Sequential Access (tape etc)
device cd # CD
device pass # Passthrough device (direct SCSI access)
# RAID controllers
device amr # AMI MegaRAID
device mlx # Mylex DAC960 family
# RAID controllers
device amr # AMI MegaRAID
device mlx # Mylex DAC960 family
# atkbdc0 controls both the keyboard and the PS/2 mouse
device atkbdc0 at isa? port IO_KBD
device atkbd0 at atkbdc? irq 1
device psm0 at atkbdc? irq 12
device vga0 at isa?
# splash screen/screen saver
pseudo-device splash
# syscons is the default console driver, resembling an SCO console
device sc0 at isa?
# real time clock
device mcclock0 at isa? port 0x70
# Serial (COM) ports
device sio0 at isa? port IO_COM1 irq 4
device sio1 at isa? port IO_COM2 irq 3 flags 0x50
# Parallel port
device ppc0 at isa? irq 7
device ppbus # Parallel port bus (required)
device lpt # Printer
device plip # TCP/IP over parallel
device ppi # Parallel port interface device
#device vpo # Requires scbus and da
# PCI Ethernet NICs.
device de # DEC/Intel DC21x4x (``Tulip'')
device txp # 3Com 3cR990 (``Typhoon'')
device le # Lance
# PCI Ethernet NICs that use the common MII bus controller code.
device miibus # MII bus support
device dc # DEC/Intel 21143 and workalikes
device fxp # Intel EtherExpress PRO/100B (82557, 82558)
device pcn # AMD Am79C97x PCI 10/100 NICs
device rl # RealTek 8129/8139
device sf # Adaptec AIC-6915 (``Starfire'')
device sis # Silicon Integrated Systems SiS 900/SiS
7016
device ste # Sundance ST201 (D-Link DFE-550TX)
device tl # Texas Instruments ThunderLAN
device vr # VIA Rhine, Rhine II
device wb # Winbond W89C840F
device wx # Intel Gigabit Ethernet Card (``Wiseman'')
device xl # 3Com 3c90x (``Boomerang'', ``Cyclone'')
# Pseudo devices - the number indicates how many units to allocated.
pseudo-device loop # Network loopback
pseudo-device ether # Ethernet support
pseudo-device pty # Pseudo-ttys (telnet etc)
pseudo-device md # Memory "disks"
# The `bpf' pseudo-device enables the Berkeley Packet Filter.
# Be aware of the administrative consequences of enabling this!
pseudo-device bpf #Berkeley packet filter
# Firewall
options IPFIREWALL
options IPFIREWALL_VERBOSE
options IPFIREWALL_DEFAULT_TO_ACCEPT
#
# Diskless
options BOOTP
options BOOTP_NFSROOT
options BOOTP_NFSV3
options BOOTP_COMPAT
options BOOTP_WIRED_TO=dc1
----------------------------------------------------------------------------
-
To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-alpha" in the body of the message
home |
help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?BKEMJFBPOBHCDAGLGNFJOEKECGAA.bkohn>
