Linux kernel compatability

Jeff Roberson jroberson at jroberson.net
Mon Jan 3 23:45:19 UTC 2011


On Mon, 3 Jan 2011, Poul-Henning Kamp wrote:

> In message <alpine.BSF.2.00.1101031017110.1450 at desktop>, Jeff Roberson writes:
>
>> I have seen that some attempt at similar wrappers has been made elsewhere.
>> I wonder if instead of making each one tailored to individual components,
>> which mostly seem to be filesystems so far, should we put this in a
>> central place under compat somewhere?
>
> My inflation devalued $0.02:
>
> We should face our NIH syndrome and for those differences between
> Linux and FreeBSD KPI which are purely a naming or trivial argument
> difference, try to reduce the differences.

Unfortunately it would create quite a lot of code churn as there are 
relatively few that are minorly different.  You can page through the 
wrapper code if you're interested.

http://svn.freebsd.org/viewvc/base/projects/ofed/head/sys/ofed/include/linux/

>
> Those where there are substantial differences, we should only have
> one compat layer, not one for each driver.

I would like this to be the case.  So we can converge on something 
complete.  There are of course big differences between minor linux kernel 
revisions and that poses problems.  However those should be easier than 
the bsd/linux differences.

I think my proposal is to move these files to a more generic location so 
they are more visible and available to other projects.  Maintainers of 
individual kernel ports would have to decide if they want to use what is 
there.

The other important question is are there really many other places that 
this would be useful?  One example I can think of is network device 
drivers.  If you look at the ipoib port, for example, it's basically linux 
code + mbufs.  It does allow rapid porting if you don't mind having a 
weird hybrid result.  The reason I did it for ipoib was to permit taking 
in bug fixes and changes from linux.  Luigi also did something for usb 
which I did not bring in.  I felt some of his wrapper code was GPL 
polluted.

Thanks,
Jeff

>
>
> -- 
> Poul-Henning Kamp       | UNIX since Zilog Zeus 3.20
> phk at FreeBSD.ORG         | TCP/IP since RFC 956
> FreeBSD committer       | BSD since 4.3-tahoe
> Never attribute to malice what can adequately be explained by incompetence.
>


More information about the freebsd-arch mailing list