Re: [PATCH v4 2/4] s390/pci: Add quirk support and set pdev-non_compliant_bars for ISM devices

Alexandra Winter
2024-06-27T11:12:44Z

On 26.06.24 13:20, Niklas Schnelle wrote:
> On Wed, 2024-06-26 at 13:15 +0200, Niklas Schnelle wrote:
>> On s390 there is a virtual PCI device called ISM which has a few
>> pecularities. For one it claims to have a 256 TiB PCI BAR which leads to
>> any attempt to ioremap() in its entirety failing. This is problematic
>> since mapping the whole BAR is the default behavior of for example QEMU
>> with VFIO_PCI_MMAP enabled.
>>
>> Even if one tried to map this BAR only partially the mapping would not
>> be usable on systems with MIO support enabled unless using the function
>> handle based PCI instructions directly. This is because of another
>> oddity in that this virtual PCI device does not support the newer memory
>> I/O (MIO) PCI instructions and legacy PCI instructions are not
>> accessible through writeq()/readq() or by user-space when MIO is in use.
>>
>> Indicate that ISM's BAR is special and does not conform to PCI BAR
>> expectations by setting pdev->non_compliant_bars such that drivers not
>> specifically developed for ISM can easily ignore it. To this end add
>> basic PCI quirks support modeled after x86's arch/x86/pci/fixup.c and
>> move the ISM device's PCI ID to the common header to make it accessible.
>> Also enable CONFIG_PCI_QUIRKS whenever CONFIG_PCI is enabled.
>>
>> Signed-off-by: Niklas Schnelle <schnelle@linux.ibm.com>
>> ---
>>
>
>
> Fixed the '-' instead of '->' typo in the patch subject locally.
> Chances are we get a v5 anyway.
>
> Thanks,
> Niklas
>

For a v5:
I am not an expert in English grammar, but I think some commas (',')
may help with reading your very good commit messages.

Acked-by: Alexandra Winter <wintera@linux.ibm.com>