[Skiboot] [PATCH] core/pci: Fix criteria in pci_cfg_reg_filter()
Gavin Shan
gwshan at linux.vnet.ibm.com
Tue Nov 8 09:43:55 AEDT 2016
On Mon, Nov 07, 2016 at 05:56:58PM +1100, Stewart Smith wrote:
>Gavin Shan <gwshan at linux.vnet.ibm.com> writes:
>> The criteria to match the filter according to PCI config register
>> offset and length is strict one, meaning the accessed region should
>> matches with the filter's tracking region. However, the code isn't
>> correct enough - @len should be replaced with @pcrf->len.
>>
>> The strict matching has to account for the length of current PCI
>> config register access. We have to specify precise region through
>> @start and @len in pci_virt_add_filter() when creating the filter.
>> We lost flexibility. This changes the strict criteria to a relaxed
>> one - the matched filter is returned when the accessed region is
>> overlapped with the filter's region. With this change, the individual
>> filter's handlers should validate the accessed (register) region if
>> necessary.
>>
>> Fixes: 85daa7f00c50 ("core/pci: Support virtual device")
>> Signed-off-by: Gavin Shan <gwshan at linux.vnet.ibm.com>
>
>For some reason I marked this as "Accepted" in patchwork and didn't
>actually merge+push. My extreme bad.
>
>Anyway, merged to master as of e2fa37e75e428220940e0d901f0ad6d0cf0db37c
>
Thanks, Stewart.
>
>--
>Stewart Smith
>OPAL Architect, IBM.
More information about the Skiboot
mailing list