From: "Petr Vandrovec" <VANDROVE@vc.cvut.cz>
To: "Dana Lacoste" <dana.lacoste@peregrine.com>
Cc: linux-kernel@vger.kernel.org
Subject: [OT] Re: Linus's include file strategy redux
Date: Fri, 15 Dec 2000 16:56:52 MET-1 [thread overview]
Message-ID: <FBF96516CD5@vcnet.vc.cvut.cz> (raw)
On 15 Dec 00 at 10:23, Dana Lacoste wrote:
> > On Fri, Dec 15, 2000 at 12:14:04AM +0000, Miquel van Smoorenburg wrote:
>
> > It's the version that's in cvs, I just did an cvs update. It's
> > been in it for ages. If it's wrong, someone *please* correct it.
>
> I think this is the important part.
> This subject has come up quite a few times in the past
> couple of weeks on the scyld (eepro/tulip) mailing lists.
>
> Essentially, whatever solution is implemented MUST ensure :
>
> 1 - glibc will work properly (the headers in /usr/include/* don't
> change in an incompatible manner)
>
> 2 - programs that need to compile against the current kernel MUST
> be able to do so in a quasi-predictable manner.
Maybe you did not notice, but for months we have
/lib/modules/`uname -r`/build/include, which points to kernel headers,
and which should be used for compiling out-of-tree kernel modules
(i.e. latest vmware uses this).
If you want to use some linux-specific feature in your program, you have
two choices: (1) use standard <linux/xxx.h> from version which came with
glibc, or (2) create your personal copy of known-to-work xxx.h.
Using anything else (such as latest version of xxx.h) is known to not
work, and brokes very often. Compare existing headers between 1.2.0 and
2.4.0. They are - hmm - a bit different. Also, what if user currently
has installed 2.2.x kernel, but in future it will want to use 2.4.x, with
its new features. You have to recompile all programs because of they were
compiled with old kernel headers? No.
[And for example, with ncpfs you just cannot create version which works
with 2.0/2.2/2.4 using kernel headers, as API changed during time
completely. With private headers it is easy. You can also add support
into userspace without modifying Linus kernel. And after some time
you can swap API in kernel and no-one notices (modulo whether Linus will
agree with change, but you can always ask in advance).]
Best regards,
Petr Vandrovec
vandrove@vc.cvut.cz
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/
next reply other threads:[~2000-12-15 16:28 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2000-12-15 16:56 Petr Vandrovec [this message]
2000-12-15 16:00 ` [OT] Re: Linus's include file strategy redux Dana Lacoste
2000-12-15 16:16 ` Eli Carter
2000-12-15 17:31 ` ferret
2000-12-15 18:56 ` Ingo Oeser
2000-12-16 3:37 ` ferret
2000-12-16 6:57 ` Keith Owens
2000-12-16 16:40 ` ferret
2000-12-16 23:43 ` Peter Samuelson
2000-12-17 3:05 ` ferret
2000-12-17 8:08 ` Peter Samuelson
2000-12-17 20:08 ` ferret
2000-12-18 3:58 ` Peter Samuelson
2000-12-18 19:21 ` ferret
-- strict thread matches above, loose matches on Subject: below --
2000-12-15 17:09 Petr Vandrovec
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=FBF96516CD5@vcnet.vc.cvut.cz \
--to=vandrove@vc.cvut.cz \
--cc=dana.lacoste@peregrine.com \
--cc=linux-kernel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox