Bug 543064 - No NUMA node hash function found on a EX machine
Summary: No NUMA node hash function found on a EX machine
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: kernel-xen
Version: 5.4.z
Hardware: All
OS: Linux
medium
medium
Target Milestone: rc
: ---
Assignee: Laszlo Ersek
QA Contact: Virtualization Bugs
URL:
Whiteboard:
Depends On:
Blocks: 514490
TreeView+ depends on / blocked
 
Reported: 2009-12-01 16:18 UTC by Igor Zhang
Modified: 2012-02-21 03:26 UTC (History)
8 users (show)

Fixed In Version: kernel-2.6.18-285.el5
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2012-02-21 03:26:44 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
boot msg with loglvl set to all (43.11 KB, text/plain)
2009-12-02 02:55 UTC, Igor Zhang
no flags Details
fix nodes' memory parsing when SRAT table includes future-hotplug memory range (2.02 KB, patch)
2011-08-22 13:06 UTC, Laszlo Ersek
no flags Details | Diff


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHSA-2012:0150 0 normal SHIPPED_LIVE Moderate: Red Hat Enterprise Linux 5.8 kernel update 2012-02-21 07:35:24 UTC

Description Igor Zhang 2009-12-01 16:18:05 UTC
Description of problem:
Boot kernel-xen-2.6.18-164.8.1.el5.x86_64 with numa on, but numa fails.

Version-Release number of selected component (if applicable):
kernel-xen-2.6.18-164.8.1.el5.x86_64

How reproducible:
Append numa=on to the kernel parameters in grub.conf

Steps to Reproduce:
1.
2.
3.
  
Actual results:
Numa fails

Expected results:
Numa works.

Additional info:
Xen version 3.1.2-164.8.1.el5 (mockbuild) (gcc version 4.1.2 20080704 (Red Hat 4.1.2-46)) Mon Nov 23 13:00:50 EST 2009
 Latest ChangeSet: unavailable

