pmspcv panic on boot on this box
Larry Rosenman
ler at lerctr.org
Fri Jul 31 17:52:40 UTC 2015
Is this with or without Benno's patch?
On July 31, 2015 12:24:11 PM Warner Losh <imp at bsdimp.com> wrote:
> Try the following patch. There’s a fundamental misunderstanding of newbus
> that’s screwing things up…
>
> Also available at http://people.freebsd.org/~imp/patch-queue/pms
>
> The problem is that the first time through for ahd0 we’re setting
> cardMap[0] to 5. The second time through it is already 5, so we say ‘oh,
> this has been probed before’ and return 2. This causes antiapi_probe() to
> return 0, because the card has already been probed before. This is wrong on
> so many levels, but I’ll suppress channelling my inner bde and stop here.
>
> Warner
>
> diff -r 1805eb187340 sys/dev/pms/freebsd/driver/common/lxutil.c
> --- a/sys/dev/pms/freebsd/driver/common/lxutil.c
> +++ b/sys/dev/pms/freebsd/driver/common/lxutil.c
> @@ -757,18 +757,25 @@ STATIC int agtiapi_ProbeCard( device_t d
> {
> int idx;
> static U32 cardMap[4] = { 0, 0, 0, 0 };
> + u_int16_t agtiapi_vendor; // PCI vendor ID
> u_int16_t agtiapi_dev; // PCI device ID
> AGTIAPI_PRINTK("agtiapi_ProbeCard: start\n");
>
> +#if 0
> if ( ! atomic_cmpset_32( &cardMap[thisCard], 0, 5 ) ) { // card already ran
> AGTIAPI_PRINTK( "We'll only ID this card once -- %d\n", thisCard );
> return 2; // error return value; card already ran this function
> }
> else {
> +#else
> + {
> +#endif
> + agtiapi_vendor = pci_get_vendor( dev ); // get PCI vendor ID
> agtiapi_dev = pci_get_device( dev ); // get PCI device ID
> for( idx = 0; idx < COUNT(ag_card_type); idx++ )
> {
> - if( ag_card_type[idx].deviceId == agtiapi_dev )
> + if( ag_card_type[idx].deviceId == agtiapi_dev &&
> + ag_card_type[idx].vendorId == agtiapi_vendor)
> { // device ID match
> memset( (void *)&agCardInfoList[ thisCard ], 0,
> sizeof(ag_card_info_t) );
>
>
>
> > On Jul 31, 2015, at 8:41 AM, Larry Rosenman <ler at lerctr.org> wrote:
> >
> > Please do pull it from GENERIC until this is fixed in HEAD and RELENG/10.
> >
> >
> > On July 31, 2015 8:32:17 AM Glen Barber <gjb at FreeBSD.org> wrote:
> >
> >> On Fri, Jul 31, 2015 at 05:27:22AM -0500, Larry Rosenman wrote:
> >> > Ok, I made a GENERIC-NOPMS, without the device pmspcv, and adjusted my
> custom
> >> > to include GENERIC-NOPMS. And we boot (I'm typing this from a ssh
> session
> >> > to the box).
> >> >
> >>
> >> Larry, thank you very much for testing this.
> >>
> >> Benno, for 10.2-RELEASE, I think we're going to pull pmspcv from GENERIC
> >> and issue an EN for the driver update when this is fixed.
> >>
> >> I think this should be pulled from GENERIC in head and stable/10 in the
> >> meantime, as well.
> >>
> >> Glen
> >>
> >
> >
> > _______________________________________________
> > freebsd-current at freebsd.org mailing list
> > http://lists.freebsd.org/mailman/listinfo/freebsd-current
> > To unsubscribe, send any mail to "freebsd-current-unsubscribe at freebsd.org"
>
More information about the freebsd-current
mailing list