[Bug report] PCIe NVME SSD hotplug surprise removal issue

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

 



Hi Bjorn, Keith

The lspci -tv topology is as below.
 +-[0000:80]-+-00.0-[81]----00.0  Huawei Technologies Co., Ltd. Device 3714
 |           +-02.0-[82]----00.0  Huawei Technologies Co., Ltd. Device 3714
 |           +-04.0-[83]----00.0  Huawei Technologies Co., Ltd. Device 3714
 |           +-06.0-[84]----00.0  Huawei Technologies Co., Ltd. Device 3714
 |                   +-08.0-[|           +-0c.0-[86]--
 |           +-10.0-[87]----00.0  Huawei Technologies Co., Ltd. Device 3714

Then surprise removal 87:00.0 NVME SSD card. The issue is as below.
The SSD card is still present.

[  178.610064] pciehp 0000:80:10.0:pcie004: Slot(36): Link Down
[  178.725009] iommu: Removing device 0000:87:00.0 from group 12
[  178.731278] pciehp 0000:80:10.0:pcie004: Slot(36): Card present
[  180.731129] pcieport 0000:80:10.0: Data Link Layer Link Active not set in 1000 msec
[  182.243128] pciehp 0000:80:10.0:pcie004: Failed to check link status

Then lspci -s 80:10.0 -vvv|grep -i SltSta
SltSta:Status: AttnBtn- PowerFlt- MRL- CmdCplt- PresDet- Interlock
We can see the card is not present (PresDet-).

Data Link Layer State Changed (link down) event reported
prior to Presence Detect Changed (card is not present).
Current code pciehp_handle_presence_or_link_change() seems have such issue.

Any idea to resolve the issue.

Thanks,
Dongdong




[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