lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <c8eb97b1-dab5-cc25-7669-2819f64a885d@huawei.com>
Date:   Wed, 27 Nov 2019 11:41:10 +0000
From:   John Garry <john.garry@...wei.com>
To:     Saravana Kannan <saravanak@...gle.com>
CC:     <iommu@...ts.linuxfoundation.org>,
        Jean-Philippe Brucker <jean-philippe@...aro.org>,
        Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
        LKML <linux-kernel@...r.kernel.org>,
        Bjorn Helgaas <bhelgaas@...gle.com>,
        Will Deacon <will@...nel.org>,
        "Isaac J. Manjarres" <isaacm@...eaurora.org>,
        Robin Murphy <robin.murphy@....com>
Subject: Re: [PATCH v3 09/14] iommu/arm-smmu: Prevent forced unbinding of Arm
 SMMU drivers

On 27/11/2019 11:04, John Garry wrote:
> On 26/11/2019 20:27, Saravana Kannan wrote:
>> On Tue, Nov 26, 2019 at 1:13 AM John Garry <john.garry@...wei.com> wrote:
>>>
>>> On 21/11/2019 11:49, Will Deacon wrote:
>>>> Forcefully unbinding the Arm SMMU drivers is a pretty dangerous 
>>>> operation,
>>>> since it will likely lead to catastrophic failure for any DMA devices
>>>> mastering through the SMMU being unbound. When the driver then attempts
>>>> to "handle" the fatal faults, it's very easy to trip over dead data
>>>> structures, leading to use-after-free.
>>>>
>>>> On John's machine, he reports that the machine was "unusable" due to
>>>> loss of the storage controller following a forced unbind of the SMMUv3
>>>> driver:
>>>>
>>>>     | # cd ./bus/platform/drivers/arm-smmu-v3
>>>>     | # echo arm-smmu-v3.0.auto > unbind
>>>>     | hisi_sas_v2_hw HISI0162:01: CQE_AXI_W_ERR (0x800) found!
>>>>     | platform arm-smmu-v3.0.auto: CMD_SYNC timeout at 0x00000146
>>>>     | [hwprod 0x00000146, hwcons 0x00000000]
>>>>
>>>> Prevent this forced unbinding of the drivers by setting 
>>>> "suppress_bind_attrs"
>>>> to true.
>>>
>>> This seems a reasonable approach for now.
>>>
>>> BTW, I'll give this series a spin this week, which again looks to be
>>> your iommu/module branch, excluding the new IORT patch.
>>
> 
> Hi Saravana,
> 
>> Is this on a platform where of_devlink creates device links between
>> the iommu device and its suppliers?I'm guessing no? Because device
>> links should for unbinding of all the consumers before unbinding the
>> supplier.
> 
> I'm only really interested in ACPI, TBH.
> 
>>
>> Looks like it'll still allow the supplier to unbind if the consumers
>> don't allow unbinding. Is that the case here?
> 
> So just unbinding the driver from a device does not delete the device 
> nor exit the device from it's IOMMU group - so we keep the reference to 
> the SMMU ko. As such, I don't know how to realistically test unloading 
> the SMMU ko when we have platform devices involved. Maybe someone can 
> enlighten me...

But I could do it on our D06 dev board, where all devices behind the 
SMMUs are PCI based:

--- Initial state ---

root@(none)$ dmesg | grep Adding
[   30.271801] pcieport 0000:00:00.0: Adding to iommu group 0
[   30.296088] pcieport 0000:00:04.0: Adding to iommu group 1
[   30.322234] pcieport 0000:00:08.0: Adding to iommu group 2
[   30.335641] pcieport 0000:00:0c.0: Adding to iommu group 3
[   30.343114] pcieport 0000:00:10.0: Adding to iommu group 4
[   30.355650] pcieport 0000:00:12.0: Adding to iommu group 5
[   30.366794] pcieport 0000:7c:00.0: Adding to iommu group 6
[   30.377993] hns3 0000:7d:00.0: Adding to iommu group 7
[   31.861957] hns3 0000:7d:00.1: Adding to iommu group 8
[   33.313967] hns3 0000:7d:00.2: Adding to iommu group 9
[   33.436029] hns3 0000:7d:00.3: Adding to iommu group 10
[   33.555935] hns3 0000:bd:00.0: Adding to iommu group 11
[   35.143851] pcieport 0000:74:00.0: Adding to iommu group 12
[   35.150736] pcieport 0000:80:00.0: Adding to iommu group 13
[   35.158910] pcieport 0000:80:08.0: Adding to iommu group 14
[   35.166860] pcieport 0000:80:0c.0: Adding to iommu group 15
[   35.174813] pcieport 0000:80:10.0: Adding to iommu group 16
[   35.182854] pcieport 0000:bc:00.0: Adding to iommu group 17
[   35.189702] pcieport 0000:b4:00.0: Adding to iommu group 18
[   35.196445] hisi_sas_v3_hw 0000:74:02.0: Adding to iommu group 19
[   39.410693] ahci 0000:74:03.0: Adding to iommu group 20
root@(none)$ lsmod
     Not tainted
arm_smmu_v3 40960 21 - Live 0xffff800008c60000

--- Start removing devices ---

