Can't boot off the live CD...
Matthew Dillon
dillon at apollo.backplane.com
Thu Mar 18 16:50:23 PST 2004
:Hi Matt,
:
:I had a serial cable around and was able to get the text. Below is the
:output from boot -v and trace.
Ok. I have a patch (enclosed below). Are you able to compile a new
kernel or do I need to generate a new ISO for you to burn?
This will not make 'xl' work, but hopefully it will allow the kernel
to continue booting.
-Matt
Index: xl/if_xl.c
===================================================================
RCS file: /cvs/src/sys/dev/netif/xl/if_xl.c,v
retrieving revision 1.9
diff -u -r1.9 if_xl.c
--- xl/if_xl.c 14 Mar 2004 15:36:53 -0000 1.9
+++ xl/if_xl.c 19 Mar 2004 00:47:31 -0000
@@ -1461,6 +1461,8 @@
goto fail;
}
+ sc->xl_flags |= XL_FLAG_ATTACH_MAPPED;
+
/* Reset the adapter. */
xl_reset(sc);
@@ -1811,9 +1813,16 @@
res = SYS_RES_IOPORT;
}
- xl_reset(sc);
- xl_stop(sc);
- ether_ifdetach(ifp);
+ /*
+ * Only try to communicate with the device if we were able to map
+ * the ports. This flag is set before ether_ifattach() so it also
+ * governs our call to ether_ifdetach().
+ */
+ if (sc->xl_flags & XL_FLAG_ATTACH_MAPPED) {
+ xl_reset(sc);
+ xl_stop(sc);
+ ether_ifdetach(ifp);
+ }
if (sc->xl_miibus)
device_delete_child(dev, sc->xl_miibus);
Index: xl/if_xlreg.h
===================================================================
RCS file: /cvs/src/sys/dev/netif/xl/if_xlreg.h,v
retrieving revision 1.3
diff -u -r1.3 if_xlreg.h
--- xl/if_xlreg.h 24 Jan 2004 06:34:02 -0000 1.3
+++ xl/if_xlreg.h 19 Mar 2004 00:45:11 -0000
@@ -576,6 +576,7 @@
#define XL_FLAG_INVERT_MII_PWR 0x0040
#define XL_FLAG_NO_XCVR_PWR 0x0080
#define XL_FLAG_USE_MMIO 0x0100
+#define XL_FLAG_ATTACH_MAPPED 0x0200 /* set after ports mapped */
#define XL_NO_XCVR_PWR_MAGICBITS 0x0900
More information about the Bugs
mailing list