On 21/10, Naveen Naidu wrote:
> An MMIO read from a PCI device that doesn't exist or doesn't respond
> causes a PCI error. There's no real data to return to satisfy the
> CPU read, so most hardware fabricates ~0 data.
>
> Use RESPONSE_IS_PCI_ERROR() to check the response we get when we read
> data from hardware.
>
> This helps unify PCI error response checking and make error checks
> consistent and easier to find.
>
> Signed-off-by: Naveen Naidu <naveennaidu479@gmail.com>
> ---
> drivers/pci/controller/vmd.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/pci/controller/vmd.c b/drivers/pci/controller/vmd.c
> index a5987e52700e..bfe6b002ffec 100644
> --- a/drivers/pci/controller/vmd.c
> +++ b/drivers/pci/controller/vmd.c
> @@ -538,7 +538,7 @@ static int vmd_get_phys_offsets(struct vmd_dev *vmd, bool native_hint,
> int ret;
>
> ret = pci_read_config_dword(dev, PCI_REG_VMLOCK, &vmlock);
> - if (ret || vmlock == ~0)
> + if (ret || RESPONSE_IS_PCI_ERROR(vmlock))
> return -ENODEV;
>
> if (MB2_SHADOW_EN(vmlock)) {
> --
> 2.25.1
>
Jonathan, I haven't added your Reviewed-by tag to this patch which you
gave in v1 of the series [1] , because the macro definition of the
RESPONSE_IS_PCI_ERROR changed slightly, and I was not sure if you would
be okay with it. I hope it was right thing to do, if not I apologize for
that.
[1]:
https://lore.kernel.org/linux-pci/f3aca934-7dee-b294-ad3c-264e773eddda@linux.dev/T/#u
Thanks,
Naveen