root@(none)$  echo 1 > ./sys/devices/pci0000:00/0000:00:00.0/remove
[   55.567808] pci_bus 0000:01: busn_res: [bus 01] is released
[   55.573514] pci 0000:00:00.0: Removing from iommu group 0
root@(none)$  echo 1 > ./sys/devices/pci0000:00/0000:00:04.0/remove
[   61.767425] pci_bus 0000:02: busn_res: [bus 02] is released
[   61.773132] pci 0000:00:04.0: Removing from iommu group 1
root@(none)$ echo 1 > ./sys/devices/pci0000:00/0000:00:04.0/remove
sh: ./sys/devices/pci0000:00/0000:00:04.0/remove: No such file or directory
root@(none)$  echo 1 > ./sys/devices/pci0000:00/0000:00:08.0/remove
[   75.635417] pci_bus 0000:03: busn_res: [bus 03] is released
[   75.641124] pci 0000:00:08.0: Removing from iommu group 2
root@(none)$ echo 1 > ./sys/devices/pci0000:00/0000:00:0c.0/remove
[   81.587419] pci_bus 0000:04: busn_res: [bus 04] is released
[   81.593110] pci 0000:00:0c.0: Removing from iommu group 3
root@(none)$  echo 1 > ./sys/devices/pci0000:00/0000:00:10.0/remove
[   85.607605] pci_bus 0000:05: busn_res: [bus 05] is released
[   85.613300] pci 0000:00:10.0: Removing from iommu group 4
root@(none)$ echo 1 > ./sys/devices/pci0000:00/0000:00:12.0/remove
[   92.731421] pci_bus 0000:06: busn_res: [bus 06] is released
[   92.737125] pci 0000:00:12.0: Removing from iommu group 5
root@(none)$ echo 1 > ./sys/devices/pci0000:7c/0000:7c:00.0/remove
[  102.286726] pci 0000:7d:00.0: Removing from iommu group 7
[  102.294157] pci 0000:7d:00.1: Removing from iommu group 8
[  102.301634] pci 0000:7d:00.2: Removing from iommu group 9
[  102.308973] pci 0000:7d:00.3: Removing from iommu group 10
[  102.316578] pci_bus 0000:7d: busn_res: [bus 7d] is released
[  102.322282] pci 0000:7c:00.0: Removing from iommu group 6
root@(none)$ echo 1 > ./sys/devices/pci0000:74/0000:74:00.0/remove
[  108.047590] pci_bus 0000:75: busn_res: [bus 75] is released
[  108.053278] pci 0000:74:00.0: Removing from iommu group 12
root@(none)$ echo 1 > ./sys/devices/pci0000:80/0000:80:00.0/remove
[  112.283590] pci_bus 0000:81: busn_res: [bus 81] is released
[  112.289293] pci 0000:80:00.0: Removing from iommu group 13
root@(none)$ echo 1 > ./sys/devices/pci0000:80/0000:80:0c.0/remove
[  117.975427] pci_bus 0000:83: busn_res: [bus 83] is released
[  117.981126] pci 0000:80:0c.0: Removing from iommu group 15
root@(none)$ echo 1 > ./sys/devices/pci0000:80/0000:80:10.0/remove
[  123.935417] pci_bus 0000:84: busn_res: [bus 84] is released
[  123.941115] pci 0000:80:10.0: Removing from iommu group 16
root@(none)$ echo 1 > ./sys/devices/pci0000:bc/0000:bc:00.0/remove
[  129.855959] pci 0000:bd:00.0: Removing from iommu group 11
[  129.863316] pci_bus 0000:bd: busn_res: [bus bd] is released
[  129.869345] pci 0000:bc:00.0: Removing from iommu group 17
root@(none)$ echo 1 > ./sys/devices/pci0000:b4/0000:b4:00.0/remove
[  137.235535] pci_bus 0000:b5: busn_res: [bus b5] is released
[  137.241222] pci 0000:b4:00.0: Removing from iommu group 18
root@(none)$ echo 1 > ./sys/devices/pci0000:74/0000:74:02.0/remove
[  145.984795] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  145.991313] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  145.997853] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  146.004364] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  146.010921] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  146.017455] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  146.023921] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  146.029948] hisi_sas_v3_hw 0000:74:02.0: dev[6:1] is gone
[  146.036768] sd 0:0:3:0: [sdd] Synchronizing SCSI cache
[  146.112158] hisi_sas_v3_hw 0000:74:02.0: dev[5:1] is gone
[  146.118977] sd 0:0:2:0: [sdc] Synchronizing SCSI cache
[  146.124208] sd 0:0:2:0: [sdc] Stopping disk
[  146.660144] hisi_sas_v3_hw 0000:74:02.0: dev[4:5] is gone
[  146.666978] sd 0:0:1:0: [sdb] Synchronizing SCSI cache
[  146.744078] hisi_sas_v3_hw 0000:74:02.0: dev[3:1] is gone
[  146.750762] sd 0:0:0:0: [sda] Synchronizing SCSI cache
[  146.808170] hisi_sas_v3_hw 0000:74:02.0: dev[2:1] is gone
[  146.816723] hisi_sas_v3_hw 0000:74:02.0: dev[1:2] is gone
[  146.887746] pci 0000:74:02.0: Removing from iommu group 19
root@(none)$ echo 1 > ./sys/bus/pci/devices/0000:74:03.0/remove
[  156.443637] pci 0000:74:03.0: Removing from iommu group 20
root@(none)$ echo 1 > ./sys/bus/pci/devices/0000:80:08.0/remove
[  165.199447] pci_bus 0000:82: busn_res: [bus 82] is released
[  165.205166] pci 0000:80:08.0: Removing from iommu group 14

--- All devices removed, so can unload ko ---

root@(none)$ lsmod
     Not tainted
arm_smmu_v3 40960 0 - Live 0xffff800008c60000
root@(none)$ rmmod arm_smmu_v3
root@(none)$ lsmod
     Not tainted

--- Bring it back to life ---

