Bug 237357

Summary: Not resuming from suspend with IOMMU DMAR enabled
Product: Base System Reporter: Val Packett <val>
Component: kernAssignee: freebsd-bugs (Nobody) <bugs>
Status: New ---    
Severity: Affects Only Me    
Priority: ---    
Version: CURRENT   
Hardware: Any   
OS: Any   

Description Val Packett 2019-04-18 08:01:11 UTC
With hw.dmar.enable=1, this Haswell laptop doesn't wake up from S3, similar symptoms to what it was doing when the TPM was enabled: no reaction to lid open / power button press, power LED keeps blinking.
Comment 1 Val Packett 2019-10-03 22:45:06 UTC
Same on a Kaby Lake laptop, I guess the dmar driver just doesn't handle suspend-resume correctly.
Comment 2 Val Packett 2019-10-05 14:28:00 UTC
Actually, I recall vmm.ko also breaking suspend.

The only suspend method I see in sys/amd64/vmm is in AMD ivrs_drv.c.

sys/x86/iommu/intel_drv.c has suspend/resume methods but they're blank. That explains things.
Comment 3 Val Packett 2019-12-29 17:48:16 UTC
( WIP code at https://reviews.freebsd.org/D22642 )