From: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
To: Anthony Wright <anthony@overnetdata.com>
Cc: "xen-devel@lists.xensource.com" <xen-devel@lists.xensource.com>
Subject: Re: dmidecode doesn't work under xen 4.1.1 on certain hardware
Date: Mon, 26 Sep 2011 15:37:33 -0400 [thread overview]
Message-ID: <20110926193732.GA10007@phenom.oracle.com> (raw)
In-Reply-To: <4E8090D4.2090009@overnetdata.com>
[-- Attachment #1: Type: text/plain, Size: 3070 bytes --]
On Mon, Sep 26, 2011 at 03:48:52PM +0100, Anthony Wright wrote:
> On 26/09/2011 15:13, Konrad Rzeszutek Wilk wrote:
> > On Fri, Sep 23, 2011 at 03:49:47PM +0100, Anthony Wright wrote:
> >> On 23/09/2011 14:32, Konrad Rzeszutek Wilk wrote:
> >>> On Fri, Sep 23, 2011 at 12:22:04PM +0100, Anthony Wright wrote:
> >>>> I have a xen 4.1.1 with a 3.0.4 linux kernel running on a Supermicro
> >>>> Supermicro X8DTL-iF motherboard with 16GB of RAM.
> >>>>
> >>>> If I run the 3.0.4 kernel on the bare metal dmidecode works fine. If I
> >>> Can you attach the beginning of the kernel bootup log? It should
> >>> have some entry about 1-1 mappings. Make sure to run Linux with "debug loglevel=8"
> >> Please find attached.
> >> 2011 Sep 23 14:45:41 kernel: [ 0.000000] 1-1 mapping on 9a->100
> >> 2011 Sep 23 14:45:41 kernel: [ 0.000000] 1-1 mapping on bf780->100000
> >> 2011 Sep 23 14:45:41 kernel: [ 0.000000] Set 264422 page(s) to 1-1 mapping.
> >> 2011 Sep 23 14:45:41 kernel: [ 0.000000] BIOS-provided physical RAM map:
> >> 2011 Sep 23 14:45:41 kernel: [ 0.000000] Xen: 0000000000000000 - 0000000000099000 (usable)
> >> 2011 Sep 23 14:45:41 kernel: [ 0.000000] Xen: 0000000000099800 - 0000000000100000 (reserved)
> > .. snip..
> >
> > So 99C00 is right at cusp of 'usuable' and 'reserved'. Meaning that region
> > falls within the 4KB page. And we did not set the 1-1 mapping for 99 (we
> > started at 9A).
> >
> > But now that I think of it - this is Linux E820 which does get modified.
> > Can you also provide the hypervisor E820 output? You can get 'xl dmesg'
> > for that. That should provide the "virgin" output of the e820 which we
> > use for 1-1 mapping.
> I'm not quite sure I understand all that, but I think you would find the
> xl dmesg output helpful, so I've attached it.
Thanks.
> __ __ _ _ _ _
> \ \/ /___ _ __ | || | / | / |
> \ // _ \ '_ \ | || |_ | | | |
> / \ __/ | | | |__ _|| |_| |
> /_/\_\___|_| |_| |_|(_)_(_)_|
>
> (XEN) Xen version 4.1.1 (@[unknown]) (gcc version 4.4.3 (GCC) ) Wed Sep 21 08:25:36 GMT 2011
> (XEN) Latest ChangeSet: unavailable
> (XEN) Bootloader: GNU GRUB 0.97
> (XEN) Command line:
> (XEN) Video information:
> (XEN) VGA is text mode 80x25, font 8x16
> (XEN) VBE/DDC methods: V2; EDID transfer time: 1 seconds
> (XEN) Disc information:
> (XEN) Found 4 MBR signatures
> (XEN) Found 4 EDD information structures
> (XEN) WARNING: Only the first 16 GB of the physical memory map can be accessed by Xen in 32-bit mode.
That bites ^^^^
> (XEN) Truncating RAM from 17825792kB to 16777216kB
> (XEN) Xen-e820 RAM map:
> (XEN) 0000000000000000 - 0000000000099800 (usable)
> (XEN) 0000000000099800 - 00000000000a0000 (reserved)
> (XEN) 00000000000e4000 - 0000000000100000 (reserved)
> (XEN) 0000000000100000 - 00000000bf780000 (usable)
> (XEN) 00000000bf78e000 - 00000000bf790000 type 9
Ok, so this patch should shed some light and potentially fix your problem. Please
try it out and attach the serial log for Linux kernel. Thx.
[-- Attachment #2: e820.patch --]
[-- Type: text/x-diff, Size: 689 bytes --]
diff --git a/arch/x86/xen/setup.c b/arch/x86/xen/setup.c
index 46d6d21..3368c30 100644
--- a/arch/x86/xen/setup.c
+++ b/arch/x86/xen/setup.c
@@ -166,9 +166,11 @@ static unsigned long __init xen_set_identity(const struct e820entry *list,
continue;
if ((entry->type == E820_RAM) || (entry->type == E820_UNUSABLE)) {
+ printk(KERN_INFO "(%lx->%lx) PCI: %lx->%lx (last %lx, now %lx)\n",
+ start, end, start_pci, start, last, end);
if (start > start_pci)
identity += set_phys_range_identity(
- PFN_UP(start_pci), PFN_DOWN(start));
+ PFN_DOWN(start_pci), PFN_DOWN(start));
/* Without saving 'last' we would gooble RAM too
* at the end of the loop. */
[-- Attachment #3: Type: text/plain, Size: 138 bytes --]
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
next prev parent reply other threads:[~2011-09-26 19:37 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-09-23 11:22 dmidecode doesn't work under xen 4.1.1 on certain hardware Anthony Wright
2011-09-23 13:32 ` Konrad Rzeszutek Wilk
2011-09-23 14:49 ` Anthony Wright
2011-09-26 14:13 ` Konrad Rzeszutek Wilk
2011-09-26 14:48 ` Anthony Wright
2011-09-26 19:37 ` Konrad Rzeszutek Wilk [this message]
2011-09-28 9:08 ` Anthony Wright
2011-09-28 13:28 ` Konrad Rzeszutek Wilk
2011-09-28 16:07 ` Anthony Wright
2011-09-28 16:32 ` Konrad Rzeszutek Wilk
2011-09-28 17:02 ` David Vrabel
2011-10-04 12:19 ` Anthony Wright
2011-10-05 15:16 ` Konrad Rzeszutek Wilk
2011-10-06 12:53 ` Anthony Wright
2011-10-06 16:07 ` Konrad Rzeszutek Wilk
2011-10-10 15:25 ` Anthony Wright
2011-10-10 16:15 ` Konrad Rzeszutek Wilk
2011-10-10 16:18 ` Konrad Rzeszutek Wilk
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20110926193732.GA10007@phenom.oracle.com \
--to=konrad.wilk@oracle.com \
--cc=anthony@overnetdata.com \
--cc=xen-devel@lists.xensource.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.