** Changed in: linux (Ubuntu Focal)
Status: In Progress => Fix Committed
** Changed in: linux (Ubuntu)
Status: Incomplete => Invalid
--
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux in Ubuntu.
https://bugs.launchpad.net/bugs/1922738
Title:
5.4 kernel: when iommu is on crashdump fails
Status in linux package in Ubuntu:
Invalid
Status in linux source package in Focal:
Fix Committed
Bug description:
[IMPACT]
When iommu is enabled crashdump fails to be collected because crash-kernel
crashes
with following trace [1].
Commits that address it :
1ddb32da4a62 iommu/vt-d: Simplify check in identity_mapping()
96d170f3b1a6 iommu/vt-d: Remove deferred_attach_domain()
a11bfde9c77d iommu/vt-d: Do deferred attachment in iommu_need_mapping()
034d98cc0cdc iommu/vt-d: Move deferred device attachment into helper function
1d4615978f52 iommu/vt-d: Add attach_deferred() helper
1ee0186b9a12 iommu/vt-d: Refactor find_domain() helper
[TEST CASE]
Install a 5.4 kernel, add intel_iommu=on and iommu=pt to grub cmdline
and trigger a crash.
The crash kernel that boots will crash with trace [1].
[REGRESSION POTENTIAL]
1) 1ee0186b9a12 iommu/vt-d: Refactor find_domain() helper
Refactors find_domain() into two helpers: 1) find_domain()
only returns the domain in use; 2) deferred_attach_domain() does
the deferred domain attachment if required and return the domain
in use.
2) 1d4615978f52 iommu/vt-d: Add attach_deferred() helper
Add helper function to check if a device's attach process is deffered.
Before this commit, this check was done with "dev->archdata.iommu ==
DEFER_DEVICE_DOMAIN_INFO".
This commit wraps it into a function.
Fixes (1).
3) 034d98cc0cdc iommu/vt-d: Move deferred device attachment into helper
function
Takes the code that does the deffered attachment from
deferred_attach_domain() function
and places it in new do_deferred_attach() function.
Fixes (1).
4) a11bfde9c77d iommu/vt-d: Do deferred attachment in iommu_need_mapping()
This one actually fixes the bug.
Attachement of devive needs to happen before checking if device is identity
mapped.
Fixes (1).
5) 96d170f3b1a6 iommu/vt-d: Remove deferred_attach_domain()
Code cleanup, removes deferred_attach_domain() which now is just a wrapper
around
find_domain and calls directly find_domain from caller sites.
Fixes (1).
6) 1ddb32da4a62 iommu/vt-d: Simplify check in identity_mapping()
Code cleanup.
Fixes (1).
Commits 2,3,5, and 6 are code movements/cleanups so little regression
potential.
Commit 1 is the intial code refactroring ( the rest of commits fix it) and
commit
3 fixes the bug.
So far testing has not revealed any regression. Any possible regression will
regard
device deffered attachment.
[OTHER]
Kernel affected 5.4.
[1] https://pastebin.ubuntu.com/p/FNxTxjg3DV/
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1922738/+subscriptions
--
Mailing list: https://launchpad.net/~kernel-packages
Post to : [email protected]
Unsubscribe : https://launchpad.net/~kernel-packages
More help : https://help.launchpad.net/ListHelp