LinuxQuestions.org
Visit Jeremy's Blog.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Newbie
User Name
Password
Linux - Newbie This Linux forum is for members that are new to Linux.
Just starting out and have a question? If it is not in the man pages or the how-to's this is the place!

Notices


Reply
  Search this Thread
Old 06-02-2009, 04:17 AM   #1
ElectroLinux
Member
 
Registered: Feb 2004
Posts: 74

Rep: Reputation: 15
Red Hat vs Centos vs Kernel.org kernels and compiling options


What is the difference between RHEL4 / Centos / Kernel.org kernels?

If there is a 2.6.9 RHEL4 kernel, is it the same as the 2.6.9 Kernel.org kernel?

Can I take the .config file of the red hat kernel and compile it in a kernel.org 2.6.9 kernel tree?

The reason I ask is because I have a software app that runs fine in a stock RHEL4 and Centos 4 kernel, but freezes during a fork() & join() when running RHEL4 or Centos 4 with a 2.6.29.4 kernel.org kernel. The app uses a feature to take advantage of using multi-processors. I've already enabled smp. I also looked at the stock Centos4/RHEL4 kernel options and they similar to the kernel.org kernel, but there is only so much the eye can match...especially since the kernel options don't match up exactly.

Any ideas on how to troubleshoot or options that should be included in the 2.6.29.4 kernel?

Last edited by ElectroLinux; 06-03-2009 at 01:37 PM.
 
Old 06-02-2009, 12:38 PM   #2
ElectroLinux
Member
 
Registered: Feb 2004
Posts: 74

Original Poster
Rep: Reputation: 15
Any suggestions would help.
 
Old 06-02-2009, 01:14 PM   #3
unSpawn
Moderator
 
Registered: May 2001
Posts: 29,331
Blog Entries: 55

Rep: Reputation: 3529Reputation: 3529Reputation: 3529Reputation: 3529Reputation: 3529Reputation: 3529Reputation: 3529Reputation: 3529Reputation: 3529Reputation: 3529Reputation: 3529
Maybe get the kernels' .src.rpm then check the backports and other patches? BTW, please be patient and do not bump your posts within 24 hours. It's against etiquette and makes your thread lose its 0-reply status. And if you would be interested in having people help you troubleshoot your app then posting as much detail as possible could help.
 
Old 06-02-2009, 01:25 PM   #4
lazlow
Senior Member
 
Registered: Jan 2006
Posts: 4,362

Rep: Reputation: 172Reputation: 172
The first RHEL3 kernel was probably pretty close to the kernel.org kernel, but the most current RHEL3 kernel is probably closer to a 2.6.18 kernel. Once any version of RHEL is released it will stick with the same base kernel number throughout its entire support life. BUT RH applies the new security (and some other) features via back patching. This makes their most current version of the 2.6.9 kernel much closer to a newer (2.6.18ish?) kernel than a 2.6.9 kernel. However the "backbone" of the kernel will always be the initial kernel release. RHEL uses this back patch method on most of the software packages on any one release rather than updating to the newer release versions. The reason they do this is too minimize the conflict that occur with using newer version.
 
Old 06-02-2009, 01:27 PM   #5
ElectroLinux
Member
 
Registered: Feb 2004
Posts: 74

Original Poster
Rep: Reputation: 15
So are red hat kernels very similar to kernel.org kernels? I was under the assumption that the versioning between redhat and kernel.org don't really correlate with each other...other than the 2.6 part.
 
Old 06-02-2009, 01:31 PM   #6
ElectroLinux
Member
 
Registered: Feb 2004
Posts: 74

Original Poster
Rep: Reputation: 15
Quote:
Originally Posted by lazlow View Post
The first RHEL3 kernel was probably pretty close to the kernel.org kernel, but the most current RHEL3 kernel is probably closer to a 2.6.18 kernel. Once any version of RHEL is released it will stick with the same base kernel number throughout its entire support life. BUT RH applies the new security (and some other) features via back patching. This makes their most current version of the 2.6.9 kernel much closer to a newer (2.6.18ish?) kernel than a 2.6.9 kernel. However the "backbone" of the kernel will always be the initial kernel release. RHEL uses this back patch method on most of the software packages on any one release rather than updating to the newer release versions. The reason they do this is too minimize the conflict that occur with using newer version.
I see, so what is the best way to compare the current kernel.org kernel with what red hat has released? How do I go about troubleshooting why the rhel3 kernel works and why the kernel.org kernel does not?
 
