lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <47B33C56.3070502@inria.fr>
Date:	Wed, 13 Feb 2008 19:52:06 +0100
From:	Brice Goglin <Brice.Goglin@...ia.fr>
To:	Yinghai Lu <yhlu.kernel@...il.com>
CC:	Andrew Morton <akpm@...ux-foundation.org>, Andi Kleen <ak@...e.de>,
	Ingo Molnar <mingo@...e.hu>, Paul Mundt <lethal@...ux-sh.org>,
	Chris Snook <csnook@...hat.com>, linux-kernel@...r.kernel.org
Subject: Re: Purpose of numa_node?

Yinghai Lu wrote:
>>> Have a look at the above link. I don't get -1. I get 0 everywhere, while
>>> I should get 1 for some devices. And if I unplug/replug a device using
>>> fakephp, numa_node becomes correct (1 instead of 0). This just looks
>>> like the code is there but things are initialized in the wrong order.
>>>       
>> do you have
>> ...
>> bus 00 -> pxm 0 -> node 0
>> ...
>> bus 40 -> pxm 1 -> node 1
>> ...
>> bus 80 -> pxm 1 -> node 1
>>
>> in your boot msg or dmesg?
>>
>> if not, your dsdt doesn't have _PXM for pci root bus. or you need to
>> ask your HW vendor to add that in their BIOS, or use my patchset.
>>     
>
> please try the attached patchset
>
> please get x86.git then use quilt apply the patch
>
> http://people.redhat.com/mingo/x86.git/README
>   

I finally managed to test this and it seems to work. I now get the
following numa_node attributes:
/sys/devices/pci0000:00/0000:00:01.0/numa_node    0
/sys/devices/pci0000:00/0000:00:07.0/numa_node    0
/sys/devices/pci0000:00/0000:00:07.0/0000:38:0d.0/numa_node    0
/sys/devices/pci0000:00/0000:00:08.0/numa_node    0
/sys/devices/pci0000:00/0000:00:08.1/numa_node    0
/sys/devices/pci0000:00/0000:00:08.2/numa_node    0
/sys/devices/pci0000:00/0000:00:09.0/numa_node    0
/sys/devices/pci0000:00/0000:00:09.1/numa_node    0
/sys/devices/pci0000:00/0000:00:09.2/numa_node    0
/sys/devices/pci0000:00/0000:00:0a.0/numa_node    0
/sys/devices/pci0000:00/0000:00:0a.0/0000:22:00.0/numa_node    0
/sys/devices/pci0000:00/0000:00:0b.0/numa_node    0
/sys/devices/pci0000:00/0000:00:0c.0/numa_node    0
/sys/devices/pci0000:00/0000:00:0c.0/0000:0c:00.0/numa_node    0
/sys/devices/pci0000:00/0000:00:0c.0/0000:0c:00.0/0000:0d:00.0/numa_node   
0
/sys/devices/pci0000:00/0000:00:0d.0/numa_node    0
/sys/devices/pci0000:00/0000:00:0d.0/0000:01:00.0/numa_node    0
/sys/devices/pci0000:00/0000:00:0e.0/numa_node    0
/sys/devices/pci0000:00/0000:00:0e.0/0000:17:00.0/numa_node    0
/sys/devices/pci0000:00/0000:00:0e.0/0000:17:00.0/0000:18:00.0/numa_node   
0
/sys/devices/pci0000:00/0000:00:18.0/numa_node    0
/sys/devices/pci0000:00/0000:00:18.1/numa_node    0
/sys/devices/pci0000:00/0000:00:18.2/numa_node    0
/sys/devices/pci0000:00/0000:00:18.3/numa_node    0
/sys/devices/pci0000:00/0000:00:19.0/numa_node    0
/sys/devices/pci0000:00/0000:00:19.1/numa_node    0
/sys/devices/pci0000:00/0000:00:19.2/numa_node    0
/sys/devices/pci0000:00/0000:00:19.3/numa_node    0
/sys/devices/pci0000:00/0000:00:1a.0/numa_node    0
/sys/devices/pci0000:00/0000:00:1a.1/numa_node    0
/sys/devices/pci0000:00/0000:00:1a.2/numa_node    0
/sys/devices/pci0000:00/0000:00:1a.3/numa_node    0
/sys/devices/pci0000:00/0000:00:1b.0/numa_node    0
/sys/devices/pci0000:00/0000:00:1b.1/numa_node    0
/sys/devices/pci0000:00/0000:00:1b.2/numa_node    0
/sys/devices/pci0000:00/0000:00:1b.3/numa_node    0
/sys/devices/pci0000:40/0000:40:0f.0/numa_node    1
/sys/devices/pci0000:40/0000:40:10.0/numa_node    1
/sys/devices/pci0000:40/0000:40:11.0/numa_node    1
/sys/devices/pci0000:40/0000:40:12.0/numa_node    1
/sys/devices/pci0000:40/0000:40:12.0/0000:51:00.0/numa_node    1
/sys/devices/pci0000:40/0000:40:13.0/numa_node    1

The 5 last lines above would report 0 instead of 1 with an older kernel.
Everything looks correct now (0000:40 is the second PCIe bus and it is
attached to socket #1).

Thanks a lot, Yinghai! Are you planning to merge these patches in the
near future? 2.6.26?

Brice

PS: I saved the corresponding dmesg. If you want to look at it, please
let me know.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