Bug 16457 - kernel includes are linked incorrectly
Summary: kernel includes are linked incorrectly
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Red Hat Linux
Classification: Retired
Component: kernel
Version: 7.0
Hardware: i386
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Michael K. Johnson
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2000-08-17 16:09 UTC by vicr
Modified: 2008-05-01 15:37 UTC (History)
0 users

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2000-08-17 19:06:05 UTC
Embargoed:


Attachments (Terms of Use)

Description vicr 2000-08-17 16:09:23 UTC
- /usr/include/asm is linked to -> /usr/src/linux-2.4/include/asm instead of /usr/src/linux/include/asm
 - /usr/include/linux is linked to -> /usr/src/linux-2.4/include/linux instead of /usr/src/linux/include/linux
   the above two cause problems because the actual kernel used for 7.0beta is 2.2.16 at this time.  In particular, this causes a problem when compiling new kernel modules and trying to insmod it into the wrong compiled kernel.

Comment 1 Bill Nottingham 2000-08-17 18:05:15 UTC
Not a bug; you should point the external module build
at the correct kernel source tree (for example,
/usr/src/linux-2.2.16/include/linux.)

Comment 2 vicr 2000-08-17 19:06:04 UTC
the module file should not have to include the direct include path.  it should especially not have to include based on version number if no specific version number is required.  #include <linux/module.h> ought to include the correct module file from /usr/src/<linux kernel version>/include/linux.  In the past, the links have been (correctly) from /usr/src/linux -> /usr/src/<linux kernel version> and /usr/include/linux (and asm) -> /usr/src/linux/include/linux (and asm).

Comment 3 Bill Nottingham 2000-08-17 20:35:55 UTC
Linebreaks,  please.

The problem is that /usr/include/linux is used by glibc for all userland
compiles; these should not be kernel-version dependent.

modules implicitly need to know the kernel version you're running, so
having them point at a separate directory is sensible. For example,
pointing it at /usr/src/linux should work OK on a beta box.

Plus, Linus himself has decreed that /usr/include/linux and /usr/include/asm
should be *directories* used by glibc, and should not be changed with
each new kernel installed; so has he said, so it shall be done (look
at rawhide; it's been changed this way there.)

In short, this was changed intentionally, and we aren't changing back.


Note You need to log in before you can comment on or make changes to this bug.