Re: [PATCH net] net: hns3: Clear the CMDQ registers before unmapping BAR region

From: Jakub Kicinski
Date: Mon Oct 26 2020 - 19:13:29 EST


On Fri, 23 Oct 2020 15:01:14 +0800 Zenghui Yu wrote:
> On 2020/10/23 14:22, Yunsheng Lin wrote:
> > On 2020/10/23 13:15, Zenghui Yu wrote:
> >> When unbinding the hns3 driver with the HNS3 VF, I got the following
> >> kernel panic:
> >>
> >> [ 265.709989] Unable to handle kernel paging request at virtual address ffff800054627000
> >> [ 265.717928] Mem abort info:
> >> [ 265.720740] ESR = 0x96000047
> >> [ 265.723810] EC = 0x25: DABT (current EL), IL = 32 bits
> >> [ 265.729126] SET = 0, FnV = 0
> >> [ 265.732195] EA = 0, S1PTW = 0
> >> [ 265.735351] Data abort info:
> >> [ 265.738227] ISV = 0, ISS = 0x00000047
> >> [ 265.742071] CM = 0, WnR = 1
> >> [ 265.745055] swapper pgtable: 4k pages, 48-bit VAs, pgdp=0000000009b54000
> >> [ 265.751753] [ffff800054627000] pgd=0000202ffffff003, p4d=0000202ffffff003, pud=00002020020eb003, pmd=00000020a0dfc003, pte=0000000000000000
> >> [ 265.764314] Internal error: Oops: 96000047 [#1] SMP
> >> [ 265.830357] CPU: 61 PID: 20319 Comm: bash Not tainted 5.9.0+ #206
> >> [ 265.836423] Hardware name: Huawei TaiShan 2280 V2/BC82AMDDA, BIOS 1.05 09/18/2019
> >
> > Do you care to provide the testcase for above calltrace?
>
> I noticed it with VFIO, but it's easy to reproduce it manually. Here you
> go:
>
> # cat /sys/bus/pci/devices/0000\:7d\:00.2/sriov_totalvfs
> 3
> # echo 3 > /sys/bus/pci/devices/0000\:7d\:00.2/sriov_numvfs
> # lspci | grep "Virtual Function"
> 7d:01.6 Ethernet controller: Huawei Technologies Co., Ltd. HNS RDMA
> Network Controller (Virtual Function) (rev 21)
> 7d:01.7 Ethernet controller: Huawei Technologies Co., Ltd. HNS RDMA
> Network Controller (Virtual Function) (rev 21)
> 7d:02.0 Ethernet controller: Huawei Technologies Co., Ltd. HNS RDMA
> Network Controller (Virtual Function) (rev 21)
> # echo 0000:7d:01.6 > /sys/bus/pci/devices/0000:7d:01.6/driver/unbind

Do you know if the bug occurred on 5.4? Is this the correct fixes tag?

Fixes: 862d969a3a4d ("net: hns3: do VF's pci re-initialization while PF doing FLR")