Linux Kernel contains only C code?

Greg KH greg at kroah.com
Mon Jan 29 14:59:11 EST 2018


On Mon, Jan 29, 2018 at 01:00:10PM -0500, Jeffrey Walton wrote:
> On Mon, Jan 29, 2018 at 12:33 PM, Greg KH <greg at kroah.com> wrote:
> > On Mon, Jan 29, 2018 at 12:16:19PM -0500, Jeffrey Walton wrote:
> >> ...
> >> It would be nice if they moved away from UB and implementation defined
> >> behvior, but sometimes the political problems are heavier than the
> >> technical solutions.
> >
> > What do you mean by this?  What "UB" does the kernel rely on that
> > prevents compilers from properly building it?  We do have some pretty
> > strict requirements in the kernel for a compiler, but anything "odd" is
> > usually just a bug and we are always willing to take patches to fix
> > them.
> 
> https://groups.google.com/forum/#!topic/linux.kernel/-VzG6FWZiy8 and
> https://www.spinics.net/lists/linux-crypto/msg19466.html .
> 
> I found the first one from 2013 amusing:
> 
>   JW >> According to Section 5.8, "Shift Operators" of
>   JW >> http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2798.pdf:
>   JW >>  "The operands shall be of integral or enumeration type ...
>   CL > The kernel doesn't try to be fully standard conformant.
> 
> The second one from 2016 was disappointing. It suggested a standards
> compliant rotate that was constant time for the linux-crypto folks.
> That was rejected by some:
> 
>   PA >> So you are actually saying outright that we should sacrifice *actual*
>   PA >> portability in favor of *theoretical* portability?  What kind of
>   PA >> twilight zone did we just step into?!

Well, let's not get into the crazy crypto code in the kernel, it's not a
good example of much these days :)

> Its kind of like I said... the political problems are harder than the
> technical solutions.

Those should now all be gone, thanks to some persistent developers.
clang builds the kernel just fine as I mentioned, and if you look close,
people are working to get something other than 'ld' to link it as well
:)

thanks,

greg k-h



More information about the Kernelnewbies mailing list