Kicksecure / security-misc

Kernel Hardening; Protect Linux User Accounts against Brute Force Attacks; Improve Entropy Collection; Strong Linux User Account Separation; Enhances Misc Security Settings - https://www.kicksecure.com/wiki/Security-misc

Home Page:https://www.kicksecure.com/wiki/Impressum

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Force IOMMU

TommyTran732 opened this issue · comments

I noticed that IOMMU settings right now is on instead of forced_isolation on AMD. Is there a reason why we are not forcing it? I don't see the on option for AMD CPUs documented anywhere.

You are right. Created #176 for this.

@adrelanos could you check the request? The current option that is set seems to be completely invalid.

I hope you can help me understand what is going here because I am very confused.

amd_iommu=forced_isolation -> Force device isolation for all devices. The IOMMU driver is not allowed anymore to lift isolation requirements as needed.

intel_iommu=on -> Enable intel iommu driver.

These don't sound like they are equivalent. One is actually forcing the isolation, the other one is just "enabled". What is the option to force this on Intel? Is it iommu=force?

If so, is the iommu=force relevant for AMD CPUs at all?

Thanks for the report!

I hope you can help me understand what is going here because I am very confused.

These settings are documented here:
https://www.kernel.org/doc/html/latest/admin-guide/kernel-parameters.html

If the equivalent isn't mentioned there, then likely it doesn't exist. To dig deeper, one would have to search existing kernel discussions and/or contact kernel support / development mailing list.

You are right. Created #176 for this.

@adrelanos could you check the request? The current option that is set seems to be completely invalid.

Thanks for the PR!

I am not sure force_enable is the best option.

                        force_enable - Force enable the IOMMU on platforms known
                                       to be buggy with IOMMU enabled. Use this
                                       option with care.

It's already force enabled using iommu=force.

This one seems more appropriate:

                        force_isolation - Force device isolation for all
                                          devices. The IOMMU driver is not
                                          allowed anymore to lift isolation
                                          requirements as needed. This option
                                          does not override iommu=pt

Then it's force enabled and also "is not allowed anymore to lift isolation requirements as needed".

Original issue resolved. Please open a new ticket should there be something else related to do such as force_enable vs force_isolation.

@adrelanos

Okay, I might make another issue later. Just dropping this here since it's more detailed than the kernel.org link:

https://docs.kernel.org/6.0/x86/x86_64/boot-options.html#iommu-input-output-memory-management-unit

iommu=force -> Force the use of the hardware IOMMU even when it is not actually needed (e.g. because < 3 GB memory).

I am not sure this actually forces IOMMU to not lift restrictions like forced_isolation either.