Old 06-02-2009, 01:40 PM   #7
lazlow
Senior Member
 
Registered: Jan 2006
Posts: 4,362

Rep: Reputation: 172Reputation: 172
As Unspawn said. Grab the source rpm, extract it, look at the spec file. The spec file will tell you which patches it is using. The patches are also contained within the src.rpm.

In general on a rpm system you should avoid compiling stuff yourself, but if you do then take it the extra step and build your own rpm. Installing things from source vastly increases the chance of decreasing the systems stability. If you build the rpm and install that way, you can easily remove the offending software, if you install via source it is considerably more difficult to remove.

Why are you trying to switch to a .29 kernel?
 
Old 06-02-2009, 01:58 PM   #8
lazlow
Senior Member
 
Registered: Jan 2006
Posts: 4,362

Rep: Reputation: 172Reputation: 172
Ok, it had been a while since I dealt with RHEL3. It uses a 2.4 based kernel and switching a system(rpm based at least) from 2.4 based to 2.6 based is a nightmare. The current kernel for RHEL3 is 2.4.21-58(as far as I can tell).

The current kernel for RHEL4 is 2.6.9-78. I suspect that there are a LOT more stuff in the .78 kernel vs the .4 kernel you are talking about. The current smp kernel is kernel-smp-2.6.9-78.0.22. I would try those before I would build a kernel.
 
Old 06-02-2009, 02:04 PM   #9
ElectroLinux
Member
 
Registered: Feb 2004
Posts: 74

Original Poster
Rep: Reputation: 15
Quote:
Originally Posted by lazlow View Post
As Unspawn said. Grab the source rpm, extract it, look at the spec file. The spec file will tell you which patches it is using. The patches are also contained within the src.rpm.

In general on a rpm system you should avoid compiling stuff yourself, but if you do then take it the extra step and build your own rpm. Installing things from source vastly increases the chance of decreasing the systems stability. If you build the rpm and install that way, you can easily remove the offending software, if you install via source it is considerably more difficult to remove.

Why are you trying to switch to a .29 kernel?
I have an environment that I have many different types of hardware, hence the kernel.org kernel. I use systemimager to install on all the different hardware. I noticed some patches in the changelog for 2.6.29.4 that helps with making VMs in vmware. I like having a kernel that has most hardware drivers built-in, so I only make some kernel options modules. I am trying to have 1 or the least amount of different images that can fit all hardware and/or VMs. This reduces the admin tasks.

I'm pretty new to building kernels. Can I rebuild a rhel3 kernel, just like I do with kernel.org?

How can I make an rpm out of the kernel.org kernel that I have built?

If i install via RHEL4 CD on Machine A, create an image of Machine A, can I easily image Machine B with the image I took off of Machine A? Does the kernel/OS from Machine A know that I need AMD/Intel support and/or bnx2/e1000 support? How does it know if I need NUMA support? I understand that is what modules are for, but what if it is not even selected as a module? Then what?

Does it hurt to put alot of built-in options into the kernel? I don't worry about boot-up times.

Sorry for all the questions, i'm looking for the best way to support mulitiple hardware with the least amount of interaction for the Admin. I'd rather not worry about interacting with Kudzu when a new Nehalem system arrives which may or may not need NUMA support.

So what are the RPMS used for? So let's say I get a new nehalem, does an RPM add support for NUMA or some new feature? Or is that done in a new kernel rpm? Do i need a new kernel for that? If it's a new kernel, it would be harder to add to a farm of thousands of compute nodes.
 
Old 06-02-2009, 02:22 PM   #10
lazlow
Senior Member
 
Registered: Jan 2006
Posts: 4,362

Rep: Reputation: 172Reputation: 172
Ok, first you need to sit down and read a basic book on linux and understand it.

RHEL3 is based on a 2.4 kernel, so yes you can(but I would strongly advise against it)use a 2.4 kernel.org kernel (just skip the 2.6 idea on RHEL3).

Just try the most current kernel (in the repo) for your version. Most hardware that was out on the release date of the kernel version will be supported. Those features that have not been back patched into the older kernel have been skipped for a reason. Usually they create stability issues with the system.

