Bug 432378 - [MRG] Relocatable kernel support required in the MRG kernel
Summary: [MRG] Relocatable kernel support required in the MRG kernel
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat Enterprise MRG
Classification: Red Hat
Component: realtime-kernel
Version: beta
Hardware: x86_64
OS: All
low
medium
Target Milestone: ---
: ---
Assignee: Clark Williams
QA Contact:
URL: ARRAY(0x8bcb70)
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2008-02-11 17:56 UTC by IBM Bug Proxy
Modified: 2008-06-03 05:56 UTC (History)
4 users (show)

Fixed In Version: 2.6.24.4-31.el5rt
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2008-05-16 18:49:13 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
IBM Linux Technology Center 42253 0 None None None Never

Description IBM Bug Proxy 2008-02-11 17:56:19 UTC
=Comment: #0=================================================
Ankita Garg <ankigarg.com> - 2008-02-11 11:25 EDT
Problem description:

TheCONFIG_RELOCATABLE config option is not enabled in the MRG kernel. Due to
this, kdump support is currently unavailable on the MRG product. 

This bug is to have the config option enabled.

If this is a customer issue, please indicate the impact to the customer:

Yes. kdump functionality would not be available to the customer.

The kdump service fails to startup with the following message:

Feb 11 10:34:21 elm3b175 kdump: BzImage is not relocatable. Can't be used as
capture kernel. Cannot load /boot/vmlinuz-2.6.24-21.el5rt
Feb 11 10:34:21 elm3b175 kdump: kexec: failed to load kdump kernel

If this is not an installation problem,
       Describe any custom patches installed.

       Provide output from "uname -a", if possible:

Linux elm3b175.beaverton.ibm.com 2.6.24-21.el5rt #1 SMP PREEMPT RT Thu Jan 31
18:00:56 EST 2008 x86_64 x86_64 x86_64 GNU/Linux

Hardware Environment
    Machine type (p650, x235, SF2, etc.):
    Cpu type (Power4, Power5, IA-64, etc.):
    Describe any special hardware you think might be relevant to this problem:

All.

Please provide contact information if the submitter is not the primary contact.


Please provide access information for the machine if it is available.


Is this reproducible?
    If so, how long does it (did it) take to reproduce it?
    Describe the steps:

    If not, describe how the bug was encountered:

Config issue.

Is the system (not just the application) hung?
    If so, describe how you determined this:


Did the system produce an OOPS message on the console?
    If so, copy it here:


Is the system sitting in a debugger right now?
    If so, how long may it stay there?


Additional information:

Comment 1 IBM Bug Proxy 2008-02-12 09:48:30 UTC
------- Comment From ankigarg.com 2008-02-12 04:47 EDT-------
(In reply to comment #0)
> Problem description:
>
> The CONFIG_RELOCATABLE config option is not enabled in the MRG kernel. Due to
> this, kdump support is currently unavailable on the MRG product.
>
> This bug is to have the config option enabled.
>
> If this is a customer issue, please indicate the impact to the customer:
>
> Yes. kdump functionality would not be available to the customer.
>

kdump functionality will not be available by default. The user would need to
edit the /etc/sysconfig/kdump file to specify the kdump kernel to be used, which
would most likely be the RHEL5.1 kernel. But if this option is enabled, the rt
kernel itself can be used as the kdump kernel.

Comment 2 Clark Williams 2008-02-27 15:00:17 UTC
We do not plan to enable CONFIG_RELOCATABLE on the MRG realtime kernel. 

Since it's a requirement to have an Enterprise Linux installation to use MRG
realtime, we use the RHEL5.1 kernel as our kdump kernel.

Clark


Comment 3 Jeff Burke 2008-02-27 15:26:24 UTC
Please see:
   http://rt.et.redhat.com/page/RHEL-RT_kdump/kexec

Thanks,
Jeff

Comment 4 IBM Bug Proxy 2008-02-27 23:08:26 UTC
------- Comment From dvhltc.com 2008-02-27 18:05 EDT-------
We found that it was considerably less work to enable CONFIG_RELOCATABLE, than
it was to configure the various files to use a different kernel than the running
kernel.  Also, as we have had need to use 3rd party drivers in the rt kernel for
various devices, it made it possible to build those drivers for just the rt
kernel, rather than both the rt kernel and the stock kernel.

With that in mind, would you consider enabling CONFIG_RELOCATABLE?

Comment 5 IBM Bug Proxy 2008-03-05 11:17:17 UTC
------- Comment From sripathi.com 2008-03-05 06:13 EDT-------
It was discussed in a call that we need inputs from peterz and ingo about this.
I accumulated all the reasons why we think CONFIG_RELOCATABLE should be enabled
in the MRG kernel config. Some are from Darren and Tim Chavez.

1) Enabling CONFIG_RELOCATABLE will make it very easy to configure kdump.
2) We have had need to use 3rd party drivers in the rt kernel for various
devices, it made it possible to build those drivers for just the rt kernel,
rather than both the rt kernel and the stock kernel.
3) Getting CONFIG_RELOCATABLE enabled will get it some testing!
4) If the rt kernel does not work properly as kdump kernel on some hardware, we
can still edit the kdump config files to use the stock RHEL kernel. Just
enabling the config option won't hurt.

Please let us know what you think.

Comment 6 IBM Bug Proxy 2008-04-02 16:08:39 UTC
------- Comment From sripathi.com 2008-04-02 12:04 EDT-------
CONFIG_RELOCATABLE is not enabled in 2.6.24.4-30.el5rt kernel:

/boot/config-2.6.24.4-30.el5rt:# CONFIG_RELOCATABLE is not set