root@(none)$ echo 1 > sys/bus/pci/rescan
[  257.639436] pci 0000:00:00.0: [19e5:a120] type 01 class 0x060400
[  257.645608] pci 0000:00:00.0: PME# supported from D0 D1 D2 D3hot D3cold
[  257.652419] pci 0000:00:04.0: [19e5:a120] type 01 class 0x060400
[  257.658505] pci 0000:00:04.0: PME# supported from D0 D1 D2 D3hot D3cold
[  257.665228] pci 0000:00:08.0: [19e5:a120] type 01 class 0x060400
[  257.671316] pci 0000:00:08.0: PME# supported from D0 D1 D2 D3hot D3cold
[  257.678030] pci 0000:00:0c.0: [19e5:a120] type 01 class 0x060400
[  257.684113] pci 0000:00:0c.0: PME# supported from D0 D1 D2 D3hot D3cold
[  257.690833] pci 0000:00:10.0: [19e5:a120] type 01 class 0x060400
[  257.696915] pci 0000:00:10.0: PME# supported from D0 D1 D2 D3hot D3cold
[  257.703623] pci 0000:00:12.0: [19e5:a120] type 01 class 0x060400
[  257.709704] pci 0000:00:12.0: PME# supported from D0 D1 D2 D3hot D3cold
[  257.716473] pci 0000:01:00.0: [8086:10fb] type 00 class 0x020000
[  257.722489] pci 0000:01:00.0: reg 0x10: [mem 
0x80000000000-0x8000007ffff 64bit pref]
[  257.730224] pci 0000:01:00.0: reg 0x18: [io  0x1000-0x101f]
[  257.735796] pci 0000:01:00.0: reg 0x20: [mem 
0x80000100000-0x80000103fff 64bit pref]
[  257.743531] pci 0000:01:00.0: reg 0x30: [mem 0xfff80000-0xffffffff pref]
[  257.750311] pci 0000:01:00.0: PME# supported from D0 D3hot
[  257.755813] pci 0000:01:00.0: reg 0x184: [mem 
0x80000104000-0x80000107fff 64bit pref]
[  257.763636] pci 0000:01:00.0: VF(n) BAR0 space: [mem 
0x80000104000-0x80000203fff 64bit pref] (contains BAR0 for 64 VFs)
[  257.774416] pci 0000:01:00.0: reg 0x190: [mem 
0x80000204000-0x80000207fff 64bit pref]
[  257.782234] pci 0000:01:00.0: VF(n) BAR3 space: [mem 
0x80000204000-0x80000303fff 64bit pref] (contains BAR3 for 64 VFs)
[  257.793278] pci 0000:01:00.1: [8086:10fb] type 00 class 0x020000
[  257.799293] pci 0000:01:00.1: reg 0x10: [mem 
0x80000080000-0x800000fffff 64bit pref]
[  257.807028] pci 0000:01:00.1: reg 0x18: [io  0x1020-0x103f]
[  257.812600] pci 0000:01:00.1: reg 0x20: [mem 
0x80000304000-0x80000307fff 64bit pref]
[  257.820335] pci 0000:01:00.1: reg 0x30: [mem 0xfff80000-0xffffffff pref]
[  257.827114] pci 0000:01:00.1: PME# supported from D0 D3hot
[  257.832612] pci 0000:01:00.1: reg 0x184: [mem 
0x80000308000-0x8000030bfff 64bit pref]
[  257.840431] pci 0000:01:00.1: VF(n) BAR0 space: [mem 
0x80000308000-0x80000407fff 64bit pref] (contains BAR0 for 64 VFs)
[  257.851211] pci 0000:01:00.1: reg 0x190: [mem 
0x80000408000-0x8000040bfff 64bit pref]
[  257.859030] pci 0000:01:00.1: VF(n) BAR3 space: [mem 
0x80000408000-0x80000507fff 64bit pref] (contains BAR3 for 64 VFs)
[  257.870270] pci 0000:05:00.0: [19e5:1711] type 00 class 0x030000
[  257.876296] pci 0000:05:00.0: reg 0x10: [mem 0xe0000000-0xe1ffffff pref]
[  257.882997] pci 0000:05:00.0: reg 0x14: [mem 0xe2000000-0xe21fffff]
[  257.889436] pci 0000:05:00.0: supports D1
[  257.893435] pci 0000:05:00.0: PME# supported from D0 D1 D3hot
[  257.899282] pci 0000:05:00.0: vgaarb: VGA device added: 
decodes=io+mem,owns=none,locks=none
[  257.907716] pci 0000:00:00.0: bridge window [mem 
0x00100000-0x002fffff 64bit pref] to [bus 01] add_size 400000 add_align 
100000
[  257.919192] pci 0000:00:10.0: BAR 14: assigned [mem 
0xe0000000-0xe2ffffff]
[  257.926056] pci 0000:00:00.0: BAR 14: assigned [mem 
0xe3000000-0xe30fffff]
[  257.932920] pci 0000:00:00.0: BAR 15: assigned [mem 
0x80000000000-0x800005fffff 64bit pref]
[  257.941259] pci 0000:00:00.0: BAR 13: assigned [io  0x1000-0x1fff]
[  257.947438] pci 0000:01:00.0: BAR 0: assigned [mem 
0x80000000000-0x8000007ffff 64bit pref]
[  257.955697] pci 0000:01:00.0: BAR 6: assigned [mem 
0xe3000000-0xe307ffff pref]
[  257.962911] pci 0000:01:00.1: BAR 0: assigned [mem 
0x80000080000-0x800000fffff 64bit pref]
[  257.971168] pci 0000:01:00.1: BAR 6: assigned [mem 
0xe3080000-0xe30fffff pref]
[  257.978378] pci 0000:01:00.0: BAR 4: assigned [mem 
0x80000100000-0x80000103fff 64bit pref]
[  257.986636] pci 0000:01:00.0: BAR 7: assigned [mem 
0x80000104000-0x80000203fff 64bit pref]
[  257.994891] pci 0000:01:00.0: BAR 10: assigned [mem 
0x80000204000-0x80000303fff 64bit pref]
[  258.003232] pci 0000:01:00.1: BAR 4: assigned [mem 
0x80000304000-0x80000307fff 64bit pref]
[  258.011490] pci 0000:01:00.1: BAR 7: assigned [mem 
0x80000308000-0x80000407fff 64bit pref]
[  258.019744] pci 0000:01:00.1: BAR 10: assigned [mem 
0x80000408000-0x80000507fff 64bit pref]
[  258.028085] pci 0000:01:00.0: BAR 2: assigned [io  0x1000-0x101f]
[  258.034169] pci 0000:01:00.1: BAR 2: assigned [io  0x1020-0x103f]
[  258.040254] pci 0000:00:00.0: PCI bridge to [bus 01]
[  258.045208] pci 0000:00:00.0:   bridge window [io  0x1000-0x1fff]
[  258.051291] pci 0000:00:00.0:   bridge window [mem 0xe3000000-0xe30fffff]
[  258.058068] pci 0000:00:00.0:   bridge window [mem 
0x80000000000-0x800005fffff 64bit pref]
[  258.066326] pci 0000:00:04.0: PCI bridge to [bus 02]
[  258.071284] pci 0000:00:08.0: PCI bridge to [bus 03]
[  258.076241] pci 0000:00:0c.0: PCI bridge to [bus 04]
[  258.081199] pci 0000:05:00.0: BAR 0: assigned [mem 
0xe0000000-0xe1ffffff pref]
[  258.088413] pci 0000:05:00.0: BAR 1: assigned [mem 0xe2000000-0xe21fffff]
[  258.095193] pci 0000:00:10.0: PCI bridge to [bus 05]
[  258.100148] pci 0000:00:10.0:   bridge window [mem 0xe0000000-0xe2ffffff]
[  258.106927] pci 0000:00:12.0: PCI bridge to [bus 06]
[  258.112271] pci 0000:7c:00.0: [19e5:a121] type 01 class 0x060400
[  258.118281] pci 0000:7c:00.0: enabling Extended Tags
[  258.123394] pci 0000:7d:00.0: [19e5:a222] type 00 class 0x020000
[  258.129397] pci 0000:7d:00.0: reg 0x10: [mem 0x122000000-0x12200ffff 
64bit pref]
[  258.136784] pci 0000:7d:00.0: reg 0x18: [mem 0x120000000-0x1200fffff 
64bit pref]
[  258.144202] pci 0000:7d:00.0: reg 0x224: [mem 0x122010000-0x12201ffff 
64bit pref]
[  258.151674] pci 0000:7d:00.0: VF(n) BAR0 space: [mem 
0x122010000-0x1220effff 64bit pref] (contains BAR0 for 14 VFs)
[  258.162100] pci 0000:7d:00.0: reg 0x22c: [mem 0x120100000-0x1201fffff 
64bit pref]
[  258.169575] pci 0000:7d:00.0: VF(n) BAR2 space: [mem 
0x120100000-0x120efffff 64bit pref] (contains BAR2 for 14 VFs)
[  258.180089] pci 0000:7d:00.1: [19e5:a222] type 00 class 0x020000
[  258.186091] pci 0000:7d:00.1: reg 0x10: [mem 0x1220f0000-0x1220fffff 
64bit pref]
[  258.193478] pci 0000:7d:00.1: reg 0x18: [mem 0x120f00000-0x120ffffff 
64bit pref]
[  258.200891] pci 0000:7d:00.1: reg 0x224: [mem 0x122100000-0x12210ffff 
64bit pref]
[  258.208362] pci 0000:7d:00.1: VF(n) BAR0 space: [mem 
0x122100000-0x1221dffff 64bit pref] (contains BAR0 for 14 VFs)
[  258.218787] pci 0000:7d:00.1: reg 0x22c: [mem 0x121000000-0x1210fffff 
64bit pref]
[  258.226257] pci 0000:7d:00.1: VF(n) BAR2 space: [mem 
0x121000000-0x121dfffff 64bit pref] (contains BAR2 for 14 VFs)
[  258.236777] pci 0000:7d:00.2: [19e5:a222] type 00 class 0x020000
[  258.242780] pci 0000:7d:00.2: reg 0x10: [mem 0x1221e0000-0x1221effff 
64bit pref]
[  258.250167] pci 0000:7d:00.2: reg 0x18: [mem 0x121e00000-0x121efffff 
64bit pref]
[  258.257638] pci 0000:7d:00.3: [19e5:a221] type 00 class 0x020000
[  258.263644] pci 0000:7d:00.3: reg 0x10: [mem 0x1221f0000-0x1221fffff 
64bit pref]
[  258.271031] pci 0000:7d:00.3: reg 0x18: [mem 0x121f00000-0x121ffffff 
64bit pref]
[  258.278506] pci 0000:7c:00.0: bridge window [mem 
0x00100000-0x005fffff 64bit pref] to [bus 7d] add_size 1d00000 add_align 
100000
[  258.290060] pci 0000:7c:00.0: BAR 15: assigned [mem 
0x120000000-0x1221fffff 64bit pref]
[  258.298062] pci 0000:7d:00.0: BAR 2: assigned [mem 
0x120000000-0x1200fffff 64bit pref]
[  258.305969] pci 0000:7d:00.0: BAR 9: assigned [mem 
0x120100000-0x120efffff 64bit pref]
[  258.313874] pci 0000:7d:00.1: BAR 2: assigned [mem 
0x120f00000-0x120ffffff 64bit pref]
[  258.321781] pci 0000:7d:00.1: BAR 9: assigned [mem 
0x121000000-0x121dfffff 64bit pref]
[  258.329687] pci 0000:7d:00.2: BAR 2: assigned [mem 
0x121e00000-0x121efffff 64bit pref]
[  258.337594] pci 0000:7d:00.3: BAR 2: assigned [mem 
0x121f00000-0x121ffffff 64bit pref]
[  258.345500] pci 0000:7d:00.0: BAR 0: assigned [mem 
0x122000000-0x12200ffff 64bit pref]
[  258.353407] pci 0000:7d:00.0: BAR 7: assigned [mem 
0x122010000-0x1220effff 64bit pref]
[  258.361313] pci 0000:7d:00.1: BAR 0: assigned [mem 
0x1220f0000-0x1220fffff 64bit pref]
[  258.369222] pci 0000:7d:00.1: BAR 7: assigned [mem 
0x122100000-0x1221dffff 64bit pref]
[  258.377128] pci 0000:7d:00.2: BAR 0: assigned [mem 
0x1221e0000-0x1221effff 64bit pref]
[  258.385035] pci 0000:7d:00.3: BAR 0: assigned [mem 
0x1221f0000-0x1221fffff 64bit pref]
[  258.392948] pci 0000:7c:00.0: PCI bridge to [bus 7d]
[  258.397903] pci 0000:7c:00.0:   bridge window [mem 
0x120000000-0x1221fffff 64bit pref]
[  258.405964] pci 0000:74:00.0: [19e5:a121] type 01 class 0x060400
[  258.411974] pci 0000:74:00.0: enabling Extended Tags
[  258.417017] pci 0000:74:02.0: [19e5:a230] type 00 class 0x010700
[  258.423029] pci 0000:74:02.0: reg 0x24: [mem 0xa2000000-0xa2007fff]
[  258.429477] pci 0000:74:03.0: [19e5:a235] type 00 class 0x010601
[  258.435489] pci 0000:74:03.0: reg 0x24: [mem 0xa2008000-0xa2008fff]
[  258.441881] pci 0000:75:00.0: [19e5:a250] type 00 class 0x120000
[  258.447887] pci 0000:75:00.0: reg 0x18: [mem 0x144000000-0x1443fffff 
64bit pref]
[  258.455307] pci 0000:75:00.0: reg 0x22c: [mem 0x144400000-0x14440ffff 
64bit pref]
[  258.462779] pci 0000:75:00.0: VF(n) BAR2 space: [mem 
0x144400000-0x1447effff 64bit pref] (contains BAR2 for 63 VFs)
[  258.473330] pci 0000:74:00.0: bridge window [mem 
0x00400000-0x007fffff 64bit pref] to [bus 75] add_size 400000 add_align 
400000
[  258.484800] pci 0000:74:00.0: BAR 15: assigned [mem 
0x144000000-0x1447fffff 64bit pref]
[  258.492795] pci 0000:74:02.0: BAR 5: assigned [mem 0xa2000000-0xa2007fff]
[  258.499576] pci 0000:74:03.0: BAR 5: assigned [mem 0xa2008000-0xa2008fff]
[  258.506356] pci 0000:75:00.0: BAR 2: assigned [mem 
0x144000000-0x1443fffff 64bit pref]
[  258.514263] pci 0000:75:00.0: BAR 9: assigned [mem 
0x144400000-0x1447effff 64bit pref]
[  258.522169] pci 0000:74:00.0: PCI bridge to [bus 75]
[  258.527124] pci 0000:74:00.0:   bridge window [mem 
0x144000000-0x1447fffff 64bit pref]
[  258.535182] pci 0000:80:00.0: [19e5:a120] type 01 class 0x060400
[  258.541278] pci 0000:80:00.0: PME# supported from D0 D1 D2 D3hot D3cold
[  258.547972] pci 0000:80:08.0: [19e5:a120] type 01 class 0x060400
[  258.554069] pci 0000:80:08.0: PME# supported from D0 D1 D2 D3hot D3cold
[  258.560759] pci 0000:80:0c.0: [19e5:a120] type 01 class 0x060400
[  258.566858] pci 0000:80:0c.0: PME# supported from D0 D1 D2 D3hot D3cold
[  258.573549] pci 0000:80:10.0: [19e5:a120] type 01 class 0x060400
[  258.579644] pci 0000:80:10.0: PME# supported from D0 D1 D2 D3hot D3cold
[  258.586377] pci 0000:81:00.0: [19e5:0123] type 00 class 0x010802
[  258.592387] pci 0000:81:00.0: reg 0x10: [mem 0xf0000000-0xf003ffff 64bit]
[  258.599184] pci 0000:81:00.0: reg 0x30: [mem 0xfffe0000-0xffffffff pref]
[  258.605965] pc[  258.629823] pci 0000:81:00.0: BAR 6: assigned [mem 
0xf0040000-0xf005ffff pref]
[  258.637033] pci 0000:80:00.0: PCI bridge to [bus 81]
[  258.641988] pci 0000:80:00.0:   bridge window [mem 0xf0000000-0xf00fffff]
[  258.648766] pci 0000:80:08.0: PCI bridge to [bus 82]
[  258.653722] pci 0000:80:0c.0: PCI bridge to [bus 83]
[  258.658679] pci 0000:80:10.0: PCI bridge to [bus 84]
[  258.663865] pci 0000:bc:00.0: [19e5:a121] type 01 class 0x060400
[  258.669874] pci 0000:bc:00.0: enabling Extended Tags
[  258.674960] pci 0000:bd:00.0: [19e5:a226] type 00 class 0x020000
[  258.680962] pci 0000:bd:00.0: reg 0x10: [mem 
0x400122000000-0x40012200ffff 64bit pref]
[  258.688869] pci 0000:bd:00.0: reg 0x18: [mem 
0x400120000000-0x4001200fffff 64bit pref]
[  258.696799] pci 0000:bd:00.0: reg 0x224: [mem 
0x400122010000-0x40012201ffff 64bit pref]
[  258.704791] pci 0000:bd:00.0: VF(n) BAR0 space: [mem 
0x400122010000-0x4001221fffff 64bit pref] (contains BAR0 for 31 VFs)
[  258.715736] pci 0000:bd:00.0: reg 0x22c: [mem 
0x400120100000-0x4001201fffff 64bit pref]
[  258.723728] pci 0000:bd:00.0: VF(n) BAR2 space: [mem 
0x400120100000-0x400121ffffff 64bit pref] (contains BAR2 for 31 VFs)
[  258.734762] pci 0000:bc:00.0: bridge window [mem 
0x00100000-0x002fffff 64bit pref] to [bus bd] add_size 2000000 add_align 
100000
[  258.746317] pci 0000:bc:00.0: BAR 15: assigned [mem 
0x400120000000-0x4001221fffff 64bit pref]
[  258.754831] pci 0000:bd:00.0: BAR 2: assigned [mem 
0x400120000000-0x4001200fffff 64bit pref]
[  258.763258] pci 0000:bd:00.0: BAR 9: assigned [mem 
0x400120100000-0x400121ffffff 64bit pref]
[  258.771688] pci 0000:bd:00.0: BAR 0: assigned [mem 
0x400122000000-0x40012200ffff 64bit pref]
[  258.780115] pci 0000:bd:00.0: BAR 7: assigned [mem 
0x400122010000-0x4001221fffff 64bit pref]
[  258.788542] pci 0000:bc:00.0: PCI bridge to [bus bd]
[  258.793497] pci 0000:bc:00.0:   bridge window [mem 
0x400120000000-0x4001221fffff 64bit pref]
[  258.801992] pci 0000:b4:00.0: [19e5:a121] type 01 class 0x060400
[  258.807998] pci 0000:b4:00.0: enabling Extended Tags
[  258.813076] pci 0000:b5:00.0: [19e5:a250] type 00 class 0x120000
[  258.819080] pci 0000:b5:00.0: reg 0x18: [mem 
0x400144000000-0x4001443fffff 64bit pref]
[  258.827012] pci 0000:b5:00.0: reg 0x22c: [mem 
0x400144400000-0x40014440ffff 64bit pref]
[  258.835003] pci 0000:b5:00.0: VF(n) BAR2 space: [mem 
0x400144400000-0x4001447effff 64bit pref] (contains BAR2 for 63 VFs)
[  258.846053] pci 0000:b4:00.0: bridge window [mem 
0x00400000-0x007fffff 64bit pref] to [bus b5] add_size 400000 add_align 
400000
[  258.857521] pci 0000:b4:00.0: BAR 15: assigned [mem 
0x400144000000-0x4001447fffff 64bit pref]
[  258.866034] pci 0000:b5:00.0: BAR 2: assigned [mem 
0x400144000000-0x4001443fffff 64bit pref]
[  258.874466] pci 0000:b5:00.0: BAR 9: assigned [mem 
0x400144400000-0x4001447effff 64bit pref]