If you are installing these on systems and want to minimize hardware issues use 5.3. It will have the most current hardware and feature support.

RPMs are used to install and remove software (including the kernel) cleanly. On the newer versions yum will automatically find any dependencies needed to install the new or updated version of any software that is in the repo.
 
Old 06-02-2009, 04:14 PM   #11
ElectroLinux
Member
 
Registered: Feb 2004
Posts: 74

Original Poster
Rep: Reputation: 15
Quote:
Originally Posted by lazlow View Post
Ok, first you need to sit down and read a basic book on linux and understand it.

RHEL3 is based on a 2.4 kernel, so yes you can(but I would strongly advise against it)use a 2.4 kernel.org kernel (just skip the 2.6 idea on RHEL3).

Just try the most current kernel (in the repo) for your version. Most hardware that was out on the release date of the kernel version will be supported. Those features that have not been back patched into the older kernel have been skipped for a reason. Usually they create stability issues with the system.

If you are installing these on systems and want to minimize hardware issues use 5.3. It will have the most current hardware and feature support.

RPMs are used to install and remove software (including the kernel) cleanly. On the newer versions yum will automatically find any dependencies needed to install the new or updated version of any software that is in the repo.
Sorry if i gave you the wrong impression. I'm not putting 2.6 on rhel3. I'm putting 2.6 on rhel4. Using 5.3 would be the easy answer, but not for users who don't have binary compatible apps for 5.3. Unfortunately, 4 is what they are currently at. Thanks for your patience and yes, i will read a book, but didn't really expect you to tell me to read a book since i've posted this in the newbie forum. Isn't that what this is for?

Most of the books i've already read were a waste and really didn't give much detail into rpm uses and architectural designs in server clusters. I probably just didn't find the right book.
 
Old 06-02-2009, 08:12 PM   #12
lazlow
Senior Member
 
Registered: Jan 2006
Posts: 4,362

Rep: Reputation: 172Reputation: 172
Ok, you still do not seem to be getting it. RH back patches their kernels (2.6.9 in this case) to be the equivalent (roughly) of the current kernels. So for the most part you will have the same hardware support on the current 2.6.9 back patched RH kernel as you would have for the 2.6.30 kernel. Since all the apps in the repo will be expecting a 2.6.9 kernel (especially your pre built binaries) they have a high probability of failing if you switch to a vanilla 2.6.30 (or whatever newer) kernel. This is why RH uses the back patch method. The reason I suggested you read a book is becuase you do not seem to be able to grasp this concept.
 
Old 06-02-2009, 09:21 PM   #13
sundialsvcs
LQ Guru
 
Registered: Feb 2004
Location: SE Tennessee, USA
Distribution: Gentoo, LFS
Posts: 7,151

Rep: Reputation: 2203Reputation: 2203Reputation: 2203Reputation: 2203Reputation: 2203Reputation: 2203Reputation: 2203Reputation: 2203Reputation: 2203Reputation: 2203Reputation: 2203
If you're dealing with a kernel that is "customarily provided in binary form," I do not recommend that you attempt to compile it yourself. (Maybe you can succeed in replicating the binary that the distro authors produce... and maybe you can't.)

It sounds to me like you're dealing with a 2.4 kernel and trying to do something that needs a 2.6 kernel... "2.6, binary or not." Therefore, focus on the essential problem ("2.4 vs. 2.6") and find the simplest solution for that problem. I think that you have wandered off-course here. Do not "rush" to a solution.
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
problem with iptables afer compiling 2.6.24.2 from www.kernel.org on centos 5.1 tanch Linux - Newbie 4 03-03-2008 01:22 AM
ServeRAID 6M support in vanilla kernel.org kernels Yalla-One Linux - Hardware 0 09-14-2007 08:55 AM
Compiling Kernel in Red Hat 9 quovadismaximus Linux - Newbie 2 09-29-2003 12:02 PM
compiling red hat 8.0 kernel? menahem Linux - Software 1 03-22-2003 10:46 PM
Red Hat Update Agent for kernel updates and custom kernels SparceMatrix Linux - General 5 09-03-2002 05:58 PM


All times are GMT -5. The time now is 04:21 AM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Facebook: linuxquestions Google+: linuxquestions
Open Source Consulting | Domain Registration