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!