This is the mail archive of the crossgcc@sourceware.org mailing list for the crossgcc project.

See the CrossGCC FAQ for lots more information.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: ct-ng "kernel version" relation to kernel version


On Fri, 28 May 2010 08:12:29 +0200
"Yann E. MORIN" <yann.morin.1998@anciens.enib.fr> wrote:

> On Linux (and I think it is specific to Linux), the C library has to
> know how to talk to the kernel: syscalls and so on... So you need the
> kernel headers, sanitised for use by userland (that is, kernel
> headers with stuff internal to the kernel removed).
> 
> These kernel will define the API between kernel-land and user-land.
> With new versions of the kernel, this API will grow new entries, but
> will never remove any (except in very, very few occasions, but you
> can safely ignore those).
> 
> Now, if you run your target with a kernel newer than the one used for
> headers, that's OK. You might just not be able to use the whole new
> fancy stuff from the kernel (eg. the headers used for the toolchain
> do not know about slpice(), but your running kernel does, you won't
> be able to use splice() from userland, because the C library will not
> have detected it at build time).
> 
> Now, if you run a kernel that is older than the one used for the
> headers, you are at high risk to not be able to run at all. glibc
> detects this and prints a message about it: "too old kernel" (or
> something like that).

What about adding a FAQ entry about this on Crosstool-NG website, so
that we could point people to this explanation, which has been asked
numerous times, either on the Crosstool-NG or Buildroot lists.

Thomas
-- 
Thomas Petazzoni, Free Electrons
Kernel, drivers, real-time and embedded Linux
development, consulting, training and support.
http://free-electrons.com

--
For unsubscribe information see http://sourceware.org/lists.html#faq


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]