12 ms·
I think drivers should be compulsory to open source 5 years after the hardware is no longer sold, it’d be so good for consumers and make hardware last a lot lo
by andy_ppp 3y ago
I think drivers should be compulsory to open source 5 years after the hardware is no longer sold, it’d be so good for consumers and make hardware last a lot longer.
I’d include things like digital cameras and printers in this revolution. In a lot of cases it might be better using older hardware as new features would be added by the community forever!
- ho_schi 3y agoWhy five years? Modules (precisely speaking about Linux) shall be open-source upon sale! Nothing new for AMD and Intel. But we have likely a new field below, firmware. Nvidia (and both from above) push a lot of stuff there now. Firmware often contains security and bugfixes nowadays. PS: Hoping right now that the newest firmware for RDNA2 fixes issues with PSR (backlight turns off).
- mlyle 3y ago> Modules (precisely speaking about Linux) shall be open-source upon sale! Linux's interpretation of the GPL allows closed source and proprietary modules (providing you conform to a somewhat limited set of interfaces). There's a lot of closed source binary lumps out there for different hardware.
- teddyh 3y ago> Linux's interpretation of the GPL allows closed source and proprietary modules Not officially, IIUC. If they were officially allowed, this is what would happen: <https://lwn.net/Articles/162686/ https://lwn.net/Articles/162686/>
- mlyle 3y agohttp://linuxmafia.com/faq/Kernel/proprietary-kernel-modules.html http://linuxmafia.com/faq/Kernel/proprietary-kernel-modules.... Linus said it was okay long ago; that's as close to official as one can get. Later his views became more nuanced, but still largely authorize binary-only drivers. It may still be legally problematic (as there are many contributors who may be able to make a claim); but 28 years of policy precedent make such an attempt at enforcement difficult. There's all the EXPORT_SYMBOL/EXPORT_SYMBOL_GPL infrastructure for this exact reason.
- teddyh 3y ago> Linus said it was okay long ago You and I have a very different understanding of the very long text at that link.
- mlyle 3y ago> > long ago > understanding of the very long text You have the original statement in 1995, which is nice and short. You clipped from my statement: > > Later his views became more nuanced Waffling starts in 2002. IMO, the fact that there's an interface maintained for the explicit purpose of marking symbols for non-GPL compatible code makes it pretty damn difficult to enforce.
- pjmlp 3y agoContrary to popular beliefs, AMD and Intel only do that for some of their cards, not all of them.
- pwg 3y ago>I think drivers should be compulsory to open source 5 years after the hardware is no longer sold, Why wait five years? The hardware stops being sold on date X, the software/firmware must be published the same day. > In a lot of cases it might be better using older hardware as new features would be added by the community forever! And here you have found why the OEM's will fight via hordes of lobbyists any attempt to legislate a required publishing of software/firmware for out of production hardware. Keeping the old hardware useful after the OEM end-of-life's it means the OEM sees a smaller number of future sales of their "new and improved V2.0" [1] hardware, equating directly to lower revenue and profit. [1] where what is "new and improved" is often nothing more than eye candy to convince you to give up your 1.0 version and buy the 2.0 variety.
- bombcar 3y agoFrom my experience in the industry the problems are usually working out the licensing of tons of licensed code that is included from other companies more than a desire to force upgrades.
- moomin 3y agoGraphics card drivers are the absolute worst because not only do you have these licensing issues, but many games have workarounds because the API isn't called correctly so the driver just... makes up what should have happened.
- ndriscoll 3y agoThis is where regulation works well; if hardware manufacturers are required to open their code, it will be a standard and expected part of supplier contracts. If someone wants to license their code, they will have to allow for that or they'll have no buyers.
- robertlagrant 3y agoDo we know this regulation works well? Where's it been implemented?
- treyd 3y agoWhy is it not compulsory to release the source code from day 1? If you're making a driver it's because you're selling hardware, that's where your profit and value is. Commingling the two leads to perverse incentives and conflicts of interest.
- teaearlgraycold 3y agoFor GPUs the driver is mostly a gigantic list of performance hacks for different software packages. That might be an asset to competitors. But I think NVidia would be perfectly fine financially if they gave this out.
- mey 3y agoConsidering Intel Arc's launch, it would've been a massive boon to them to have this information. Granted this information is likely highly customized to Nvidia architecture so it may be of little use, but Arc made it very apparent exactly how many games just barely work at all. You can also see that in the excellent Dolphin emulator team write ups.
- Dalewyn 3y agoIntel's woes with ARC stem from the fact their silicon straight up doesn't support anything below DX12, so they have to rely on software emulation for them. Nvidia and AMD both support DX versions below DX12 in their silicon, they don't have to emulate anything which means better performance. Even if Intel had access to Nvidia and AMD's driver source codes, none of it would be useful because they don't have the silicon.
- shmerl 3y agoNote how it's much shorter for Vulkan: * https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/src/util/00-radv-defaults.conf https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/src/uti... * https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/src/util/00-mesa-defaults.conf https://gitlab.freedesktop.org/mesa/mesa/-/blob/main/src/uti...
- 3y ago
- sho_hn 3y agoIf you're interested in actually making this a reality, I recommend in engaging in your country's environmental policy community -- and bringing a lot of patience. Over at KDE we've some something in that direction - we've worked with the German federal environment ministry on extending the criteria for Germany's Blue Angel environmental label with rules for software products. The resulting criteria include language about what's needed to keep old hardware running and useful (as unnecessary HW replacement spikes the environmental footprint); including using open source to enable the required maintenance. Eventually, this will have an effect, e.g. when government procurement rounds require bidders to achieve this label, and others start aligning with government practice. https://eco.kde.org/ https://eco.kde.org/
- jrockway 3y agoI think what's needed from the government side is indemnity for copyright and patent infringement on open-sourced code. What I've always heard is that AMD steals Nvidia's IP, Nvidia steals AMD's IP, etc. so if they ever open-sourced their highest-performance graphics drivers, they would each sue each other into oblivion since the "borrowing" is now out in the light of day. (Remember that "steals" can mean AMD hires an engineer from Nvidia, they run into the same problem 2 years later, and accidentally solve it the same way they did at their other employer. To someone reading the code or a court, that looks identical to coming into Nvidia's office through a vent and stealing a hard drive. But the intent was never malicious.) If we removed the concept of trade secrets and made copyright and patents on software last for only 5 years, then this problem would go away. For an example / cautionary tale, look at happened with Google's range check function in the Java standard library. Millions of dollars spent litigating over 4 lines of code. Nobody will ever want to open-source anything again, especially if they independently discovered some clever graphics optimization. Whatever fines governments can levy for not complying with these environmental regulations probably pale in comparison to what infringement lawsuits cost to defend, so I think that's what regulations have to attack. So right now, companies are scared about the legal risk that open source exposes them to. It's easier for entities that wish you harm to find infringement in code they can just look at, instead of encrypted binaries that are sent to the "Trust Zone" inside hardware. Because it's easy, people look. And if they find it, the company that open-sourced the thing is ruined. "You copied me too" isn't a defense to copyright infringement; you'd have to prove it to make them settle, and if their code isn't open-source, you can't do it.
- userbinator 3y agoI bought an unbranded drawing tablet a long time ago from a small Chinese company on Alibaba. The driver CD came with source code for the (Windows 3.11 and 9x) driver and configuration utility as well as a PDF describing the interface protocol (which used the serial port). I was pleasantly surprised but then realised that they likely did that because they only cared about selling the hardware and hadn't thought about wanting other user-hostile revenue streams (yet). I would be fine without open sourcing drivers, but just releasing documentation (and perhaps fragments of demo code) but I suspect a lot of companies are reluctant to do either because they believe there is some secret sauce in the software. Otherwise they'd be more interested in outsourcing to the "community" to do the work for them for free.
- usefulcat 3y ago> I would be fine without open sourcing drivers, but just releasing documentation The problem with that is that it's far too easy for the 'documentation' to be incomplete, and in non-obvious ways. OTOH if they release incomplete source code it will likely be much more obvious (e.g. 'foo() calls bar() but bar() does not exist anywhere in the codebase, wtf').
- cyanydeez 3y agocapitalism requires the oil of planned obscelescence where available. when not available, just good old conspicuous consumption will do. of course society needs regulations like dolphins need oxygen
- robertlagrant 3y agoGood point. This is why you see just as many 25 year old Ladas as BMWs.
- FirmwareBurner 3y agoTerrible example to prove a point. 25 year old BMWs are way more reliable than 25 year old Ladas except you don't see many of the old BMWs around because their wealthy owner upgraded and you see a lot of Ladas because their empoverished owners can't afford anything new so they do what they can to keep them running but that's more survivorship bias of Communist cars which had terrible reliability, hell, most had issues straight out of the factory.
- robertlagrant 3y agoSomehow, while you misunderstood me, it was a good enough example to work anyway and you came to the right answer.
- sandworm101 3y ago>> it’d be so good for consumers and make hardware last a lot longer. Which is why hardware manufacturers will fight tooth and claw to prevent such a thing. They don't want you to keep using old hardware. They want you to keep buying new stuff. If the hardware isn't going to break, then a failure of software will do.
- thomastjeffery 3y agoThe larger problem is that drivers are written by hardware manufacturers. This is the perverse incentive: driver optimizations present competitive value to manufacturers, so manufacturers keep drivers secret in order to monopolize that value. The problem is that by monopolizing their driver, the manufacturer also monopolizes the responsibility of driver creation, compatibility, security, and maintenance. This doesn't just prevent competition from other manufacturers: it prevents collaboration with anyone else. There is nothing to incentivize a manufacturer to actually uphold the responsibility that they have monopolized. It's actually the opposite: monopolized responsibility is an opportunity to implement planned obselescence. The purpose of copyright and patent monopoly is to incentivize knowledge sharing. In this case, the opposite is true. If we want drivers to be maintainable, then we have 2 options: 1. Require all drivers to be open source. 2. Break up the vertical integration of in-house driver development. I vote we do both.
- robertlagrant 3y agoHow would 2 work? I make some hardware, but have to hope that someone else will start a company to create a driver for it?
- dylan604 3y agoYeah, that doesn't make sense. "We're pleased to announce the release of our amazing new hardware that we can't wait to see what people will do with it. No, really. Please, someone do something with it. We're not allowed to do anything other than make it. Please, justify our existence. However, if someone says the hardware is inadequate, that would just be their excuse for making inadequate software, and in no way reflects the true potential of the device"
- thomastjeffery 3y agoThere is no need to wait until release. Go ahead and publish a hardware spec during development. Go ahead and commission a driver development company, and work closely with them. The only change is that driver development is allowed to be a competitive market.
- rdsubhas 3y agoThat could probably invite needless frivolous lawsuits (IP/patent/copyright/license trolls) on various parts of the source code.
- justin66 3y ago> drivers should be compulsory to open source 5 years after the hardware is no longer sold The ironic thing is that it would be legal for the manufacturer to engineer the hardware to die before that date.
- jacquesm 3y agoYes, I agree. But in practice, this stuff is evolutionary to the point that they'd simply keep a token amount of SKUs in reserve that will never be actually sold but that are theoretically still available in order to be able to block that compulsory order. Because if the competition gets direct insight into how the previous generation looked they will be able to make a much better stab at competing with the current one. So to solve this you'd have to mandate that they open source all drivers right from when the goods are sold the first time or commit to supporting devices for as long as there are viable units out in the field or something like that. Again, not likely to ever happen for obvious reasons.
- conradfr 3y agoLet's just make it an arbitrary number of years after the selling began then, like for patents.
- deleted 3y ago[deleted]
- Zambyte 3y ago> I think drivers should be compulsory to open source 5 years after the hardware is no longer sold This sounds like a reasonable first step towards the real ideal, which would be to free the drivers from day 0.
- ptek 3y agoThat would be great. I'm annoyed that my fathers 10 year old Cannon MG5100 series (printer, scanner) does not have a driver for windows 11 :(, Now he has to buy a new one or transfer files to his old Windows 10 laptop to print.
- tamimio 3y agoI just want a proper open source hardware card and software driver!