Re: [PATCH] pci: Avoid FLR for AMD FCH AHCI adapters

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 1/31/23 01:04, Bjorn Helgaas wrote:
> On Mon, Jan 30, 2023 at 03:46:06PM +0000, Niklas Cassel wrote:
>> On Mon, Jan 30, 2023 at 09:21:11AM -0600, Bjorn Helgaas wrote:
>>> On Sat, Jan 28, 2023 at 10:39:51AM +0900, Damien Le Moal wrote:
>>>> PCI passthrough to VMs does not work with AMD FCH AHCI adapters: the
>>>> guest OS fails to correctly probe devices attached to the controller due
>>>> to FIS communication failures. 
>>>
>>> What does a FIS communication failure look like?  Can we include a
>>> line or two of dmesg output here to help users find this fix?
>>
>> It looks like this:
>>
>> [   22.402368] ata4: softreset failed (1st FIS failed)
>> [   32.417855] ata4: softreset failed (1st FIS failed)
>> [   67.441641] ata4: softreset failed (1st FIS failed)
>> [   67.453227] ata4: limiting SATA link speed to 3.0 Gbps
>> [   72.661738] ata4: SATA link up 3.0 Gbps (SStatus 123 SControl 320)
>> [   78.121263] ata4.00: qc timeout after 5000 msecs (cmd 0xec)
>> [   78.134413] ata4.00: failed to IDENTIFY (I/O error, err_mask=0x4)
>>
>> Basically, we can read and write MMIO registers in the AHCI HBA,
>> but the communication between the AHCI HBA and the ATA device does
>> not work properly.
>>
>> (Because the AHCI HBA did not get reset when binding/unbinding the
>> device.)
>>
>> The exact same kernel, using the same generic AHCI driver within the VM,
>> can communicate perfectly fine when using e.g. an Intel AHCI HBA.
>>
>> (With both the AMD and Intel AHCI HBAs being bound to the vfio-pci driver
>> in the host.)
>>
>> We can send a v2 with the above dmesg output.
> 
> Don't bother, I added the above and applied this to pci/virtualization
> for v6.2, thanks!

Thanks !


-- 
Damien Le Moal
Western Digital Research




[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux