Re: [PATCH] PCI: Increase VPD access timeout

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

 



On Tue, Nov 29, 2016 at 12:00:40PM -0600, Matthew R. Ochs wrote:
>The PCI core uses a fixed 50ms timeout when waiting for VPD accesses to
>complete. When an access does not complete within this period, a warning
>is logged and an error returned to the caller.
>
>While this default timeout is valid for most hardware, some devices can
>experience longer access delays under certain circumstances. For example,
>one of the IBM CXL Flash devices can take up to ~120ms in a worst-case
>scenario. These types of devices can benefit from an extended timeout.
>
>To support devices with a longer access delay, increase the timeout in
>pci_vpd_wait() to 125ms. The PCI specification is silent with respect to
>VPD delays, therefore there is no concern for violating a threshold.
>
>Signed-off-by: Matthew R. Ochs <mrochs@xxxxxxxxxxxxxxxxxx>

Reviewed-by: Gavin Shan <gwshan@xxxxxxxxxxxxxxxxxx>

>---
> drivers/pci/access.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
>diff --git a/drivers/pci/access.c b/drivers/pci/access.c
>index d11cdbb..61b5a6b 100644
>--- a/drivers/pci/access.c
>+++ b/drivers/pci/access.c
>@@ -355,7 +355,7 @@ static size_t pci_vpd_size(struct pci_dev *dev, size_t old_size)
> static int pci_vpd_wait(struct pci_dev *dev)
> {
> 	struct pci_vpd *vpd = dev->vpd;
>-	unsigned long timeout = jiffies + msecs_to_jiffies(50);
>+	unsigned long timeout = jiffies + msecs_to_jiffies(125);
> 	unsigned long max_sleep = 16;
> 	u16 status;
> 	int ret;
>-- 
>2.1.0
>
>--
>To unsubscribe from this list: send the line "unsubscribe linux-pci" in
>the body of a message to majordomo@xxxxxxxxxxxxxxx
>More majordomo info at  http://vger.kernel.org/majordomo-info.html
>

--
To unsubscribe from this list: send the line "unsubscribe linux-pci" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[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