Following yesterday’s Linux 6.18 kernel release, GNU Linux-libre 6.18-gnu is out today as the latest release of this free software purist kernel that will drop/block drivers from loading microcode/firmware considered non-free-software and other restrictions in the name of not pushing binary blobs even when needed for hardware support/functionality on otherwise open-source drivers.

With Linux 6.18 there are more upstream kernel drivers dependent upon binary-only firmware/microcode. Among the drivers called out this cycle are the open-source NVIDIA Nova-Core Rust driver as well as the modern Intel Xe driver. Nova-Core is exclusively designed around the NVIDIA GPU System Processor (GSP) usage and thus without its firmware the driver is inoperable. Similarly, with the newer Intel Xe driver depending upon the GuC micro-controller without its firmware the support is also rendered useless.

  • Scoopta@programming.dev
    link
    fedilink
    arrow-up
    2
    ·
    16 hours ago

    This is basically the same argument that caused the libreboot vs gnuboot thing and I just personally don’t get it. It seems to me like the FSF is letting perfect be the enemy of the good. Having a FOSS driver isn’t something to be celebrated it’s something to be punished if the firmware isn’t also FOSS. Yes, ofc, FOSS firmware is better than closed firmware, but when almost no modern hardware has that as an option, it’s not even something you can really vote on with your wallet unless you just run ancient hardware all the time.

    It matters because for me, a good chunk of the FOSS benefit is the auditability of code. Being able to make changes is nice and that’s the freedom bit, but being able to audit it is also a huge benefit. If the code is not running on the main CPU then the driver on the main CPU can contain possible exploits of firmware using the IOMMU etc so it becomes more tolerable than a closed source driver. Basically a firmware vulnerability effectively becomes a hardware vulnerability as opposed to a driver running with full kernel privileges and no oversight or containment.