mirror of https://gitee.com/openkylin/linux.git
dcc3c9e37f
Recent systems with Thunderbolt ports may support IOMMU natively. In practice this means that Thunderbolt connected devices are placed behind an IOMMU during the whole time it is connected (including during boot) making Thunderbolt security levels redundant. This is called Kernel DMA protection [1] by Microsoft. Some of these systems still have Thunderbolt security level set to "user" in order to support OS downgrade (the older version of the OS might not support IOMMU based DMA protection so connecting a device still relies on user approval). Export this information to userspace by introducing a new sysfs attribute (iommu_dma_protection). Based on it userspace tools can make more accurate decision whether or not authorize the connected device. In addition update Thunderbolt documentation regarding IOMMU based DMA protection. [1] https://docs.microsoft.com/en-us/windows/security/information-protection/kernel-dma-protection-for-thunderbolt Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com> Reviewed-by: Yehezkel Bernat <YehezkelShB@gmail.com> |
||
---|---|---|
.. | ||
Kconfig | ||
Makefile | ||
cap.c | ||
ctl.c | ||
ctl.h | ||
dma_port.c | ||
dma_port.h | ||
domain.c | ||
eeprom.c | ||
icm.c | ||
nhi.c | ||
nhi.h | ||
nhi_regs.h | ||
path.c | ||
property.c | ||
switch.c | ||
tb.c | ||
tb.h | ||
tb_msgs.h | ||
tb_regs.h | ||
tunnel_pci.c | ||
tunnel_pci.h | ||
xdomain.c |