Date: Fri, 8 Sep 2017 11:32:05 -0400 From: Scott Long <scottl@samsco.org> To: john hood <cgull@glup.org>, sthaug@nethelp.no Cc: FreeBSD-SCSI <freebsd-scsi@freebsd.org>, John Baldwin <jhb@freebsd.org> Subject: Re: GEOM probes fail on aac with EARLY_AP_STARTUP Message-ID: <0D188193-4562-483A-B123-6117CC65AF01@samsco.org> In-Reply-To: <0c73b27e-d4ac-4003-81df-b2d9a0a63a81@glup.org> References: <f2dceefe-8c2c-1bad-95ab-9dd138c8fcbe@glup.org> <20170908.151504.74703639.sthaug@nethelp.no> <0c73b27e-d4ac-4003-81df-b2d9a0a63a81@glup.org>
next in thread | previous in thread | raw e-mail | index | archive | help
> On Sep 8, 2017, at 11:06 AM, john hood <cgull@glup.org> wrote:
>
> On 9/8/17 9:15 AM, sthaug@nethelp.no wrote:
>> Is there any reason to believe this is limited to aac? I'm asking
>> because your description is quite similar to boot problema I'm seeing
>> with 11.1-STABLE on a server with mps (Avago) SCSI/SATA controller
>> and SATA disks. I'm getting the dreaded "mounting from ... failed
>> with error 19". 11.1-RELEASE seems to work okay but 11.1-STABLE does
>> not.
>
> Your issue isn't obviously directly related to mine. mps is a CAM driver
> and aac is not (at least not for normal block volumes), which makes disk
> probe/attach quite different. I also don't see an obvious driver flag
> like the one in aac.
>
It’s a different pattern in CAM, and CAM itself looks to be safe. MPS and MPR
have their own intrhooks, and on review just now I see a potential for a similar
problem to what you saw and that would match Steinar’s symptoms. Please
try the following patch:
--- mps.c (revision 323314)
+++ mps.c (working copy)
@@ -1639,6 +1639,11 @@
mps_mapping_initialize(sc);
mpssas_startup(sc);
mps_unlock(sc);
+
+ mps_dprint(sc, MPS_XINFO, "disestablish config intrhook\n");
+ config_intrhook_disestablish(&sc->mps_ich);
+ sc->mps_ich.ich_arg = NULL;
+
mps_dprint(sc, MPS_INIT, "%s exit\n", __func__);
}
Index: mps_sas.c
===================================================================
--- mps_sas.c (revision 323314)
+++ mps_sas.c (working copy)
@@ -3695,11 +3695,6 @@
mps_dprint(sc, MPS_FAULT, "Portenable failed\n");
mps_free_command(sc, cm);
- if (sc->mps_ich.ich_arg != NULL) {
- mps_dprint(sc, MPS_XINFO, "disestablish config intrhook\n");
- config_intrhook_disestablish(&sc->mps_ich);
- sc->mps_ich.ich_arg = NULL;
- }
/*
* Get WarpDrive info after discovery is complete but before the scan
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?0D188193-4562-483A-B123-6117CC65AF01>
