Linux에 여유 메모리가 충분하면 OOM 킬러가 프로세스를 종료합니다.

Linux에 여유 메모리가 충분하면 OOM 킬러가 프로세스를 종료합니다.

시스템에서 약 150MB의 메모리를 사용할 수 있는 경우 DotNET 프로세스는 OOM-Killer에 의해 종료되고 OOM 최소 기준은 20MB로 설정됩니다.

참고: 우리는 Linux 버전 5.4.3-yocto-standard+g852f89dfab60을 사용하고 있습니다.

TCPBufferRcv.Rc는 oom-killer를 호출합니다: gfp_mask=0x400dc0(GFP_KERNEL_ACCOUNT|__GFP_ZERO), order=0, oom_score_adj=0

CPU: 1 PID: 1263 통신: TCPBufferRcv.Rc 오염: GO 5.4.3-yocto-standard+g852f89dfab60 #1

[104418.214488] 메모리 정보: [104418.218008] active_anon: 162682 inactive_anon: 22880 분리된_anon: 0 [104418.218008] active_file: 139inactive_file: 495 분리된_file: 0 [104418.218008] 파괴 불가능: 0 더티: 0 다시 쓰기: 0 불안정: 0 [104418.218008] slab_reclaimable: 1749 scrap_unreclaimable: 3627 [104418.218008] 매핑: 14313 shmem: 32870 페이지 테이블: 1284 바운스: 0 [104418.218008] 무료: 36829 free_pcp: 24 free_cma: 32512 [104418.252416] 노드 0 활성 _anon: 65 07 28kB inactive_anon: 91520kB active_file: 556kB inactive_file: 1980kB 삭제할 수 없음: 0kB 격리(익명): 0kB 격리(파일): 0kB 맵: 57252kB 더티: 0kB 쓰기 저장: 0kB shmem: 131480kB writeback_tmp: 0kB 불안정: 0kB all_unreclaimable? 예

[104418.276496] 일반 유휴: 146944kB 최소: 20480kB 낮음: 25600kB 높음: 30720kB active_anon: 650728kB inactive_anon: 91520kB active_file: 624kB inactive_file: 2236kB 삭제 불가능: 0kB 쓰기 보류: 0kB 존재함: 1048576k B 관리됨: 1024476kB mlocked: 0kB 커널 스택: 1968kB 페이지 테이블: 5136kB 바운스: 0kB free_pcp: 96kB local_pcp: 32kB free_cma: 130048kB [104418.305647] lowmem_reserve[]: 0 0

[104418.309303] 일반 : 49784KB(UMC) 34638KB(UMC) 144016KB(UC) 65032KB(C) 19164KB(UC)62128KB(C) 30256KB(UC) 20512kB(UC)91024KB(UC)22048kB(UC)14096kB(U)08192KB 016384KB 032768kB = 146944kB

[104418.328709] 총 페이지 캐시 페이지는 33630입니다. [104418.333180] 스왑 캐시에 0페이지가 있습니다. [104418.336716] 스왑 캐시 통계: 0 추가, 0 제거, 0/0 찾기 [104418.342292] 스왑 가능 = 0kB [104418.345403] 총 스왑 = 0 킬로바이트 [ 104418.348434] 262144페이지 RAM [104418.351560] 0페이지 HighMem/MovableOnly [104418.355753] 6025페이지 예약됨 [104418.359337] 81920페이지 예약됨 cma

[104418.687766] oom-kill: 제약 조건=CONSTRAINT_NONE, nodemask=(null), task=dotnet, pid=523, uid=0

[104418.696472] 메모리 부족: 프로세스 523 종료(dotnet) total-vm: 1602612kB, anon-rss: 451100kB, file-rss: 0kB, shmem-rss: 0kB, UID: 0 pgtables: 858112kB oom_score_adj: 0

[104418.859439] oom_reaper: 수확 프로세스 523(dotnet), 이제 anon-rss: 0kB, file-rss: 0kB, shmem-rss: 0kB

여기에 이미지 설명을 입력하세요.

할당에 사용할 수 있는 메모리가 충분할 때 커널이 OOM-killer를 호출하는 이유를 이해하도록 도와주세요.

관련 정보