2

Моя система откажется от загрузки, когда я включил аппаратный IOMMU и в дисковод вставлен диск. Ядро будет просто зацикливать сообщения об ошибках, начиная с AMD-Vi: Event logged [IO_PAGE_FAULT device=...]

Кажется, единственное решение - вообще не использовать оптический привод или загружаться с параметром ядра iommu=soft .

К сожалению, я не смог выяснить, что именно делает этот параметр. На kernel.org есть документация, которая включает в себя все параметры IOMMU, но на самом деле она не объясняет изменений в функциональности: https://www.kernel.org/doc/Documentation/x86/x86_64/boot-options.txt

Насколько я понимаю, iommu = soft обходит аппаратный IOMMU или отключает его и использует программную реализацию. Это верно? Должен ли я отключить аппаратный IOMMU в BIOS или оставить его включенным? Есть ли другие варианты в этом случае, возможно?

1 ответ1

-1

Здесь я нахожу более простое, но простое объяснение:https://wiki.gentoo.org/wiki/IOMMU_SWIOTLB Как сказано в статье:SWIOTLB обходит IOMMU и обеспечивает гораздо более настраиваемый интерфейс управления памятью. Не вдаваясь в глубокую сложность того, как это работает, таблицы страниц кэшируются в Lookaside Buffer, уменьшая необходимость постоянного доступа к физической памяти для отображения памяти. Эта технология также называется буфером отказов, так как физический адрес карты памяти хранится в этом виртуальном пространстве, и этот виртуальный резервный буфер перераспределяет IO между физическим IO и физической памятью.

Это позволяет быстро выполнять отображение памяти и иметь физическое пространство памяти, доступное для использования, гораздо быстрее, чем если бы оно было физически создано в ОЗУ и представлено системе как пригодное для использования.

Надеюсь это будет полезно

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .