For folks internal to Sun who are overloaded with driver development duties, there may seem like there is no end to the volume of drivers we're including into the build trees. But the fact is, each of those that goes into Open Solaris and eventually Solaris has huge encumberences. A tremendous legal effort is expended to negotiate open source under the CDDL to Sun, which controls the terms.
With GPL, the redistribution is automatic and viral. Once a company releases source themselves and attaches a GPL header, it's over. In fact, the architecture of GPL Linux tells companies that they taint the kernel when they don't release truly source built binaries. There is a grey area where many companies are building drivers today that technically derive from the kernel interfaces and headers that are GPL, not LGPL and thus may be subject to some harsh legal action if the Linux folks actually chose to take action, and hence the work proceeding on rewording GPL in latest version 3. But in general, once released as GPL, it's fully redistributable and anyone can look and derive and improve and re-release and propagate the GPL driver code. There are no further legal encumberances - and that was one of the intended benefits of copy left. The GPL isn't about intellectual rights - the authors retain all rights to what they know; but the version they released under the GPL is basically out of their control. Anyone who contributes and improves it gives it back automatically to the community under GPL, and the company that issued it, can't even take that version back and include those new enhancements without re-issuing under the GPL, even though the original work was theirs. That's because those enhancements are GPL. The net effect is that driver development is MUCH faster and intellectual property gathered benefits everyone. Under CDDL, each company negotiates terms with Sun that usually preserves their ability to re-incorporate joint improvements made under CDDL. They can then combine these improvements and improve upon them in future revisions and not release them to the CDDL under such contracts, and so drivers on Open Solaris may stagnate after the first or second generation, especially if hardware enhancements occur that build on existing code and have some minor new changes to make it work. A re-negotiation happens on the next gen... and this adds viscosity to the whole process and increases frictional drag on development. End results are that it takes more work to get drivers onto Open Solaris. There is an advantage of course if businesses want to profit; the CDDL is definitely pro-business. But it's a two edged sword for a small growing OS. If Solaris were MONSTER monopoly OS selling 200 Million units per year world wide, and having only 5% of the market actually ever installing OS, and 95% of the systems coming pre-installed by OEMs, well, then we could sustain a fully proprietary driver program where OEMs submit to the will of MONSTER OS and actually pay to have their driver (which they write) certified and possibly verified and signed for inclusion in MONSTER OS. But OpenSolaris isn;t there....yet, and hopefully will never be closed. I'd much rather see 200Million units installed per year and driver source fully open and viral. -- This messages posted from opensolaris.org
