NetBSD-Users archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: NetBSD 6.0/amd64 Panic on shutdown.. mfi related?
On Thu, Nov 08, 2012 at 01:07:47PM +0000, Hugo Silva wrote:
> The guys in the datacenter were unable to give me any more information.
>
> What I could find through pcictl was:
>
> 001:00:0: Symbios Logic MegaRAID SAS2108 GEN2 (RAID mass storage,
> revision 0x04)
> 003:14:0: Symbios Logic MegaRAID SAS (RAID mass storage)
>
>
> I *think* but am not sure that I could query mfi0 with FreeBSD's mfiutil
> before installing NetBSD. bioctl mfi0 show doesn't work though:
>
> bioctl: Can't locate mfi0 device via /dev/bio
>
>
> When the server is booting only the mfi1 card is seen doing its thing.
> I'd noticed mfi0 being present was strange but didn't think much of it
> (mfi1 did work after all), that is until I noticed the panic on shutdown
> appeared to be related to the driver.
Can you update to a recent netbsd-6 and apply the attached patch ?
looks like we're missing some initialisation steps for this model,
when the firmware is in MFI_STATE_BOOT_MESSAGE_PENDING state.
--
Manuel Bouyer <bouyer%antioche.eu.org@localhost>
NetBSD: 26 ans d'experience feront toujours la difference
--
Index: mfi.c
===================================================================
RCS file: /cvsroot/src/sys/dev/ic/mfi.c,v
retrieving revision 1.47
diff -u -p -u -r1.47 mfi.c
--- mfi.c 19 Sep 2012 21:24:29 -0000 1.47
+++ mfi.c 8 Nov 2012 14:12:59 -0000
@@ -587,12 +587,14 @@ mfi_transition_firmware(struct mfi_softc
max_wait = 20;
break;
case MFI_STATE_BOOT_MESSAGE_PENDING:
- if (sc->sc_ioptype == MFI_IOP_TBOLT) {
+ if (sc->sc_ioptype == MFI_IOP_SKINNY ||
+ sc->sc_ioptype == MFI_IOP_TBOLT) {
mfi_write(sc, MFI_SKINNY_IDB, MFI_INIT_HOTPLUG);
- max_wait = 180;
- break;
+ } else {
+ mfi_write(sc, MFI_IDB, MFI_INIT_HOTPLUG);
}
- /* FALLTHROUGH */
+ max_wait = 180;
+ break;
default:
aprint_error_dev(sc->sc_dev,
"unknown firmware state %d\n", fw_state);
Home |
Main Index |
Thread Index |
Old Index