Comment 7 IBM Bug Proxy 2008-04-09 10:41:11 UTC
------- Comment From ankigarg.com 2008-04-09 06:39 EDT-------
On the MRG kernel, starting the kdump service fails with the following error
(with 'set -x' in /etc/init.d/kdump)

/sbin/kexec --args-linux -p '--command-line=ro root=LABEL=/ rhgb quiet  irqpoll
maxcpus=1' --initrd=/boot/initrd-2.6.24.4-32.el5rtkdump.img
/boot/vmlinuz-2.6.24.4-32.el5rt
+ KEXEC_OUTPUT='/sbin/kexec: unrecognized option `--args-linux'\''
kexec 1.101 released 15 February 2005

On commenting out the KEXEC_ARGS= in /etc/sysconfig/kdump, kdump works fine. So
there are two solutions for this issue:

1) By default, the kdump userspace setting could disable --args-linux parameter
from being passed to the kdump kernel

2) Address the core reason for the problem. There is a kernel patch that
converts vmlinuz to ELF format. This patch is included in RHEL5.1 kernel but not
included in mainline.

# file /boot/vmlinuz-2.6.18-53.el5
/boot/vmlinuz-2.6.18-53.el5: ELF 64-bit LSB shared object, AMD x86-64, version
1, stripped
# file /boot/vmlinuz-2.6.24.4-32.el5rt
/boot/vmlinuz-2.6.24.4-32.el5rt: Linux kernel x86 boot executable RO-rootFS,
root_dev 0x901, swap_dev 0x2, Normal VGA

Notice the difference in the type of the vmlinuz from MRG and RHEL5.1

The patch is: http://lkml.org/lkml/2006/8/14/203 (Sachin Pant from the RAS team
pointed me to this patch).

Comment 8 IBM Bug Proxy 2008-04-14 21:24:30 UTC
------- Comment From dvhltc.com 2008-04-14 17:19 EDT-------
We are still on the hook for this patch.  I feel we do want this in MRG, and the
deadline is approaching for changes to the MRG kernel.  I propose we FOCUS this.
Dinakar did you have someone in mind to do this work, if not I can assign it.

Comment 9 IBM Bug Proxy 2008-04-15 14:08:58 UTC
------- Comment From Dinakar.G.com 2008-04-15 10:03 EDT-------
So there are two options here
1. We port the required relocatable kernel patches that are present in the
RHEL5.1 kernel to the MRG kernel. This is clearly not trivial
2. Change the kexec-tools userpsace rpm to not pass --args-linux parameter to
the kdump kernel. The RAS team has clarified that the --args-linux parameter is
no longer necessary and we have already verified that kdump works fine on both
the RHEL5.1 kernel and the MRG kernel without the above parameter being passed

I think option 2 is best way to go forward as it works both on the Enterprise
kernel and the MRG kernel. What does RedHat think ?

Comment 10 Jeff Burke 2008-04-21 19:40:43 UTC
Spoke with Neil (Maintainer of kexec-tools) here is what he had said.

"Currently the testing is being done with a version of kexec-tools that defaults
to using the linux argument passing style, but has no code to explicitly force
that (i.e. no detection of --args-linux). 

However we should be able to use the version of kexec-tools 1.102pre-21.el5 or
later which has code so we will not have to remove the --args-linux option from
the /ext/sysconfig/kdump. RHEL5.2 has kexec-tools-1.102pre-21.el5.

The next question is do/should we carry this in the MRG repo until RHEL5.2 is
available? Clark?

Comment 11 Clark Williams 2008-04-21 19:55:25 UTC
unsure. 

I just hacked a version of rt-setup to remove '--args-linux' from the
/etc/sysconfg/kdump file in the %post section. This works but I haven't pushed
it to the repository. I guess the question from my perspective is:

1. Which is safer?
2. Which is easier on both RHEL and MRG RT?

I suppose if someone is going back and forth between RHEL and RT then carrying
the modified kexec-tools is safer. And I suppose it's somewhat rude to modify
the configuration on installation and not restore it on uninstallation (as I was
thinking of doing in the rt-setup package). 

Hmmm, I think I'm talking myself into carrying the kexec-tools from RHEL5.2 in
our repo. 

What do you think Neil?

Clark


Comment 12 Neil Horman 2008-04-21 20:14:32 UTC
Not sure what you mean by moving the --args-linux into the %post section.  I
can't think of a place in %post where using that argument would do any good. 
anywho, as far as safety is concerned, I would say use the RHEL5.2 kesec tools. 

Comment 13 Clark Williams 2008-05-02 17:02:28 UTC
Scratch my above. we're going to carry the RHEL5.2 kexec-tools in the MRG beta
repository until we transition to being based on RHEL5.2


Comment 14 Clark Williams 2008-05-16 18:49:13 UTC
closing for now

Comment 15 IBM Bug Proxy 2008-05-27 16:57:02 UTC
------- Comment From sripathi.com 2008-05-27 12:48 EDT-------
(In reply to comment #27)
> ------- Comment From williams 2008-05-02 13:02 EST-------
> Scratch my above. we're going to carry the RHEL5.2 kexec-tools in the MRG beta
> repository until we transition to being based on RHEL5.2

Hmm... I don't see kexec-tools rpm under
http://ftp.redhat.com/pub/redhat/linux/beta/MRG/RHEL-5/. Isn't that the place to
find it?

Comment 16 IBM Bug Proxy 2008-06-02 18:09:33 UTC
------- Comment From dvhltc.com 2008-06-02 14:01 EDT-------
Package now present in beta repo, and IBM now basing on rhel5.2.  I believe we
can close this.

Comment 17 IBM Bug Proxy 2008-06-03 05:56:39 UTC
------- Comment From sripathi.com 2008-06-03 01:51 EDT-------
Closing on our side.


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