(XEN) Command line: com1=115200n81 console=com1 numa=on
(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 1 MBR signatures
(XEN)  Found 1 EDD information structures
(XEN) Xen-e820 RAM map:
(XEN)  0000000000000000 - 000000000009b400 (usable)
(XEN)  000000000009b400 - 00000000000a0000 (reserved)
(XEN)  00000000000e0000 - 0000000000100000 (reserved)
(XEN)  0000000000100000 - 0000000078c8e000 (usable)
(XEN)  0000000078c8e000 - 0000000078ea0000 (ACPI NVS)
(XEN)  0000000078ea0000 - 0000000079261000 (ACPI data)
(XEN)  0000000079261000 - 00000000792d3000 (reserved)
(XEN)  00000000792d3000 - 00000000792da000 (ACPI data)
(XEN)  00000000792da000 - 00000000792ee000 (reserved)
(XEN)  00000000792ee000 - 000000007930a000 (ACPI data)
(XEN)  000000007930a000 - 0000000079318000 (reserved)
(XEN)  0000000079318000 - 0000000079319000 (ACPI data)
(XEN)  0000000079319000 - 000000007931d000 (reserved)
(XEN)  000000007931d000 - 000000007931f000 (ACPI data)
(XEN)  000000007931f000 - 0000000079321000 (reserved)
(XEN)  0000000079321000 - 0000000079345000 (ACPI data)
(XEN)  0000000079345000 - 0000000079366000 (reserved)
(XEN)  0000000079366000 - 0000000079395000 (ACPI data)
(XEN)  0000000079395000 - 00000000793d6000 (reserved)
(XEN)  00000000793d6000 - 0000000079696000 (ACPI data)
(XEN)  0000000079696000 - 00000000796c2000 (reserved)
(XEN)  00000000796c2000 - 000000007998b000 (ACPI data)
(XEN)  000000007998b000 - 0000000079b8b000 (ACPI NVS)
(XEN)  0000000079b8b000 - 0000000079d8d000 (ACPI data)
(XEN)  0000000079d8d000 - 0000000079d90000 (reserved)
(XEN)  0000000079d90000 - 0000000079e20000 (ACPI data)
(XEN)  0000000079e20000 - 0000000079e8a000 (reserved)
(XEN)  0000000079e8a000 - 000000007bd5f000 (ACPI data)
(XEN)  000000007bd5f000 - 000000007be4f000 (reserved)
(XEN)  000000007be4f000 - 000000007bf98000 (ACPI data)
(XEN)  000000007bf98000 - 000000007bfcf000 (ACPI NVS)
(XEN)  000000007bfcf000 - 000000007bfff000 (ACPI data)
(XEN)  000000007bfff000 - 0000000090000000 (reserved)
(XEN)  00000000fc000000 - 00000000fd000000 (reserved)
(XEN)  00000000fed1c000 - 00000000fed20000 (reserved)
(XEN)  00000000ff000000 - 0000000100000000 (reserved)
(XEN)  0000000100000000 - 0000001c80000000 (usable)
(XEN) System RAM: 114572MB (117321892kB)
(XEN) SRAT: No NUMA node hash function found. Contact maintainer
(XEN) SRAT: SRAT not used.
(XEN) Xen heap: 13MB (13428kB)
(XEN) Domain heap initialised: DMA width 32 bits
(XEN) Processor #0 6:14 APIC version 21
(XEN) Processor #64 6:14 APIC version 21
(XEN) Processor #32 6:14 APIC version 21
(XEN) Processor #96 6:14 APIC version 21
(XEN) Processor #2 6:14 APIC version 21
(XEN) Processor #66 6:14 APIC version 21

Comment 1 Chris Lalancette 2009-12-01 16:28:47 UTC
Can you boot the hypervisor and add "loglvl=all" to the hypervisor command-line as well?  That should give us a bit more information about why it failed, although I have a guess.

Also, can you add the machine details so that someone can reserve the machine and take a look?

Thanks,
Chris Lalancette

Comment 2 Bhavna Sarathy 2009-12-01 17:24:53 UTC
kernel-2.6.18-175 has a Xen NUMA fix (BZ 526051), please try the latest kernel and report if issue persists.

Comment 3 Igor Zhang 2009-12-02 02:39:43 UTC
The machine is intel-s3e36-01.rhts.eng.nay.redhat.com.
First, I retested this bug with kernel-2.6.18-175 on the same machine as Bhavna said, but it still failed and log was the same.
BTW, I also tested the 5.4 z-stream bug #539684(BZ 526051) these days and that one was for MC.
From then test result, I guess problem is different as for these two bugs.

Comment 4 Igor Zhang 2009-12-02 02:55:46 UTC
Created attachment 375287 [details]
boot msg with loglvl set to all

Yes. With loglvl, probelm emerged.

Comment 5 Chris Lalancette 2009-12-02 07:35:40 UTC
That's more or less what I expected, but it is good to get confirmation.  To be clear, even if you get this message, the system still boots and works, right?

It's still a bug, I just want to make sure the hypervisor is falling back and doing the right thing in the case it can't properly enable NUMA.

Chris Lalancette

Comment 6 Igor Zhang 2009-12-02 07:42:34 UTC
Yes, it boots and works. But numa doesnt work judged from the boot msgs and command line shows.

Comment 7 Paolo Bonzini 2010-06-22 18:21:59 UTC
I suppose the same happens for a bare-metal kernel?

Comment 9 Paolo Bonzini 2010-07-01 08:18:22 UTC
kernel-2.6.18-205.el5 would be fine.

Comment 11 Bill Burns 2010-12-06 16:46:27 UTC
reassigned

Comment 12 Paolo Bonzini 2011-04-05 17:25:06 UTC
The configuration here is strange:

(XEN) SRAT: Node 0 PXM 0 0-5d00000000
(XEN) SRAT: Node 2 PXM 1 880000000-7d00000000

Note that the nodes overlap due to the hotplug areas.  Needs to see what Linux does in this case.

Comment 13 Laszlo Ersek 2011-07-28 16:59:10 UTC
(In reply to comment #3)
> The machine is intel-s3e36-01.rhts.eng.nay.redhat.com.

(I don't have permission to provision the machine, so I can't retest.)

Probably irrelevant, but:
- the Beaker data sheet (the Details tab) doesn't mention "NUMA Nodes" at all for this machine,
- according to attachment 375287 [details], "xenheap_megabytes" was not passed to Xen, even though Beaker shows 110 GB RAM.

(In reply to comment #12)
> The configuration here is strange:
> 
> (XEN) SRAT: Node 0 PXM 0 0-5d00000000
> (XEN) SRAT: Node 2 PXM 1 880000000-7d00000000
> 
> Note that the nodes overlap due to the hotplug areas.  Needs to see what Linux
> does in this case.

Perhaps...

(
http://xenbits.xensource.com/hg/xen-unstable.hg/rev/ebb07c5934c8
http://xenbits.xensource.com/hg/xen-unstable.hg/rev/1f5f1674e53f
)

http://xenbits.xensource.com/hg/xen-unstable.hg/rev/e5a757ce7845

?

Comment 19 Laszlo Ersek 2011-08-22 13:06:02 UTC
Created attachment 519278 [details]
fix nodes' memory parsing when SRAT table includes future-hotplug memory range

backport xen-unstable c/s 20053:ebb07c5934c8
cannibalize page_is_ram_type() into maddr_is_conv_ram()

Comment 23 Laszlo Ersek 2011-08-23 09:55:05 UTC
Confirming with -281:

  (XEN) Command line: loglvl=all guest_loglvl=all bootscrub=0 numa=on
        com1=115200,8n1

This is the RAM map:

  (XEN) Xen-e820 RAM map:
  (XEN)  0000000000000000 - 000000000009b000 (usable)
  [...]
  (XEN)  0000000100000000 - 0000002080000000 (usable)

Then the hot-plug zones:

  (XEN) SRAT: hot plug zone found 2100000000 - 4100000000 
  (XEN) SRAT: hot plug zone found 4100000000 - 6100000000 
  (XEN) SRAT: hot plug zone found 6100000000 - 8100000000 
  (XEN) SRAT: hot plug zone found 8100000000 - a100000000 
  (XEN) SRAT: hot plug zone found a100000000 - c100000000 
  (XEN) SRAT: hot plug zone found c100000000 - e100000000 
  (XEN) SRAT: hot plug zone found e100000000 - 10100000000 
  (XEN) SRAT: hot plug zone found 10100000000 - 12100000000 

Verdict:

  (XEN) NUMA: Using 25 for the hash shift.
  (XEN) Your memory is not aligned you need to rebuild your kernel with a
        bigger NODEMAPSIZE shift=25
  (XEN) SRAT: No NUMA node hash function found. Contact maintainer
  (XEN) SRAT: SRAT not used.
  (XEN) No NUMA configuration found
  (XEN) Faking a node at 0000000000000000-0000002080000000
  (XEN) Xen heap: 13MB (13932kB)
  (XEN) Domain heap initialised: DMA width 32 bits

Notice how the lowest hot-plug zone (2100000000) is above the highest usable (or any other kind of) area provided in the RAM map (2080000000).

The patched hypervisor (-281 + attachment 519278 [details]) logs this instead (after displaying the same e820 map):

  (XEN) SRAT: unsupported future hotplug zone found 2100000000 - 4100000000 
  (XEN) SRAT: unsupported future hotplug zone found 4100000000 - 6100000000 
  (XEN) SRAT: unsupported future hotplug zone found 6100000000 - 8100000000 
  (XEN) SRAT: unsupported future hotplug zone found 8100000000 - a100000000 
  (XEN) SRAT: unsupported future hotplug zone found a100000000 - c100000000 
  (XEN) SRAT: unsupported future hotplug zone found c100000000 - e100000000 
  (XEN) SRAT: unsupported future hotplug zone found e100000000 - 10100000000 
  (XEN) SRAT: unsupported future hotplug zone found 10100000000 - 12100000000 
  (XEN) NUMA: Using 31 for the hash shift.
  (XEN) Xen heap: 13MB (13932kB)
  (XEN) Reserving non-aligned node boundary @ mfn 8912896
  (XEN) Reserving non-aligned node boundary @ mfn 17301504
  (XEN) Reserving non-aligned node boundary @ mfn 25690112
  (XEN) Domain heap initialised: DMA width 32 bits

Comment 26 RHEL Program Management 2011-09-02 10:59:24 UTC
This request was evaluated by Red Hat Product Management for inclusion in a Red
Hat Enterprise Linux maintenance release.  Product Management has requested
further review of this request by Red Hat Engineering, for potential
inclusion in a Red Hat Enterprise Linux Update release for currently deployed
products.  This request is not yet committed for inclusion in an Update
release.

Comment 28 Jarod Wilson 2011-09-16 20:18:32 UTC
Patch(es) available in kernel-2.6.18-285.el5
You can download this test kernel (or newer) from http://people.redhat.com/jwilson/el5
Detailed testing feedback is always welcomed.

Comment 31 errata-xmlrpc 2012-02-21 03:26:44 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

http://rhn.redhat.com/errata/RHSA-2012-0150.html


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