On 05/04/2026 13:18, [email protected] wrote:
Hi team,

I have seen this error from day one on my system, however ignored it until (when my wifi and GPU were agressively competing for memory allocation) caused black screen until I stabilised the wifi up/down...

ACPI Warning: SystemIO range 0x...B00-0x...B08 conflicts with OpRegion ... (\GSA1.SMBI)
ACPI: [Firmware Bug]: BIOS _OSI(Linux) query ignored

While resolved for now worried this could cause an issue in the future. I have seen various ideas and solutions online, inc setting:

  * acpi_osi=Linux
 *


          |acpi_osi=! |

 *


          |acpi_osi="Windows 2009"|


      ||

etc.

Is this something you have encountered? Anyone have any suggestions?

From my (limited) understanding, the "ACPI_OSI" is, essentially, something an ACPI BIOS can use to find out what the Operating System supports[1]. So, during startup the BIOS asks "Do you support features from OS blahblah" and can adjust features as required (for example, the ACPI might enable finer control of thermals, or perhaps hide certain problematic functions).

The "acpi_osi" string in the kernel command line tells Linux what to respond to, when the BIOS asks.

So, there's two ends of the puzzle, but what should you set it to? Well, that really depends on the machine and what you're trying to do. BIOSes are one of those things that can get fairly minimal testing by motherboard manufacturers - so long as the motherboard works for most people for the time it's on sale, that's generally enough. So in some cases answering "Yes, I'm Linux" might be the right option, but sometimes it could cause the ACPI code to head into half-coded territory. Similarly, answering "Yes, I'm Windows 2009" might be a solid fallback, but you might also find that you want to say "No, I'm *not* Windows 2009" so that the BIOS can skip that branch and choose a more functional branch.

The exclamation mark basically means "When asked, say that you don't support this operating system". On it's own, I'm not certain but I suspect that means "Don't respond to any OSI query"; when followed by an operating system (e.g. "!Darwin") it means "Respond that you don't support this operating system".

In summary, the only safe default is to let the kernel handle this itself (i.e. don't set "acpi_osi" at all). Obviously, that causes issues here and there, so you best bet is to find some discussion forum where other people are using your motherboard on Linux and see what they say.


[1] https://docs.kernel.org/firmware-guide/acpi/osi.html


thanks!

Reply via email to