Anyone using BOOTP with latest current (Book-E)?

M. Warner Losh imp at bsdimp.com
Tue Mar 23 15:51:06 UTC 2010


In message: <4BA8CF0E.50201 at freebsd.org>
            Nathan Whitehorn <nwhitehorn at FreeBSD.org> writes:
: Marcel Moolenaar wrote:
: > I get the following on a recent -current (on a P2020 eval system):
: >
: > bootpc_init: wired to interface 'tsec0'
: > Sending DHCP Discover packet from interface tsec0 (00:e0:0c:02:00:fd)
: > tsec0: link state changed to DOWN
: > tsec0: link state changed to UP
: > Received DHCP Offer packet on tsec0 from 192.168.4.1 (accepted) (no
: > root path)
: > Sending DHCP Request packet from interface tsec0 (00:e0:0c:02:00:fd)
: > Received DHCP Ack packet on tsec0 from 192.168.4.1 (accepted) (got
: > root path)
: > tsec0 at 192.168.4.151 server 192.168.4.1 boot file
: > powerpc/boot/loader
: > subnet mask 255.255.255.0 router 192.168.4.1 rootfs
: > 192.168.4.1:/net/powerpc Adjusted interface tsec0
: > krpc_call: sosend: 65
: > krpc_call: sosend: 65
: > panic: nfs_boot: mountd root, error=65
: > KDB: enter: panic
: > [ thread pid 0 tid 100000 ]
: > Stopped at      kdb_enter+0x60: addi    r0, r0, 0x0
: > db> bt
: > Tracing pid 0 tid 100000 td 0xc0450360
: > 0xc2008ae0: at panic+0x13c
: > 0xc2008b40: at bootpc_init+0x1910
: > 0xc2008c20: at mi_startup+0x11c
: > 0xc2008c50: at __start+0x140
: >
: > BTW: error 65 is EHOSTUNREACH, which I think is caused by a link flag.
: >   
: This might be a tsec(4) issue, maybe from the recent link-state
: reporting changes? I netbooted some Book-S machines over bm(4) and
: gem(4) without incident yesterday, so the issue is probably
: hardware-specific.

You might try the following hack in route.h:

Index: route.h
===================================================================
--- route.h	(revision 205300)
+++ route.h	(working copy)
@@ -319,8 +319,7 @@
 
 #ifdef _KERNEL
 
-#define RT_LINK_IS_UP(ifp)	(!((ifp)->if_capabilities & IFCAP_LINKSTATE) \
-				 || (ifp)->if_link_state == LINK_STATE_UP)
+#define RT_LINK_IS_UP(ifp)	(1)
 
 #define	RT_LOCK_INIT(_rt) \
 	mtx_init(&(_rt)->rt_mtx, "rtentry", NULL, MTX_DEF | MTX_DUPOK)

Warner


More information about the freebsd-ppc mailing list