--- Insert ko again ---

root@(none)$ !1
insmod lib/modules/arm-smmu-v3.ko
[  282.751387] arm-smmu-v3 arm-smmu-v3.0.auto: option mask 0x0
[  282.756992] arm-smmu-v3 arm-smmu-v3.0.auto: IRQ combined not found
[  282.763163] arm-smmu-v3 arm-smmu-v3.0.auto: IRQ eventq not found
[  282.769161] arm-smmu-v3 arm-smmu-v3.0.auto: IRQ priq not found
[  282.774986] arm-smmu-v3 arm-smmu-v3.0.auto: IRQ gerror not found
[  282.780989] arm-smmu-v3 arm-smmu-v3.0.auto: ias 48-bit, oas 48-bit 
(features 0x00000fef)
[  282.789378] arm-smmu-v3 arm-smmu-v3.0.auto: allocated 65536 entries 
for cmdq
[  282.796648] arm-smmu-v3 arm-smmu-v3.0.auto: allocated 32768 entries 
for evtq
[  282.804513] pcieport 0000:00:00.0: Adding to iommu group 0
[  282.807369] arm-smmu-v3 arm-smmu-v3.1.auto: option mask 0x0
[  282.812284] pcieport 0000:00:04.0: Adding to iommu group 1
[  282.815609] arm-smmu-v3 arm-smmu-v3.1.auto: IRQ combined not found
[  282.823242] pcieport 0000:00:08.0: Adding to iommu group 2
[  282.827210] arm-smmu-v3 arm-smmu-v3.1.auto: IRQ eventq not found
[  282.827212] arm-smmu-v3 arm-smmu-v3.1.auto: IRQ priq not found
[  282.827213] arm-smmu-v3 arm-smmu-v3.1.auto: IRQ gerror not found
[  282.827216] arm-smmu-v3 arm-smmu-v3.1.auto: ias 48-bit, oas 48-bit 
(features 0x00000fef)
[  282.827364] arm-smmu-v3 arm-smmu-v3.1.auto: allocated 65536 entries 
for cmdq
[  282.834808] pcieport 0000:00:0c.0: Adding to iommu group 3
[  282.838981] arm-smmu-v3 arm-smmu-v3.1.auto: allocated 32768 entries 
for evtq
[  282.846646] pcieport 0000:00:10.0: Adding to iommu group 4
[  282.850726] arm-smmu-v3 arm-smmu-v3.2.auto: option mask 0x0
[  282.860722] pcieport 0000:00:12.0: Adding to iommu group 5
[  282.865657] arm-smmu-v3 arm-smmu-v3.2.auto: IRQ combined not found
[  282.873349] pcieport 0000:7c:00.0: Adding to iommu group 6
[  282.878160] arm-smmu-v3 arm-smmu-v3.2.auto: IRQ eventq not found
[  282.878162] arm-smmu-v3 arm-smmu-v3.2.auto: IRQ priq not found
[  282.878163] arm-smmu-v3 arm-smmu-v3.2.auto: IRQ gerror not found
[  282.878166] arm-smmu-v3 arm-smmu-v3.2.auto: ias 48-bit, oas 48-bit 
(features 0x00000fef)
[  282.878290] arm-smmu-v3 arm-smmu-v3.2.auto: allocated 65536 entries 
for cmdq
[  282.885133] hns3 0000:7d:00.0: Adding to iommu group 7
[  282.889379] arm-smmu-v3 arm-smmu-v3.2.auto: allocated 32768 entries 
for evtq
[  282.895943] hns3 0000:7d:00.0: The firmware version is 176.98.1.48
[  282.901035] arm-smmu-v3 arm-smmu-v3.3.auto: option mask 0x0
[  282.910767] hns3 0000:7d:00.0: Firmware compatible features not 
enabled(-95).
[  282.912348] arm-smmu-v3 arm-smmu-v3.3.auto: IRQ combined not found
[  282.976427] arm-smmu-v3 arm-smmu-v3.3.auto: IRQ eventq not found
[  282.982421] arm-smmu-v3 arm-smmu-v3.3.auto: IRQ priq not found
[  282.988241] arm-smmu-v3 arm-smmu-v3.3.auto: IRQ gerror not found
[  282.994236] arm-smmu-v3 arm-smmu-v3.3.auto: ias 48-bit, oas 48-bit 
(features 0x00000fef)
[  283.002437] arm-smmu-v3 arm-smmu-v3.3.auto: allocated 65536 entries 
for cmdq
[  283.009756] arm-smmu-v3 arm-smmu-v3.3.auto: allocated 32768 entries 
for evtq
[  283.016982] arm-smmu-v3 arm-smmu-v3.4.auto: option mask 0x0
[  283.022559] arm-smmu-v3 arm-smmu-v3.4.auto: IRQ combined not found
[  283.028728] arm-smmu-v3 arm-smmu-v3.4.auto: IRQ eventq not found
[  283.034722] arm-smmu-v3 arm-smmu-v3.4.auto: IRQ priq not found
[  283.040542] arm-smmu-v3 arm-smmu-v3.4.auto: IRQ gerror not found
[  283.046537] arm-smmu-v3 arm-smmu-v3.4.auto: ias 48-bit, oas 48-bit 
(features 0x00000fef)
[  283.054732] arm-smmu-v3 arm-smmu-v3.4.auto: allocated 65536 entries 
for cmdq
[  283.061936] arm-smmu-v3 arm-smmu-v3.4.auto: allocated 32768 entries 
for evtq
[  283.069129] arm-smmu-v3 arm-smmu-v3.5.auto: option mask 0x0
[  283.074703] arm-smmu-v3 arm-smmu-v3.5.auto: IRQ combined not found
[  283.080871] arm-smmu-v3 arm-smmu-v3.5.auto: IRQ eventq not found
[  283.086867] arm-smmu-v3 arm-smmu-v3.5.auto: IRQ priq not found
[  283.092687] arm-smmu-v3 arm-smmu-v3.5.auto: IRQ gerror not found
[  283.098682] arm-smmu-v3 arm-smmu-v3.5.auto: ias 48-bit, oas 48-bit 
(features 0x00000fef)
[  283.106878] arm-smmu-v3 arm-smmu-v3.5.auto: allocated 65536 entries 
for cmdq
[  283.114191] arm-smmu-v3 arm-smmu-v3.5.auto: allocated 32768 entries 
for evtq
root@(none)$ [  284.294657] hns3 0000:7d:00.0: hclge driver 
initialization finished.
[  284.326277] hns3 0000:7d:00.1: Adding to iommu group 8
[  284.332691] hns3 0000:7d:00.1: The firmware version is 176.98.1.48
[  284.343297] hns3 0000:7d:00.1: Firmware compatible features not 
enabled(-95).
[  285.706654] hns3 0000:7d:00.1: hclge driver initialization finished.
[  285.737930] hns3 0000:7d:00.2: Adding to iommu group 9
[  285.744325] hns3 0000:7d:00.2: The firmware version is 176.98.1.48
[  285.754931] hns3 0000:7d:00.2: Firmware compatible features not 
enabled(-95).
[  285.765990] libphy: hisilicon MII bus: probed
[  285.835882] hns3 0000:7d:00.2: hclge driver initialization finished.
[  285.848083] Generic PHY mii-0000:7d:00.2:00: attached PHY driver 
[Generic PHY] (mii_bus:phy_addr=mii-0000:7d:00.2:00, irq=POLL)
[  285.860042] hns3 0000:7d:00.3: Adding to iommu group 10
[  285.866529] hns3 0000:7d:00.3: The firmware version is 176.98.1.48
[  285.877130] hns3 0000:7d:00.3: Firmware compatible features not 
enabled(-95).
[  285.886386] libphy: hisilicon MII bus: probed
[  285.955696] hns3 0000:7d:00.3: hclge driver initialization finished.
[  285.967919] Generic PHY mii-0000:7d:00.3:01: attached PHY driver 
[Generic PHY] (mii_bus:phy_addr=mii-0000:7d:00.3:01, irq=POLL)
[  285.979982] pcieport 0000:74:00.0: Adding to iommu group 11
[  285.986863] hisi_sas_v3_hw 0000:74:02.0: Adding to iommu group 12
[  286.008195] scsi host0: hisi_sas_v3_hw
[  287.298893] hisi_sas_v3_hw 0000:74:02.0: phyup: phy2 link_rate=11
[  287.304978] hisi_sas_v3_hw 0000:74:02.0: phyup: phy0 link_rate=11
[  287.311061] hisi_sas_v3_hw 0000:74:02.0: phyup: phy1 link_rate=11
[  287.311066] hisi_sas_v3_hw 0000:74:02.0: phyup: phy3 link_rate=11
[  287.323224] hisi_sas_v3_hw 0000:74:02.0: phyup: phy4 link_rate=11
[  287.323230] hisi_sas_v3_hw 0000:74:02.0: phyup: phy5 link_rate=11
[  287.323235] hisi_sas_v3_hw 0000:74:02.0: phyup: phy6 link_rate=11
[  287.323268] hisi_sas_v3_hw 0000:74:02.0: phyup: phy7 link_rate=11
[  287.329634] hisi_sas_v3_hw 0000:74:02.0: dev[1:2] found
[  287.356200] hisi_sas_v3_hw 0000:74:02.0: dev[2:1] found
[  287.361593] hisi_sas_v3_hw 0000:74:02.0: dev[3:1] found
[  287.367180] hisi_sas_v3_hw 0000:74:02.0: dev[4:5] found
[  287.532058] hisi_sas_v3_hw 0000:74:02.0: dev[5:1] found
[  287.537456] hisi_sas_v3_hw 0000:74:02.0: dev[6:1] found
[  287.542868] sas: Enter sas_scsi_recover_host busy: 0 failed: 0
[  289.729042] ata4.00: ATA-8: SAMSUNG HM320JI, 2SS00_01, max UDMA7
[  289.735039] ata4.00: 625142448 sectors, multi 0: LBA48 NCQ (depth 32)
[  289.747065] ata4.00: configured for UDMA/133
[  289.751338] sas: --- Exit sas_scsi_recover_host: busy: 0 failed: 0 
tries: 1
[  289.762761] scsi 0:0:0:0: Direct-Access     SEAGATE  ST2000NM0045 
N004 PQ: 0 ANSI: 6
[  289.774757] scsi 0:0:1:0: Direct-Access     SEAGATE  ST2000NM0045 
N004 PQ: 0 ANSI: 6
[  289.775005] sd 0:0:0:0: [sda] 3907029168 512-byte logical blocks: 
(2.00 TB/1.82 TiB)
[  289.785688] scsi 0:0:2:0: Direct-Access     ATA      SAMSUNG HM320JI 
0_01 PQ: 0 ANSI: 5
[  289.786940] sd 0:0:1:0: [sdb] 3907029168 512-byte logical blocks: 
(2.00 TB/1.82 TiB)
[  289.787612] sd 0:0:1:0: [sdb] Write Protect is off
[  289.788816] sd 0:0:1:0: [sdb] Write cache: enabled, read cache: 
enabled, supports DPO and FUA
[  289.791242] sd 0:0:0:0: [sda] Write Protect is off
[  289.799026] sd 0:0:2:0: [sdc] 625142448 512-byte logical blocks: (320 
GB/298 GiB)
[  289.799865] scsi 0:0:3:0: Direct-Access     SEAGATE  ST1000NM0023 
0006 PQ: 0 ANSI: 6
[  289.807642] sd 0:0:0:0: [sda] Write cache: enabled, read cache: 
enabled, supports DPO and FUA
[  289.811219] sd 0:0:2:0: [sdc] Write Protect is off
[  289.828112]  sdb: sdb1
[  289.831969] sd 0:0:2:0: [sdc] Write cache: enabled, read cache: 
enabled, doesn't support DPO or FUA
[  289.832627] scsi 0:0:4:0: Enclosure         HUAWEI   Expander 12Gx16 
128  PQ: 0 ANSI: 6
[  289.832952] sd 0:0:3:0: [sdd] 1953525168 512-byte logical blocks: 
(1.00 TB/932 GiB)
[  289.833296] sd 0:0:3:0: [sdd] Write Protect is off
[  289.833942] sd 0:0:3:0: [sdd] Write cache: enabled, read cache: 
enabled, supports DPO and FUA
[  289.834261] sas: ex 500e004aaaaaaa1f phy08 change count has changed
[  289.837361] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  289.838882] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  289.840403] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  289.845988] sd 0:0:1:0: [sdb] Attached SCSI disk
[  289.922155] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  289.929063] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  289.935167]  sdd: sdd1 sdd2
[  289.936001] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  289.937042]  sda: sda1
[  289.942356] sd 0:0:3:0: [sdd] Attached SCSI disk
[  289.943134] sd 0:0:0:0: [sda] Attached SCSI disk
[  289.956420] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  289.963228] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  289.970139] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  289.977068] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  289.983892] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  289.990796] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  289.997676] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  290.004530] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  290.011413] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  290.018326] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  290.025153] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  290.032032] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  290.038952] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  290.045032] random: crng init done
[  290.049356] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  290.056228] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  290.063116] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  290.070028] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  290.076864] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  290.083766] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  290.090642] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  290.097469] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  290.104334] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  290.111231] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  290.118077] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  290.124972] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  290.131892] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  290.138701] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  290.145628] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  290.152511] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  290.159352] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  290.166244] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  290.173134] sas: ex 500e004aaaaaaa1f phys DID NOT change
[  290.178616] ahci 0000:74:03.0: Adding to iommu group 13
[  290.185204] ahci 0000:74:03.0: SSS flag set, parallel bus scan disabled
[  290.191824] ahci 0000:74:03.0: AHCI 0001.0300 32 slots 2 ports 6 Gbps 
0x3 impl SATA mode
[  290.199903] ahci 0000:74:03.0: flags: 64bit ncq sntf stag pm led clo 
only pmp fbs slum part ccc sxs boh
[  290.209768] scsi host1: ahci
[  290.212787] scsi host2: ahci
[  290.215729] ata5: SATA max UDMA/133 abar m4096@...2008000 port 
0xa2008100 irq 660
[  290.223201] ata6: SATA max UDMA/133 abar m4096@...2008000 port 
0xa2008180 irq 661
[  290.230933] pcieport 0000:80:00.0: Adding to iommu group 14
[  290.239292] pcieport 0000:80:08.0: Adding to iommu group 15
[  290.247396] pcieport 0000:80:0c.0: Adding to iommu group 16
[  290.255453] pcieport 0000:80:10.0: Adding to iommu group 17
[  290.263638] pcieport 0000:bc:00.0: Adding to iommu group 18
[  290.270632] hns3 0000:bd:00.0: Adding to iommu group 19
[  290.277182] hns3 0000:bd:00.0: The firmware version is 176.98.1.48
[  290.287847] hns3 0000:bd:00.0: Firmware compatible features not 
enabled(-95).
[  290.545421] ata5: SATA link down (SStatus 0 SControl 300)
[  291.699895] hns3 0000:bd:00.0: hclge driver initialization finished.
[  291.736307] pcieport 0000:b4:00.0: Adding to iommu group 20
[  292.155588]  sdc: sdc1 sdc2 sdc3
[  292.160569] sd 0:0:2:0: [sdc] Attached SCSI disk
[  292.477420] ata6: SATA link down (SStatus 0 SControl 300)


John

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