Eric Dumazet
a47a126ad5
vmallocinfo: add NUMA information
Christoph recently added /proc/vmallocinfo file to get information about
vmalloc allocations.
This patch adds NUMA specific information, giving number of pages
allocated on each memory node.
This should help to check that vmalloc() is able to respect NUMA policies.
Example of output on a four nodes machine (one cpu per node)
1) network hash tables are evenly spreaded on four nodes (OK) (Same
point for inodes and dentries hash tables)
2) iptables tables (x_tables) are correctly allocated on each cpu node
(OK).
3) sys_swapon() allocates its memory from one node only.
4) each loaded module is using memory on one node.
Sysadmins could tune their setup to change points 3) and 4) if necessary.
grep "pages=" /proc/vmallocinfo
0xffffc20000000000-0xffffc20000201000 2101248 alloc_large_system_hash+0x204/0x2c0 pages=512 vmalloc N0=128 N1=128 N2=128 N3=128
0xffffc20000201000-0xffffc20000302000 1052672 alloc_large_system_hash+0x204/0x2c0 pages=256 vmalloc N0=64 N1=64 N2=64 N3=64
0xffffc2000031a000-0xffffc2000031d000 12288 alloc_large_system_hash+0x204/0x2c0 pages=2 vmalloc N1=1 N2=1
0xffffc2000031f000-0xffffc2000032b000 49152 cramfs_uncompress_init+0x2e/0x80 pages=11 vmalloc N0=3 N1=3 N2=2 N3=3
0xffffc2000033e000-0xffffc20000341000 12288 sys_swapon+0x640/0xac0 pages=2 vmalloc N0=2
0xffffc20000341000-0xffffc20000344000 12288 xt_alloc_table_info+0xfe/0x130 [x_tables] pages=2 vmalloc N0=2
0xffffc20000344000-0xffffc20000347000 12288 xt_alloc_table_info+0xfe/0x130 [x_tables] pages=2 vmalloc N1=2
0xffffc20000347000-0xffffc2000034a000 12288 xt_alloc_table_info+0xfe/0x130 [x_tables] pages=2 vmalloc N2=2
0xffffc2000034a000-0xffffc2000034d000 12288 xt_alloc_table_info+0xfe/0x130 [x_tables] pages=2 vmalloc N3=2
0xffffc20004381000-0xffffc20004402000 528384 alloc_large_system_hash+0x204/0x2c0 pages=128 vmalloc N0=32 N1=32 N2=32 N3=32
0xffffc20004402000-0xffffc20004803000 4198400 alloc_large_system_hash+0x204/0x2c0 pages=1024 vmalloc vpages N0=256 N1=256 N2=256 N3=256
0xffffc20004803000-0xffffc20004904000 1052672 alloc_large_system_hash+0x204/0x2c0 pages=256 vmalloc N0=64 N1=64 N2=64 N3=64
0xffffc20004904000-0xffffc20004bec000 3047424 sys_swapon+0x640/0xac0 pages=743 vmalloc vpages N0=743
0xffffffffa0000000-0xffffffffa000f000 61440 sys_init_module+0xc27/0x1d00 pages=14 vmalloc N1=14
0xffffffffa000f000-0xffffffffa0014000 20480 sys_init_module+0xc27/0x1d00 pages=4 vmalloc N0=4
0xffffffffa0014000-0xffffffffa0017000 12288 sys_init_module+0xc27/0x1d00 pages=2 vmalloc N0=2
0xffffffffa0017000-0xffffffffa0022000 45056 sys_init_module+0xc27/0x1d00 pages=10 vmalloc N1=10
0xffffffffa0022000-0xffffffffa0028000 24576 sys_init_module+0xc27/0x1d00 pages=5 vmalloc N3=5
0xffffffffa0028000-0xffffffffa0050000 163840 sys_init_module+0xc27/0x1d00 pages=39 vmalloc N1=39
0xffffffffa0050000-0xffffffffa0052000 8192 sys_init_module+0xc27/0x1d00 pages=1 vmalloc N1=1
0xffffffffa0052000-0xffffffffa0056000 16384 sys_init_module+0xc27/0x1d00 pages=3 vmalloc N1=3
0xffffffffa0056000-0xffffffffa0081000 176128 sys_init_module+0xc27/0x1d00 pages=42 vmalloc N3=42
0xffffffffa0081000-0xffffffffa00ae000 184320 sys_init_module+0xc27/0x1d00 pages=44 vmalloc N3=44
0xffffffffa00ae000-0xffffffffa00b1000 12288 sys_init_module+0xc27/0x1d00 pages=2 vmalloc N3=2
0xffffffffa00b1000-0xffffffffa00b9000 32768 sys_init_module+0xc27/0x1d00 pages=7 vmalloc N0=7
0xffffffffa00b9000-0xffffffffa00c4000 45056 sys_init_module+0xc27/0x1d00 pages=10 vmalloc N3=10
0xffffffffa00c6000-0xffffffffa00e0000 106496 sys_init_module+0xc27/0x1d00 pages=25 vmalloc N2=25
0xffffffffa00e0000-0xffffffffa00f1000 69632 sys_init_module+0xc27/0x1d00 pages=16 vmalloc N2=16
0xffffffffa00f1000-0xffffffffa00f4000 12288 sys_init_module+0xc27/0x1d00 pages=2 vmalloc N3=2
0xffffffffa00f4000-0xffffffffa00f7000 12288 sys_init_module+0xc27/0x1d00 pages=2 vmalloc N3=2
[akpm@linux-foundation.org: fix comment]
Signed-off-by: Eric Dumazet <dada1@cosmosbay.com>
Cc: Christoph Lameter <cl@linux-foundation.org>
Cc: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
2008-07-24 10:47:17 -07:00 |
| .. |
|
configfs
|
configfs: Allow ->make_item() and ->make_group() to return detailed errors.
|
2008-07-17 15:21:29 -07:00 |
|
00-INDEX
|
Documentation: move rpc-cache.txt to filesystems/
|
2008-04-11 13:20:52 -06:00 |
|
9p.txt
|
9p: add virtio transport
|
2007-10-23 13:47:31 -05:00 |
|
adfs.txt
|
Fix typos in /Documentation : 'U-Z'
|
2006-11-30 04:58:40 +01:00 |
|
affs.txt
|
[PATCH] kernel Doc/ URL corrections
|
2005-11-22 09:14:30 -08:00 |
|
afs.txt
|
[AFS]: Update the AFS fs documentation.
|
2007-04-26 15:57:43 -07:00 |
|
automount-support.txt
|
VFS: Unexport do_kern_mount() and clean up simple_pin_fs()
|
2006-06-09 09:34:16 -04:00 |
|
befs.txt
|
Fix typos in Documentation/: 'Q'-'R'
|
2006-10-03 22:54:15 +02:00 |
|
bfs.txt
|
remove mention of CONFIG_KMOD from documentation
|
2008-07-22 19:24:29 +10:00 |
|
cifs.txt
|
Linux-2.6.12-rc2
|
2005-04-16 15:20:36 -07:00 |
|
coda.txt
|
Linux-2.6.12-rc2
|
2005-04-16 15:20:36 -07:00 |
|
cramfs.txt
|
Linux-2.6.12-rc2
|
2005-04-16 15:20:36 -07:00 |
|
dentry-locking.txt
|
[PATCH] VFS: split dentry locking documentation
|
2005-11-07 07:53:56 -08:00 |
|
directory-locking
|
Documentation: Fix up docs still talking about i_sem
|
2007-05-24 10:16:17 -07:00 |
|
dlmfs.txt
|
Fix typos in Documentation/: 'D'-'E'
|
2006-10-03 22:47:42 +02:00 |
|
dnotify.txt
|
Documentation: move dnotify.txt to filesystems/
|
2008-02-07 08:42:17 -08:00 |
|
ecryptfs.txt
|
eCryptfs: Move ecryptfs docs into Documentation/filesystems/
|
2007-07-17 10:23:08 -07:00 |
|
Exporting
|
exportfs: update documentation
|
2007-10-22 08:13:21 -07:00 |
|
ext2.txt
|
Fix typos in Documentation/: 'N'-'P'
|
2006-10-03 22:52:05 +02:00 |
|
ext3.txt
|
documentation/ext3: grammar fixes
|
2007-10-20 02:38:36 +02:00 |
|
ext4.txt
|
ext4: Documention update for new ordered mode and delayed allocation
|
2008-07-11 19:27:31 -04:00 |
|
files.txt
|
Documentation/filesystems/files.txt: remove rcuref_inc_lf() reverences
|
2007-10-20 01:47:49 +02:00 |
|
fuse.txt
|
[PATCH] fuse: fix typo
|
2006-12-30 10:56:45 -08:00 |
|
gfs2-glocks.txt
|
[GFS2] Glock documentation
|
2008-06-27 09:39:53 +01:00 |
|
gfs2.txt
|
[GFS2] Update documentation
|
2006-04-25 15:44:04 -04:00 |
|
hfs.txt
|
Linux-2.6.12-rc2
|
2005-04-16 15:20:36 -07:00 |
|
hfsplus.txt
|
Documentation: document HFSPlus
|
2007-07-31 15:39:38 -07:00 |
|
hpfs.txt
|
misc doc and kconfig typos
|
2007-05-09 08:58:15 +02:00 |
|
inotify.txt
|
[PATCH] inotify (5/5): update kernel documentation
|
2006-06-20 05:25:19 -04:00 |
|
isofs.txt
|
isofs: implement dmode option
|
2008-02-08 09:22:38 -08:00 |
|
jfs.txt
|
JFS: document uid, gid, and umask mount options in jfs.txt
|
2007-03-09 10:27:31 -06:00 |
|
Locking
|
access_process_vm device memory infrastructure
|
2008-07-24 10:47:15 -07:00 |
|
locks.txt
|
Documentation: move locks.txt in filesystems/
|
2007-10-09 18:32:45 -04:00 |
|
mandatory-locking.txt
|
locks: add warning about mandatory locking races
|
2007-10-09 18:32:45 -04:00 |
|
ncpfs.txt
|
Linux-2.6.12-rc2
|
2005-04-16 15:20:36 -07:00 |
|
nfs-rdma.txt
|
nfs: rewrap NFS/RDMA documentation to 80 lines
|
2008-06-30 15:24:43 -04:00 |
|
nfsroot.txt
|
Documentation: move nfsroot.txt to filesystems/
|
2008-04-11 13:18:01 -06:00 |
|
ntfs.txt
|
NTFS: Fix a mount time deadlock.
|
2007-10-12 09:16:30 -07:00 |
|
ocfs2.txt
|
[PATCH 2/2] ocfs2: cluster aware flock()
|
2008-01-25 15:05:43 -08:00 |
|
porting
|
iget: remove iget() and the read_inode() super op as being obsolete
|
2008-02-07 08:42:29 -08:00 |
|
proc.txt
|
vmallocinfo: add NUMA information
|
2008-07-24 10:47:17 -07:00 |
|
quota.txt
|
quota: send messages via netlink
|
2007-10-17 08:42:56 -07:00 |
|
ramfs-rootfs-initramfs.txt
|
Documentation: fix type error
|
2008-02-03 14:50:11 +02:00 |
|
relay.txt
|
doc: use correct debugfs mountpoint
|
2008-02-03 16:30:51 +02:00 |
|
romfs.txt
|
Linux-2.6.12-rc2
|
2005-04-16 15:20:36 -07:00 |
|
rpc-cache.txt
|
Documentation: move rpc-cache.txt to filesystems/
|
2008-04-11 13:20:52 -06:00 |
|
seq_file.txt
|
Document seq_path_root()
|
2008-04-25 11:56:37 -06:00 |
|
sharedsubtree.txt
|
Documentation: move sharedsubtrees.txt to filesystems/
|
2008-02-07 08:42:17 -08:00 |
|
smbfs.txt
|
Linux-2.6.12-rc2
|
2005-04-16 15:20:36 -07:00 |
|
spufs.txt
|
Fix typos in /Documentation : 'U-Z'
|
2006-11-30 04:58:40 +01:00 |
|
sysfs-pci.txt
|
x86: PAT export resource_wc in pci sysfs
|
2008-06-12 10:12:42 +02:00 |
|
sysfs.txt
|
sysfs: add /sys/dev/{char,block} to lookup sysfs path by major:minor
|
2008-07-21 21:54:40 -07:00 |
|
sysv-fs.txt
|
[PATCH] fs/sysv/: doc cleanup
|
2006-12-07 08:39:44 -08:00 |
|
tmpfs.txt
|
mempolicy: update NUMA memory policy documentation
|
2008-04-28 08:58:19 -07:00 |
|
ubifs.txt
|
UBIFS: add brief documentation
|
2008-07-15 09:22:12 +03:00 |
|
udf.txt
|
[PATCH] Update udf documentation to reflect current state of read/write support
|
2006-11-16 11:43:38 -08:00 |
|
ufs.txt
|
[PATCH] ufs2 write: mount as rw
|
2007-02-12 09:48:40 -08:00 |
|
vfat.txt
|
fat: Add allow_utime option
|
2008-04-28 08:58:47 -07:00 |
|
vfs.txt
|
[PATCH] kill ->put_inode
|
2008-05-06 13:45:34 -04:00 |
|
xfs.txt
|
[XFS] Update XFS documentation for noikeep/ikeep.
|
2008-04-18 12:18:42 +10:00 |
|
xip.txt
|
misc doc and kconfig typos
|
2007-05-09 08:58:15 +02:00 |