Dear all, I would like to report the following possible bug in KVM or the kernel (in fact, I am still unsure which would be the right mailing list for this, so please bear with me): I wanted to pass through a SATA controller (on a PCIe SATA adapter card) into a virtual machine with KVM acceleration. As the first step necessary to to so, I have set the kernel parameter intel_iommu=on. When observing the following boot process, I noticed that the AHCI / SATA driver could not handle the SATA controller in question correctly any more. The boot messages said that the link speed would be reduced to 1.5 Gb/s, and it hung for a longer time (30 seconds or so) when trying to initialize that controller until giving up. This happened whether or not HDDs were connected to that controller. Additionally, if HDDs were connected to the controller, the boot messages said that the HDDs could not be identified. Consequently, the respective block devices were missing later. Apart from that, no crashes did occur, and the system seemed to work normally after having booted. I did not do thorough tests in that situation, though. In any case, the SATA controller on the mainboard and the HDDs connected to it were initialized correctly. After having removed the kernel parameter, the boot process went normally again; notably, the SATA controller in question and the HDDs connected to it were initialized correctly. I have verified that behavior at least 10 times on different days with physically turning off the machine between reboots as well as doing just warm reboots. This happened with kernel 4.8 as well as 4.9. I should not keep secret that this is a Debian system (Debian stretch). I strongly doubt that the problem is related to Debian kernel patches, though. I did not change the kernel configuration or apply any patches on my own. In every case, no other kernel parameters had been set. Hardware: Dual Xeon 5620 on Tylersburg (5520) platform Supermicro X8DTi-F (integrated Intel SATA controller) 72 GB RAM Additional SATA controller in question: Startech PEXSAT32 (Marvell 88SE9128 Chipset) I am interested in helping to debug this issue (if it actually is an issue). This is a production server. I can reboot the machine, and I can run tools for diagnosing. I cannot play around with newer kernel versions. If you would like me to help in debugging, please give me appropriate instructions. In general, I know how to write code, and I know how to operate debuggers. But unfortunately, I have only little experience in the Linux debugging world (strace & friends), so I think the instructions should be detailed to a certain degree ... Please note that I have observed more oddities. I will describe them in two more messages following this one. I think that the other two problems are related to this one. Thank you very much, Binarus