* SMBIOS problem with PXE booting
@ 2007-01-05 4:25 Evan Bigall
2007-01-05 16:24 ` Tim Deegan
0 siblings, 1 reply; 2+ messages in thread
From: Evan Bigall @ 2007-01-05 4:25 UTC (permalink / raw)
To: xen-devel
I am using Xen 3.03 on IBM T60s running FC5 and RHEL4 with VT enabled.
We have a standard linux bootable iso that we use to run diagnostics
(2.6.11 kernel). When I boot that image in an HVM guest, the
diagnostics run fine, and SMBIOS looks normal.
When I change nothing in the config but the image to boot, and then boot
eb-5.4.2-rtl8139.iso (downloaded from *rom*-*o*-*matic*.net), the iso
boots, correctly, PXEs, tftps our kernel and ramdisk, but then if I run
dmidecode on the ramdisk, it looks like SMBIOS has been corrupted somehow.
A correct dmidecode starts out like this:
SMBIOS 2.4 present.
10 structures occupying 283 bytes
Table at 0x0009f01
Handle 0x0000
DMI type 0, 24 bytes
BIOS information
Vendor: Xen
Version 3.0.3-0
[etc...]
The corrupted one looks like this:
SMBIOS 2.4 present.
10 structures occupying 283 bytes
Table at 0x0009f01f
Handle 0x009e
DMI type 0, 0 bytes.
BIOS Information
Handle 0x09e0
DMI type 158, 0 bytes.
I've tried integrating the rom image directly into
/usr/lib/xen/boot/hvmloader, but get the same results.
Any ideas?
I've also noted that in the HVM guest, if I try to boot an SMP kernel,
it hangs, only the non-SMP kernel successfully boots.
Evan
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: SMBIOS problem with PXE booting
2007-01-05 4:25 SMBIOS problem with PXE booting Evan Bigall
@ 2007-01-05 16:24 ` Tim Deegan
0 siblings, 0 replies; 2+ messages in thread
From: Tim Deegan @ 2007-01-05 16:24 UTC (permalink / raw)
To: Evan Bigall; +Cc: xen-devel
[-- Attachment #1: Type: text/plain, Size: 596 bytes --]
Hi,
At 11:25 +0700 on 05 Jan (1167996340), Evan Bigall wrote:
> When I change nothing in the config but the image to boot, and then boot
> eb-5.4.2-rtl8139.iso (downloaded from *rom*-*o*-*matic*.net), the iso
> boots, correctly, PXEs, tftps our kernel and ramdisk, but then if I run
> dmidecode on the ramdisk, it looks like SMBIOS has been corrupted somehow.
Indeed. The ROMBIOS is reporting the wrong amount of base memory
(0x0 -- 0x9fc00), so etherboot relocates itself on top of the SMBIOS
tables (which are at 0x9f000). The attached patch should fix it for
Xen 3.0.3.
Cheers,
Tim.
[-- Attachment #2: basemem --]
[-- Type: text/plain, Size: 841 bytes --]
diff -r 6b3bb79cb1c9 tools/firmware/rombios/rombios.c
--- a/tools/firmware/rombios/rombios.c Tue Jan 02 14:46:13 2007 +0000
+++ b/tools/firmware/rombios/rombios.c Fri Jan 05 16:12:02 2007 +0000
@@ -1435,10 +1435,17 @@ copy_e820_table()
copy_e820_table()
{
Bit8u nr_entries = read_byte(0x9000, 0x1e8);
+ Bit32u base_mem;
if (nr_entries > 32)
nr_entries = 32;
write_word(0xe000, 0x8, nr_entries);
memcpyb(0xe000, 0x10, 0x9000, 0x2d0, nr_entries * 0x14);
+ /* Report the proper base memory size at address 0x0413: otherwise
+ * non-e820 code will clobber things if BASE_MEM_IN_K is bigger than
+ * the first e820 entry. Get the size by reading the second 64bit
+ * field of the first e820 slot. */
+ base_mem = read_dword(0x9000, 0x2d0 + 8);
+ write_word(0x40, 0x13, base_mem >> 10);
}
#endif /* HVMASSIST */
[-- Attachment #3: Type: text/plain, Size: 138 bytes --]
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2007-01-05 16:24 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-01-05 4:25 SMBIOS problem with PXE booting Evan Bigall
2007-01-05 16:24 ` Tim Deegan
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.