首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >OOM Killer内存统计报告中的缩写是什么意思?

OOM Killer内存统计报告中的缩写是什么意思?
EN

Unix & Linux用户
提问于 2019-05-03 17:04:47
回答 1查看 953关注 0票数 3

当OOM Killer或内核报告内存状态时,它使用下一个缩写

代码语言:javascript
运行
复制
Node 0 DMA: 26*4kB (M) 53*8kB (UM) 33*16kB (ME) 23*32kB (UME) 6*64kB (ME) 7*128kB (UME) 1*256kB (M) 2*512kB (ME) 0*1024kB 0*2048kB 0*4096kB = 4352kB
Node 0 DMA32: 803*4kB (UME) 3701*8kB (UMEH) 830*16kB (UMH) 2*32kB (H) 0*64kB 0*128kB 1*256kB (H) 0*512kB 0*1024kB 0*2048kB 0*4096kB = 46420kB

我理解其中的一些,例如M -可移动的UMH -不可移动的高。但是我找不到E的意思,在哪里我可以找到关于它的文档?

我的案子,我有下一个消息

代码语言:javascript
运行
复制
page allocation stalls for 27840ms, order:0, mode:0x14200ca(GFP_HIGHUSER_MOVABLE)

什么是进程请求4kb页(2^0 * 4kb),应该编码为(MH),对吗?或者HIGHUSER是以不同的方式编码的?

EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2019-05-04 09:08:39

这些是在内核中的mm/page_alloc.c中定义的迁移类型:

代码语言:javascript
运行
复制
        static const char types[MIGRATE_TYPES] = {
                [MIGRATE_UNMOVABLE]     = 'U',
                [MIGRATE_MOVABLE]       = 'M',
                [MIGRATE_RECLAIMABLE]   = 'E',
                [MIGRATE_HIGHATOMIC]    = 'H',
#ifdef CONFIG_CMA
                [MIGRATE_CMA]           = 'C',
#endif
#ifdef CONFIG_MEMORY_ISOLATION
                [MIGRATE_ISOLATE]       = 'I',
#endif
        };

类型本身是在include/linux/mmzone.h中定义的。

因此,E的意思是可收回的,而H的意思是“高原子的”,即“高阶原子分配”。

票数 6
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/516993

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档