Fix several bugs in RDMA/hns driver
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
linux (Ubuntu) |
Fix Released
|
Undecided
|
dann frazier | ||
Bionic |
Fix Released
|
Undecided
|
dann frazier |
Bug Description
[Impact]
Several issues and features in the RDMA/hns driver for HiSilicon network adapters have recently landed upstream. This includes fixes for crashes and endianness issues, among others.
[Test Case]
Server side:
ubuntu@d06-1:~$ ib_write_bw -n 5 -d hns_2
*******
* Waiting for client to connect... *
*******
hr_qp->port_num= 0x1
-------
Dual-port : OFF Device : hns_2
Number of qps : 1 Transport type : IB
Connection type : RC Using SRQ : OFF
CQ Moderation : 5
Mtu : 1024[B]
Link type : Ethernet
GID index : 2
Max inline data : 0[B]
rdma_cm QPs : OFF
Data ex. method : Ethernet
-------
local address: LID 0000 QPN 0x000c PSN 0x368fa8 RKey 0x000200 VAddr 0x00ffffbe390000
GID: 00:00:00:
remote address: LID 0000 QPN 0x000c PSN 0x19f3aa RKey 0x000200 VAddr 0x00ffff83380000
GID: 00:00:00:
-------
#bytes #iterations BW peak[MB/sec] BW average[MB/sec] MsgRate[Mpps]
65536 5 108.08 108.08 0.001729
-------
Client side:
ubuntu@d06-2:~$ ib_write_bw -n 5 -d hns_2 10.228.68.237
hr_qp->port_num= 0x1
-------
Dual-port : OFF Device : hns_2
Number of qps : 1 Transport type : IB
Connection type : RC Using SRQ : OFF
TX depth : 5
CQ Moderation : 5
Mtu : 1024[B]
Link type : Ethernet
GID index : 2
Max inline data : 0[B]
rdma_cm QPs : OFF
Data ex. method : Ethernet
-------
local address: LID 0000 QPN 0x000c PSN 0x19f3aa RKey 0x000200 VAddr 0x00ffff83380000
GID: 00:00:00:
remote address: LID 0000 QPN 0x000c PSN 0x368fa8 RKey 0x000200 VAddr 0x00ffffbe390000
GID: 00:00:00:
-------
#bytes #iterations BW peak[MB/sec] BW average[MB/sec] MsgRate[Mpps]
65536 5 108.08 108.08 0.001729
-------
[Regression Risk]
TLDR; this driver isn't usable today, so changes to it carry negligible regression risk.
These patches are localized to the hns/RDMA driver. This driver is for hardware in the hip07/hip08 SoCs, which Ubuntu supports in the D05 and D06 servers respectively. D05 firmware has intentionally disabled this feature by not exposing the ACPI ID for it. The driver therefore doesn't find the device on that platform, so there is no regression risk.
D06 *does* enable this device in firmware. However, the current bionic kernel crashes when loading the base ethernet driver (hns3 - LP: #1768670) on this platform, so this feature is also currently unusable there.
CVE References
Changed in linux (Ubuntu): | |
status: | New → In Progress |
Changed in linux (Ubuntu Bionic): | |
status: | New → In Progress |
Changed in linux (Ubuntu): | |
assignee: | nobody → dann frazier (dannf) |
Changed in linux (Ubuntu Bionic): | |
assignee: | nobody → dann frazier (dannf) |
description: | updated |
Changed in linux (Ubuntu Bionic): | |
status: | In Progress → Fix Committed |
This bug is awaiting verification that the kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification- needed- bionic' to 'verification- done-bionic' . If the problem still exists, change the tag 'verification- needed- bionic' to 'verification- failed- bionic' .
If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.
See https:/ /wiki.ubuntu. com/Testing/ EnableProposed for documentation how to enable and use -proposed. Thank you!