]> www.infradead.org Git - users/hch/blktests.git/commitdiff
common/rc: confirm pcie hotplug capabilities
authorKeith Busch <kbusch@kernel.org>
Wed, 25 Nov 2020 15:49:52 +0000 (07:49 -0800)
committerOmar Sandoval <osandov@fb.com>
Mon, 4 Jan 2021 22:50:19 +0000 (14:50 -0800)
It turns out some PCIe slots report hotplug surprise but are not hotplug
capable. Despite the contridiction, the spec seems to allow that.

The linux pciehp driver needs hotplug capable to bind to the slot, and
the block/019 test requires hotplug surprise to handle the unannounced
link-down. Verify both bits in the slot capabilities register are set.

Reported-by: Shinichiro Kawasaki <shinichiro.kawasaki@wdc.com>
Reviewed-by: Shinichiro Kawasaki <shinichiro.kawasaki@wdc.com>
Signed-off-by: Keith Busch <kbusch@kernel.org>
common/rc

index 37eb873891f0993651f9180d3c696778e2de0d47..be736ea0fa8e7d6db532d900f6e448ca3019961f 100644 (file)
--- a/common/rc
+++ b/common/rc
@@ -269,7 +269,7 @@ _require_test_dev_in_hotplug_slot() {
 
        local slt_cap
        slt_cap="$(setpci -s "${parent}" CAP_EXP+14.w)"
-       if [[ $((0x${slt_cap} & 0x20)) -eq 0 ]]; then
+       if [[ $((0x${slt_cap} & 0x60)) -ne 0x60 ]]; then
                SKIP_REASON="$TEST_DEV is not in a hot pluggable slot"
                return 1
        fi