cat /proc/buddyinfo
cat /proc/pagetypeinfo
Free pages count per migrate type at order 0 1 2 3 4 5 6 7 8 9 10
这里的0到10,分别对应2的0次方到2的10次方pages
也就是2^0*4k=4KB到2^9*4k=2048KB
下一行对应的是该大小的连续内存块的可用数量
我们看下vmalloc的可用大小,kernel日志中打印如下
Virtual kernel memory layout:
vector : 0xffff0000 - 0xffff1000 ( 4 kB)
fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
vmalloc : 0xf7800000 - 0xff000000 ( 120 MB)
lowmem : 0xe0000000 - 0xf7300000 ( 371 MB)
lowmem : 0xcff00000 - 0xe0000000 ( 257 MB)
vmalloc : 0xcfa00000 - 0xcff00000 ( 5 MB)
lowmem : 0xcf500000 - 0xcfa00000 ( 5 MB)
vmalloc : 0xc7f00000 - 0xcf500000 ( 118 MB)
lowmem : 0xc0000000 - 0xc7f00000 ( 127 MB)
pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
modules : 0xbf000000 - 0xbfe00000 ( 14 MB)
.text : 0xc0008000 - 0xc0ca9088 (12933 kB)
.init : 0xc0d00000 - 0xc0e12ec0 (1100 kB)
.data : 0xc0e14000 - 0xc0f060ac ( 969 kB)
.bss : 0xc0f060d0 - 0xc111f2e0 (2149 kB)
可用cat /proc/vmallocinfo查下vmalloc的使用情形,
VmallocTotal: 122880 kB
VmallocUsed: 5124 kB
VmallocChunk: 74480 kB
如果vmalloc失败的话,那可能vmalloc对应的3块已经被用尽或者剩下的不够本次的vmalloc操作了。
VmallocTotal- VmallocUsed就是剩余可用的vmalloc大小,这里是指内核空间中的1GB虚拟地址上;VmallocChunk是指在可用vmalloc虚拟地址中最大的可用连续内存块
cat /proc/pagetypeinfo
Free pages count per migrate type at order 0 1 2 3 4 5 6 7 8 9 10
这里的0到10,分别对应2的0次方到2的10次方pages
也就是2^0*4k=4KB到2^9*4k=2048KB
下一行对应的是该大小的连续内存块的可用数量
我们看下vmalloc的可用大小,kernel日志中打印如下
Virtual kernel memory layout:
vector : 0xffff0000 - 0xffff1000 ( 4 kB)
fixmap : 0xfff00000 - 0xfffe0000 ( 896 kB)
vmalloc : 0xf7800000 - 0xff000000 ( 120 MB)
lowmem : 0xe0000000 - 0xf7300000 ( 371 MB)
lowmem : 0xcff00000 - 0xe0000000 ( 257 MB)
vmalloc : 0xcfa00000 - 0xcff00000 ( 5 MB)
lowmem : 0xcf500000 - 0xcfa00000 ( 5 MB)
vmalloc : 0xc7f00000 - 0xcf500000 ( 118 MB)
lowmem : 0xc0000000 - 0xc7f00000 ( 127 MB)
pkmap : 0xbfe00000 - 0xc0000000 ( 2 MB)
modules : 0xbf000000 - 0xbfe00000 ( 14 MB)
.text : 0xc0008000 - 0xc0ca9088 (12933 kB)
.init : 0xc0d00000 - 0xc0e12ec0 (1100 kB)
.data : 0xc0e14000 - 0xc0f060ac ( 969 kB)
.bss : 0xc0f060d0 - 0xc111f2e0 (2149 kB)
可用cat /proc/vmallocinfo查下vmalloc的使用情形,
VmallocTotal: 122880 kB
VmallocUsed: 5124 kB
VmallocChunk: 74480 kB
如果vmalloc失败的话,那可能vmalloc对应的3块已经被用尽或者剩下的不够本次的vmalloc操作了。
VmallocTotal- VmallocUsed就是剩余可用的vmalloc大小,这里是指内核空间中的1GB虚拟地址上;VmallocChunk是指在可用vmalloc虚拟地址中最大的可用连续内存块