it's possible, sure. but dont expect much help.
There WAS a network driver porting kit, until the main linux driver writer
guy decided he didn't want his code to be TRUELY "free", he wanted it to be
"linux-free"
--
[Trim the no-bots from my address to reply to me by email!]
[ Do NOT email-CC me on posts. Pick one or the other.]
S.1618 http://thomas.loc.gov/cgi-bin/bdquery/z?d105:SN01618:@@@D
The word of the day is mispergitude
>On Tue, 12 Jun 2001 21:07:27 +0200, jw...@marihuana.com wrote:
>>Is it posible to port a Linux driver to Solaris
>
>it's possible, sure. but dont expect much help.
>There WAS a network driver porting kit, until the main linux driver writer
>guy decided he didn't want his code to be TRUELY "free", he wanted it to be
>"linux-free"
So is the Source out there or not.. if so there must be people out
there that develop drivers and other stuff to solaris from what kind
of platform you can imagine.. to Solaris if i'm correct.
HA!, a program like Hummingbird.., WRQ.. for solaris would be nice!!
I think your conclusion is incorrect (and based on completely faulty
logic) and is unrelated to the original poster's question. You're
thinking about a completely different form of porting. The (no longer
available) porting kit Sun developed was for porting *drivers*, not apps.
I've never used Hummingbird or WRQ, but it sure looks to me like both
those apps require a supported NIC to access your host/legacy systems.
In other words, Hbird and WRQ don't supply any device drivers, just
an application that makes use of your existing network drivers. Porting
those apps (or any other Windows apps) to Solaris has nothing to do with
porting Linux drivers to Solaris. And even if there was a porting
kit for Windows apps available for Solaris, there's no reason to
assume that automatically means anyone is going to use it.
The Sun driver porting kit was target to a specific network device
driver structure. The reason it worked is because many Linux network
device drivers are very similarly structured, because they were written
by a single author (me).
This driver porting kit violated the license on the code. It directly
included Linux kernel code, included modified fragments of driver code,
provided a translator that only worked against my code, and described,
using verbatim example from my code, how to complete the port.
Sun even issued a press release announcement of the porting kit after
notification that it violated the copyright.
> ...until the main linux driver writer
>guy decided he didn't want his code to be TRUELY "free", he wanted it to be
>"linux-free"
Sun never sought a valid license for the driver code, instead hoping
that the copyright violation would go unnoticed. It was a simple case
of a large corporation using its power to violate the copyright of an
individual, knowing that their legal team would prevent any legal
repercussions.
--
Donald Becker bec...@scyld.com
Scyld Computing Corporation http://www.scyld.com
410 Severn Ave. Suite 210 Beowulf Clusters / Linux Installations
Annapolis MD 21403
I don't think that's relevant. The fact that most of the Linux drivers
look a lot alike just made it unnecessary to bother with a bunch of
special cases and/or a more general framework in the first release.
I'm certain someone at Sun could have eventually made the Porting Kit
work even if every Linux driver was written by a different programmer
as long as there's a somewhat regularly structured interface between
a Linux driver and the rest of the Linux kernel (which is especially
true with loadable Linux drivers).
Re-using code from other OSes probably isn't as difficult as you
seem to think it is. You have no way of knowing this, but I do know
that years ago Sun had a prototype of a program which allowed them
to load and run Windows mini-driver binaries. It didn't work perfectly
and was never finished and never released to any NIC vendors (and would
have had MS licensing problems even if the source code was completely
owned by the NIC hardware vendor).
Also, at one point SMC (Standard Microsystems Corp, i.e., the old
ethernet NIC vendor which is a different company than the one that
currently owns that product line) thought they were no longer going
to be Windows-centric and had a design for how every NIC vendor could
do portable binary drivers for all OSes (using small shim layers SMC
would freely provide) which they showed to various companies but
never fully pursued.
It seems to me that providing an efficient means of porting
a Unix driver starting from the source code is almost trivial in
comparison to such binary "ports". And this isn't the first time that
porting Unix drivers has come up. In the past, Sun provided various
porting guides but they limited such efforts to whitepapers that
simply provided general guidelines for porting drivers from SysV,
or SCO, or SunOS 4, etc., to Solaris 2.x).
> ...
> > ...until the main linux driver writer
> >guy decided he didn't want his code to be TRUELY "free", he wanted it to be
> >"linux-free"
>
> Sun never sought a valid license for the driver code, instead hoping
> that the copyright violation would go unnoticed. It was a simple case
> of a large corporation using its power to violate the copyright of an
> individual, knowing that their legal team would prevent any legal
> repercussions.
Look, I don't agree with what Sun did. It was obviously a lame
idea from the very beginning. There are more effective ways for
producing more Solaris drivers. But if Sun insists on porting driver
sources, then Sun should have used the BSD drivers instead. I know
that *none* of the many drivers I did for Sun uses any Linux code.
I also know that many years ago, anytime I discussed "porting" x86
drivers with Sun, that the Sun people were well aware of the
difference between the BSD and GPL and how touching anything even
remotely associated with GPL was asking for someone to kick you. In
other words, various Sun people could have predicted you would make
a stink about any non-Linux people touching your drivers. I've no
clue how Sun managed to forgot something so crucial other than that
the people who did the Porting Kit must not have been doing Unix
programming when Linux adopted the GPL.
But, regardless of whether Sun should have even wasted anytime on
Linux drivers, I think you're being highly deceptive by trying to
claim that Sun violated any copyright or license terms or that they
tried to push you around.
The Porting Kit is no longer available, but based on my memory
of what was in it, as far as I can recall, the only license or
copyright terms I saw in the version of the driver and kernel code
that Sun used in the Porting Kit was the GPL (I notice that in your
latest Scyld drivers you've changed to using a much more restrictive
copyright notice that goes way beyond the GPL and basically explicitly
prohibits using your drivers on any OS except Linux). Also, I'm
pretty certain the GPL was the only restriction at that time because
every Linux source file in the official distribution still basically
says:
This software may be used and distributed according to the terms
of the GNU Public License, incorporated herein by reference.
Or frequently, this:
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version
2 of the License, or (at your option) any later version.
I'm not going to directly quote the GPL, but it seems the only
applicable requirement of the GPL that affected the Porting Kit is
that Sun had to make available for free, the full source of every
program that is directly based on or includes any GPL code. It seems
to me that Sun more than met that requirement because they were very
careful to keep the Porting Kit as a separate product from any other
Sun product and make *all* of the Porting Kit sources available to
everyone (until you made a big stink about it and forced them to
destroy the Porting Kit). They didn't even include the Porting Kit
on the same CDROMs as any another Sun product (which is clearly
permitted by the GPL), or combine it with any other downloadable
packages or patches.
(I'm going to ignore the fact that Sun might have naively stripped
some copyright notices from the sources they distributed because
that's clearly a red herring. Sun freely distributed sources which
are freely available in their virgin form on thousands of web sites.
I suspect even if they had fixed such a technical violation as
removing copyright notices, you still would have made Sun destroy
the Porting Kit.)
Based solely on what was publicly posted, my impression is that you
and a bunch of other Linux-ites tried to (wrongly) assert that by
using GPL code in a third-party add-on Porting Kit that Sun had
somehow turned every Solaris product into a GPL-tainted product.
And that therefore, Sun had to freely distribute *all* the source
code for *every* program within Solaris under the GPL. That's
total hogwash. It might have been true if Sun either incorporated
the Porting Kit into the core Solaris product and/or if Sun shipped
any ported drivers as part of the Solaris kernel, but as far as I know
they didn't cross either of those lines.
Asserting that the Porting Kit crossed that line is about as lame as
trying to assert that because Sun now owns Cobalt (which uses the
Linux kernel and includes drivers based on your code) that the Solaris
kernel must be GPLed. How come you aren't going after Sun for that
"violation"?
Based on what I read in all the various online discussions, it seems
to me that every reasonable person who actually took the time
to study the GPL and the Porting Kit eventually admitted that Sun
really never violated the letter of the GPL and at least half the
people felt Sun also hadn't violated the spirit of the GPL.
Regardless, (apparently just to make you happy and let you
retroactively assert rights that you aren't entitled to) Sun
almost immediately yanked the Porting Kit anyway. If you think the
short-lived Porting Kit somehow violated your copyrights or somehow
damaged Linux, then surely if you had any sort of leg to stand on
legally, the FSF or EFF or Stallman himself would back you in a
legal fight against Sun.
So, basicly what you are saying is that if I'm writing a device driver
(for operating system xyz) and if I borrow parts of code that is under
GPL (directly or using some generic tool) and if I leave copyright
notices in those borrowed parts intact and if I put my device driver
under GPL, than I'm violating GPL? I think you are way out of line
here.
If you want total control on what happens with code you wrote and
where it will be used, don't use GPL and don't release the source.
Simple as that.
--
Aleksandar Milivojević <al...@fly.srk.fer.hr>
Opinions expressed herein are my own.
Statements included here may be fiction rather than truth.
Actually, stallman and other GPL bigwigs agree with him. or he's agreeing
with them. whatever.
Basically, if you are writing a device driver, and you actually WANT other
people, on other systems, (including commercial systems) to be able to
freely use your code, you CANNOT USE GPL. "L"GPL, yes, BSD, yes, artistic,
yes. GPL, no.
I think Sun made a "good-faith" effort with their network porting kit, but
failed to understand the finer differences between LGPL and GPL. They
assumed that drivers from a so-called "open source" operating system,
would be "freely usable" by other parties, if they kept the source available.
Silly them.
> Basically, if you are writing a device driver, and you actually WANT other
> people, on other systems, (including commercial systems) to be able to
> freely use your code, you CANNOT USE GPL. "L"GPL, yes, BSD, yes, artistic,
> yes. GPL, no.
So can you tell me which provisions of the GPL were violated in this
particular case and how?
--
.-. .-. Are you crying? No, I'm bleeding.
(_ \ / _)
| da...@arsdigita.com
|
Well, if this is true, it is a good reason to stay away from GPL as
far as possible...
: Well, if this is true, it is a good reason to stay away from GPL as
: far as possible...
It's the reason that Microsoft has called the GPL a cancer. Unfortunately
Microsoft paints Open Source == GPL, when this is not true. The #1 web server
in the world is Open Source and is not GPL.
When you look at what Microsoft did with Kerberos, you can see the problem
with the BSD type of license. With GPL, its solves this type of problem,
and creates other problems, both legal and religious.
Don't know the solution, but just listening to Stallman makes me cringe.
Software she be free and open to all, unless you don't want to run Linux. :)
It's actually sad the amount of reinvention that goes on between the BSD
camps and the Linux camps and the KDE and Gnome camps, all because of
religious issues.
And at the end of the day people wonder how Microsoft is always on top.
Close. It's actually, "Software should be free and open to all unless you
don't want it to be GPL." Seriously, Microsoft's depiction of the GPL as a
disease isn't far off--it *is* viral and for a reason. Stallman clearly
wants to destroy proprietary software of any kind. The GPL is intentionally
restrictive to this end.
Stallman is quite bright on this. You can't succeed by kind of, sort of, a
little bit, suggesting that maybe, perhaps, possibly someone should listen
to you. You have to be quite forceful and over-the-top in order to
influence people. Just look at death cults. ;-)
J
I'v just read GPL (again). At the end there is this paragraph:
===== 8< Cut Here 8< =====
This General Public License does not permit incorporating your program
into proprietary programs. If your program is a subroutine library,
you may consider it more useful to permit linking proprietary
applications with the library. If this is what you want to do, use
the GNU Library General Public License instead of this License.
===== 8< Cut Here 8< =====
Unfortunately, since device driver is a set of subroutines that are
called from within operating system, it can be considered to be a
"library", and GPL forbids incorporating and/or linking it into
proprietary applications (kernel in this case). Basicly, I was wrong,
they were right -- but it still sucks big time.
But the quoted part comes after "END OF TERMS AND CONDITIONS." I was
wondering which of the "terms and conditions" was violated.
2b? That would mean that the kernel is a derivative of the driver. Sounds
unlikely.
Uh, GPL is a copyright license.
<<It does not in any way force proprietary software vendors to use GPL'd
code - that's their choice.>>
I know. But the viral nature of the GPL is intended to make it impossible
to use GPL'd code in a proprietary project.
J
: Close. It's actually, "Software should be free and open to all unless you
: don't want it to be GPL." Seriously, Microsoft's depiction of the GPL as a
: disease isn't far off--it *is* viral and for a reason. Stallman clearly
: wants to destroy proprietary software of any kind. The GPL is intentionally
: restrictive to this end.
: Stallman is quite bright on this.
It's a thin line between genius and insane. The idea that ANYONE could
think that "proprietary" software could be destroyed is insane. So pure
software companies like Microsoft or Oracle are suppose to become "service
support" companies, with their software being "free". That's worked REAL
well for the Linux companies. What's RedHat stock selling at!!
It's absurd to think this could ever happen. The unemployment lines would be
miles long the day all software is "free". Someone needs to pay their salaries.
As I've said, I don't know the solution, but it isn't GPL. Oh, I just
remembered another reinventing the wheel, GNU Emacs team vs Xemacs team. :(
: You can't succeed by kind of, sort of, a
: little bit, suggesting that maybe, perhaps, possibly someone should listen
: to you. You have to be quite forceful and over-the-top in order to
: influence people. Just look at death cults. ;-)
AMEN. Time to drink some cool-aid.
I don't think that paragraph is relevant.
As long as the GPL code remains a completely separate component (which
is a requirement that's obviously satisfied by any Sun component that's
distributed in a optional package (e.g. all the GNU packages on the
Bonus or Software Companion CDROM), and by any packages distributed by
any third-parties), this is the relevant portion of Section 2 of the GPL
which allows Sun or any third-party to modify GPL programs to run on
Solaris without affecting the license status of Solaris itself
However, as a special exception, the source code distributed
need not include anything that is normally distributed (in either
source or binary form) with the major components (compiler, kernel,
and so on) of the operating system on which the executable runs,
unless that component itself accompanies the executable.
In other words, as long as the modified GPL driver remains a separate
component it's not really a part of the proprietary Solaris kernel
and therefore doesn't affect the license status of the kernel. This
is even more obvious if you consider that Sun didn't actually
distribute a finished driver and was merely providing a tool which
would allow third-parties to create such drivers. There's also the
fact over a year elapsed between the release of Solaris 8 and the
posting of the Porting Kit. You can't retroactively change the
copyright or license terms of a product you've already sold.
It just doesn't make any sort of sense for Becker to attempt to assert
that Sun, by distributing a porting kit, somehow caused a Solaris 8 CDROM
(that's been sitting on my shelf for over a year) to suddenly be
converted from a proprietary OS to a GPL OS.
There's also no way any third-party (by distributing any sort of GPL
program, tool, or driver) could ever rationally cause a year-old
Solaris 8 kernel to suddenly become a GPL OS.
In other words, what Becker is trying to claim is that, I could turn
every existing version of Windows (3, 95, 98, SE, ME, NT, 2K, etc)
into a GPL OS simply by porting an GPL driver to Windows. That's
obviously absurd. It's equally absurd that if I port any GPL code to
*any* proprietary Unix OS (e.g., BSD or Solaris) that I would
somehow magically turn that Unix OS into a GPL OS. And given that the
GPL applies equally to everyone, it's obviously absurd to claim that
optional GPL drivers created by Sun have a different affect on Sun's OS
than optional GPL drivers created by me (or any other third-party).
The other thing that Becker seems to be confused about is his
intellectual property rights regarding the GPL drivers he created.
He seems to be trying to imply that even if Sun adhered to the GPL,
that Sun still needed to request "a valid license" from him personally
to modify and use his GPL code. That's total nonsense. By attaching
the GPL license to his code he explicitly gave up *all* his rights to
anyone that wants to use the code in any manner that doesn't violate
the GPL. Nobody, not even Sun, needs any sort of license to use
Becker's drivers any way, shape, or form which is compatible with
the GPL.
In particular, as long as follow the GPL (i.e., give away all of the
modified GPL source code without charge to anyone) I can modify his
GPL driver in any manner and to any degree I choose, to run on any OS I
choose, and even charge real money for the resulting binary code.
There's *absolutely* nothing Becker can do to stop anyone from doing
this. If he thinks he does, then I'll simply call my Solaris version
of the driver "a broken Linux GPL driver" and not mention Solaris
at all. There's nothing in the GPL that requires me to only create
valid or working Linux GPL drivers from his code. The only right to his
code that Becker retains, is the right to create a completely separate,
non-GPL version of his code (which he's already implicitly done by
posting a version that invalidates the GPL by attempting to add
additional restrictions on top of the GPL (which the GPL doesn't allow)).
No, you're wrong and Jason is correct. I suggest you read the GPL FAQ
on www.fsf.org (and some of Stallman's rants). Every GPL *must* have a
copyright (otherwise the program becomes public domain code and the
GPL restrictions become moot). As long as one does not attempt to remove
the GPL (or any prior copyright notice), anyone can modify a GPL program
and add a new copyright notice. In other words, hijacking someone
else's GPL program is explicitly permitted by the GPL (and of course
someone else can hijack your hijacked version of the GPL program).
You just can't turn GPL code into proprietary code, and *some* uses
of GPL code can implicitly turn proprietary code into GPL code.
I suspect Oracle makes a lot more profit in consulting services and support
then it does on initial license sales. I've argued for a while that Oracle
should buy or partner with a Big 5 accounting firm to provide true
consulting services. Microsoft's big push to the enterprise probably has
more to do with the projected consulting and support contracts then actual
sales of Baan (or whatever mid scale ERP package they recently bought)
licenses.
John
groe...@acm.org
: I suspect Oracle makes a lot more profit in consulting services and support
: then it does on initial license sales.
It may be true that Oracle make more profit in its consulting services, as
that part of the company is HUGE. But the software side makes ooddles of
money, especially in areas where there is no competition. Oracle isn't
a RDBMS company anymore. They come in, sell you couple of million dollars
worth of off the shelf Oracle software. The consulting services and support
customize it for you. Still, you paid a nice penny for that software.
Make the software free, one can always get consulting services and support
from elsewhere. The only thing Oracle owns is the proprietary software
it developed.
: Microsoft's big push to the enterprise probably has
: more to do with the projected consulting and support contracts then actual
: sales of Baan (or whatever mid scale ERP package they recently bought)
: licenses.
Microsoft needs to keep Wall St. happy, and the only way to do that is to
increase growth rate/revenues year over year. That's not easy for a company
the size of Microsoft where due to complete domination of certain areas
of software (OS, Office products), need to find other areas for growth.
Hence moving into the Enterpri$e, the Xbox, forcing customers to update to XP.