Bug 30837
Summary: | kernel command line truncated | ||
---|---|---|---|
Product: | [Retired] Red Hat Linux | Reporter: | Jim Wright <jwright> |
Component: | pxe | Assignee: | Elliot Lee <sopwith> |
Status: | CLOSED CURRENTRELEASE | QA Contact: | Brock Organ <borgan> |
Severity: | high | Docs Contact: | |
Priority: | medium | ||
Version: | 7.0 | CC: | dr |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | i386 | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2001-09-11 18:00:10 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Jim Wright
2001-03-06 19:22:45 UTC
I've been trying to find why the command line I type in linux.0 is truncated when read by linux.1. I've gotten into the code to try and track this down. linux.0 In pxe-linux/nbp.linux/prepare.c, I've printed the command line as it is present in the in-memory copy of the (pseudo) boot sector. It is correct at this point. I need to come up with assembly code or some trick so I can print the command line portion of the boot sector after it is relocated to memory at address 0x9000:0x0024. This is what I'm working on at the moment. In examination of pxe-linux/nbp.linux/setup.s, I don't see where memory corruption could occur. This is the last code executed by linux.0 before control is passed to the in-memory copy of linux.1. linux.1 In arch/i386/kernel/head.S I've added code to dump 128 bytes of memory starting at address 0x9000:0x0024. This happens after arch/i386/boot/* has run to decompress the kernel. Otherwise, it is among the very first things that happen in the running kernel. From this dump, I see that my complete command line is present in memory. Almost: Characters 0 through 27 are as I typed. Characters 28 through 45 are replaced by nulls. Characters 46 on are as I typed them, with a final null So, it looks like something is slapping 18 null bytes in the middle of where the command line is supposed to be. Since this corruption does not (consistently) occur when "normally" booting a kernel, I think the problem must be in the linux.0 code. Sounds like a bug in pxe, then. Grr, sorry for the unresponsiveness of the previous pxe maintainer. Unfortunately I am pretty clueless about how it works. Would you happen to have found a solution or any more information in the time elapsed since your last report? The "solution" was to not use the pxe stuff that redhat provides, which is based on code written by intel. Instead, I used the much more robust pxelinux package from H. Peter Anvin. Which means I can close this bug report, since 'pxelinux' is part of RHL. |