Luis Chamberlain sent out the modules changes today for the Linux 6.6 merge window. Most notable with the modules update is a change that better builds up the defenses against NVIDIA's proprietary kernel driver from using GPL-only symbols. Or in other words, bits that only true open-source drivers should be utilizing and not proprietary kernel drivers like NVIDIA's default Linux driver in respecting the original kernel code author's intent.
Back in 2020 when the original defense was added, NVIDIA recommended avoiding the Linux 5.9 for the time being. They ended up having a supported driver several weeks later. It will be interesting to see this time how long Linux 6.6+ thwarts their kernel driver.
couldnt they do the thing where one team analyzes the leaked code and documents functions.
and a nother, clean room team, creates independent fresh code to achieve the same results as the original?
I mean, clean room activity like that has a strong precedent, going back to EA vs Sega at least. where EA stole a sega genesis dev kit, had one team document the functions, had another team independently create code to execute those functions,and made their own dev kid and put out non-approved sega carts (which is why the EA sega carts were taller and had the yellow plastic tag)
Sega sued and EA won due the clean room engineering and sega and EA came to some kind of sweetheart deal/comrpromise/settlement.
I've always heard cleanroom, since you keep your coders completely isolated from the investigation team so there can be no question of code pollinating across, Just documentation to be reimplemented in a unique and different way.
You are correct, it while it was technically driver for kernel, meaning it is using kernel driver api, it was not driver for graphic card. Just a bit different way to load binary blob.
That's only for never generation cards, from 20xx series upwards I think.
But there's still the proprietary driver for everything before that, including 1080 and such.
I belive the NVK work is where that headed. The released code wasn't up to snuff for true kernel intergration on it own, but offered a lot of insights for devs working on the problem.