Из-за возможности атак DMA со стороны подключённых устройств Thunderbolt в Linux и других платформах на протяжении многих лет создавались средства защиты и различные уровни безопасности для Thunderbolt, чтобы лучше защищать системы с этим высокоскоростным интерфейсом, предоставляющим доступ к PCIe. В грядущем ядре Linux 6.13 логика ядра будет усовершенствована для более эффективного обнаружения и проверки встроенных контроллеров Thunderbolt.
Эстер Шиманович из Google подготовила патч для обнаружения и проверки встроенных чипов Thunderbolt. Эстер объясняет, что патч был добавлен в ветку «thunderbolt» подсистемы PCI перед окном слияния Linux 6.13:
Некоторые компьютеры с процессорами, в которых отсутствуют функции Thunderbolt, используют дискретные чипы Thunderbolt для добавления функций Thunderbolt. Эти чипы Thunderbolt расположены внутри корпуса между корневым портом с маркировкой ExternalFacingPort и портом USB-C.
Эти устройства Thunderbolt PCIe должны быть помечены как фиксированные и доверенные, поскольку они встроены в компьютер. В противном случае политики безопасности, основанные на этих флагах, могут привести к непредвиденным результатам, например к невозможности перечисления портов USB-C.
Обнаружьте вышеупомянутый сценарий с помощью процесса устранения.
1) Интегрированные контроллеры хоста Thunderbolt уже поддерживают Thunderbolt, поэтому всё, что находится за пределами их внешнего корневого порта, является съёмным и ненадёжным.
Обнаруживайте их, используя следующие свойства:
2) Если корневой порт не имеет встроенных возможностей Thunderbolt, но имеет свойство ACPI «ExternalFacingPort», это означает, что производитель решил использовать отдельный хост-контроллер Thunderbolt, встроенный в компьютер.
Этот хост-контроллер можно идентифицировать по тому, что он расположен непосредственно под внешним корневым портом, в котором отсутствует встроенный Thunderbolt. Пометьте его как доверенный и исправный.
Все, что ниже по потоку, является ненадежным и удаляемым.
Таким образом, это изменение, ожидаемое в Linux 6.13, должно решить проблему, из-за которой порты USB-C/Thunderbolt иногда не распознаются в Linux.
Окно слияния Linux 6.13 откроется в конце этого месяца, а стабильное ядро Linux 6.13 дебютирует в феврале.