How about porting LVS to FreeBSD
julian at elischer.org
Tue Apr 19 15:19:30 PDT 2005
Julian Elischer wrote:
> Peter Jeremy wrote:
>> On Tue, 2005-Apr-19 09:08:29 +0800, dragonfly dragonfly wrote:
>>> LVS(http://www.linuxvirtualserver.org/) is a widely used server
>>> cluster schedule system,which is be included in Linux official
>>> kernel 2.4 and 2.6 release.
>>> Recently i ported LVS/ipvs to FreeBSD,and released 0.1.0 version
>> In its current form, this code cannot be technically or legally
>> incorporated into the FreeBSD base.
> If you look at the website, you'll notice that the person you are
> talking to is one of the
> original authors and can therefore assign a a BSD/dual copyright. SO
> the legal
> aspects are really just a case of "getting around to doingthe
sorry ignore this email
>> Looking at the legal aspects: LVS is covered by the GPL which is
>> incompatible with the BSD license. This is a significant impediment
>> to LVS being included in the base system. As a minimum, all GPL code
>> must be clearly identified and it must be possible to remove the code
>> from the kernel compilation.
>> Whilst you have segregated some of the code into a kernel module
>> (ipvs), there are still 14 files added or changed in the base kernel.
>> I also note that there are no sources to ipvsadm - which is supplied
>> as a Linux executable.
>> Of the 14 files affecting the base kernel:
>> - 1 includes a copyright statement with no rights statement. This code
>> cannot be legally used since the authors have implicitly retained all
>> rights to the code and it therefore cannot be used by anyone else.
>> - 4 files have no copyright statement, though in at least once case,
>> the comments imply that a GPL copyright statement has been deleted.
>> Again, this code cannot be legally used.
>> - The remaining 9 files are replacements for existing FreeBSD files and
>> include existing copyrights. There is no obvious legal impediment to
>> those files, though studying the changes would be necessary to
>> confirm that.
>> As to the technical issues: The "patch" includes 9 existing files
>> that replace existing files. This is a totally impractical way of
>> supplying code changes. The CVS ID's in those files imply that they
>> come from RELENG_5, possibly 5.3-RELEASE. FreeBSD rules require that
>> all new features must be applied to HEAD (currently 6.x) first. This
>> ensures that:
>> 1) The new features are not lost as FreeBSD moves forward.
>> 2) New, potentially buggy, code is tested in the "development" branch
>> before being added to a "production" branch.
>> The changes to the existing code must be supplied as context or
>> unified diffs to ensure that other changes to the code are not lost.
>> Much of the new code is not style(9) compliant which would also prevent
>> its inclusion into the base system.
More information about the freebsd-arch