Hey Bryan,

Sorry for the hassle. This didn’t show up in the hardware I had, but did show 
up in Mav’s hardware. It was like this less than a day, I thought…

Warner


On Sep 25, 2014, at 5:18 PM, Bryan Drewery <bdrew...@freebsd.org> wrote:

> This drove me crazy for the past few days!
> 
> https://lists.freebsd.org/pipermail/freebsd-current/2014-September/052215.html
> 
> Not sure about the first trace there, but the others I encountered were
> due to this not being fixed yet. smh@ tracked the ordering down and then
> we found this. I couldn't try a newer build easily since my system would
> panic on just buildworld :)
> 
> On 9/6/2014 1:20 PM, Warner Losh wrote:
>> Author: imp
>> Date: Sat Sep  6 18:20:50 2014
>> New Revision: 271201
>> URL: http://svnweb.freebsd.org/changeset/base/271201
>> 
>> Log:
>>  Restore order of interrupt setup. Minor problems can result by
>>  setting up the interrupts too early:
>> 
>>  Reviewed by: mav@
>>  Sponsored by: Netflix
>> 
>> Modified:
>>  head/sys/dev/ahci/ahci.c
>>  head/sys/dev/ahci/ahci_pci.c
>> 
>> Modified: head/sys/dev/ahci/ahci.c
>> ==============================================================================
>> --- head/sys/dev/ahci/ahci.c Sat Sep  6 18:08:21 2014        (r271200)
>> +++ head/sys/dev/ahci/ahci.c Sat Sep  6 18:20:50 2014        (r271201)
>> @@ -229,6 +229,15 @@ ahci_attach(device_t dev)
>> 
>>      ahci_ctlr_setup(dev);
>> 
>> +    /* Setup interrupts. */
>> +    if (ahci_setup_interrupt(dev)) {
>> +            bus_dma_tag_destroy(ctlr->dma_tag);
>> +            bus_release_resource(dev, SYS_RES_MEMORY, ctlr->r_rid,
>> +                ctlr->r_mem);
>> +            rman_fini(&ctlr->sc_iomem);
>> +            return ENXIO;
>> +    }
>> +
>>      i = 0;
>>      for (u = ctlr->ichannels; u != 0; u >>= 1)
>>              i += (u & 1);
>> 
>> Modified: head/sys/dev/ahci/ahci_pci.c
>> ==============================================================================
>> --- head/sys/dev/ahci/ahci_pci.c     Sat Sep  6 18:08:21 2014        
>> (r271200)
>> +++ head/sys/dev/ahci/ahci_pci.c     Sat Sep  6 18:20:50 2014        
>> (r271201)
>> @@ -417,13 +417,6 @@ ahci_pci_attach(device_t dev)
>>              ctlr->numirqs = 1;
>>      }
>> 
>> -    if (ahci_setup_interrupt(dev)) {
>> -            if (ctlr->msi)
>> -                    pci_release_msi(dev);
>> -            bus_release_resource(dev, SYS_RES_MEMORY, ctlr->r_rid, 
>> ctlr->r_mem);
>> -            return ENXIO;
>> -    }
>> -
>>      error = ahci_attach(dev);
>>      if (error != 0)
>>              if (ctlr->msi)
>> 
> 
> 
> -- 
> Regards,
> Bryan Drewery
> 

Attachment: signature.asc
Description: Message signed with OpenPGP using GPGMail

Reply via email to