** Description changed: [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/
-- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1922738 Title: 5.4 kernel: when iommu is on crashdump fails To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1922738/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
