[LU-7961] Problem with kernel location detection on CentOS 6 Created: 31/Mar/16 Updated: 10/Jul/17 Resolved: 13/Jul/16 |
|
| Status: | Resolved |
| Project: | Lustre |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | Lustre 2.9.0 |
| Type: | Bug | Priority: | Minor |
| Reporter: | Christopher Morrone | Assignee: | Bob Glossman (Inactive) |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | patch | ||
| Issue Links: |
|
||||
| Severity: | 3 | ||||
| Rank (Obsolete): | 9223372036854775807 | ||||
| Description |
|
CentOS 6 installed the kernel source in to the following path which differs slightly from the RHEL version. We should expand the search pattern to encompass both the CentOS and RHEL paths. /usr/src/debug/*/linux-2.6.32-x.y.z.el6.centos.plus.x86_64 |
| Comments |
| Comment by Gerrit Updater [ 31/Mar/16 ] |
|
Christopher J. Morrone (morrone2@llnl.gov) uploaded a new patch: http://review.whamcloud.com/19248 |
| Comment by Joseph Gmitter (Inactive) [ 31/Mar/16 ] |
|
Hi Bob, |
| Comment by Bob Glossman (Inactive) [ 31/Mar/16 ] |
|
Joe, If Chris M. insists this patch is needed I see no harm in it, but can't reproduce or test needing it at all. |
| Comment by Christopher Morrone [ 31/Mar/16 ] |
|
There are build environments outside of the HPDD bubble. Yes, you will often find contents under /usr/src/kernel on a CentOS or RHEL system. But where do those files usually come from? The come from the "kernel-devel-*" package. The kernel-devel package contains header files, Makefiles, and smattering of other files. What should be noticeably absent are the the .c files. What does Lustre need .c file for? To copy ext4's source code so that it can patch it and build ldiskfs. So how then does a person easily obtain .c files for a CentOS kernel? That person runs "yum install kernel-debuginfo". Great! Now we've got everything we need to build lustre, including ldiskfs. Some of us have been building Lustre this way, or something similar, for many years. Pretty soon we're hoping to go full patchless kernel for servers (see |
| Comment by Bob Glossman (Inactive) [ 31/Mar/16 ] |
|
Christopher, |
| Comment by Christopher Morrone [ 22/Apr/16 ] |
|
Bob, actually, no normal kernel modules should ever need to install the kernel .src rpm. The vast majority of modules are going require the kernel-devel and be perfectly happy with just that. Lustre is almost entirely happy (or should be) with kernel-devel as well. The only problem is ldiskfs. ldiskfs is, of course, very unusual. It isn't a complete kernel module on its own. The lustre tree needs to go make a copy of the ext4 source and then apply a bunch of patches to turn it into the ldiskfs source code. Then it can actually do the build. This is problematic because with rpms there is no way (to the best of my knowledge) to express a dependency on a .src.rpm package! So how, on an rpm-based system would you make the lustre .src.rpm express this odd dependency on the kernel .src.rpm? You pretty much can't. So while it is kind of dirty in its own right, the best that we have come up with at LLNL is to make the lustre .src.rpm BuildRequires the kernel-debuginfo package. |
| Comment by Gerrit Updater [ 11/Jul/16 ] |
|
Oleg Drokin (oleg.drokin@intel.com) merged in patch http://review.whamcloud.com/19248/ |
| Comment by Joseph Gmitter (Inactive) [ 13/Jul/16 ] |
|
Patch has landed to master for 2.9.0 |