hibmc driver does not include "pci:" prefix in bus ID
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
linux (Ubuntu) |
Incomplete
|
Undecided
|
Daniel Axtens | ||
Zesty |
Fix Released
|
Medium
|
Daniel Axtens | ||
Artful |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
SRU Justification
[Impact]
On the HiSilicon D05 (arm64) board, X crashes when started. [0]
[Fix]
The crash is attributable to the bus ID that the hibmc driver reports for the hibmc graphics card on the board. In particular, the bus id is missing the "pci:" prefix that most other cards provide: [1]
- The busid reported on the arm64 system is "0007:a1:00.0"
- The busid reported on a amd64 system is "pci:0000:00:02.0"
X tests for this prefix. A missing prefix for PCI cards leads to an Xorg crash.
Fix this by using the set_pci_busid function from the DRM core.
[Testcase]
Successfully tested on a D05 board. [2]
[Regression Potential]
Changes are limited to the hibmc driver, so any regression should also be limited to that driver.
[Notes]
I submitted the patch upstream. However, upstream is refactoring the drm core, and set_busid is going away. That does fix this issue but the regression potential of the refactor is enormous, so this seems like the wiser approach. [3]
[0]: https:/
[1]: https:/
[2]: https:/
[3]: https:/
CVE References
tags: | added: patch |
tags: | added: kernel-da-key |
description: | updated |
Changed in linux (Ubuntu Zesty): | |
assignee: | nobody → Daniel Axtens (daxtens) |
Changed in linux (Ubuntu): | |
status: | In Progress → Fix Committed |
Changed in linux (Ubuntu Zesty): | |
importance: | Undecided → Medium |
status: | New → Fix Committed |
description: | updated |
no longer affects: | linux |
tags: | removed: kernel-da-key |
It looks like this will be rendered unnecessary by upcoming changes to the DRM core: http:// www.spinics. net/lists/ dri-devel/ msg143831. html
The patch will still be needed for kernels that have already been released. I will proceed with this process.