Q&A 게시판

리눅스 커널에 대한 Q&A 게시판 입니다. (비밀글 체크는 꼭 필요한 경우에만)

cfs_rq->min_vruntime 초깃값의 의미

작성자
이현준
작성일
2025-07-16 11:29
조회
78
안녕하세요 🙂

http://jake.dothome.co.kr/sched_init/
Scheduler -19- (초기화) 글을 보다가 cfs_rq->min_vruntime 초기화 부분에서 의문이 생겨 질문글을 남깁니다.

cfs_rq->min_vruntime = (u64)(-(1LL << 20)); // min_vruntime 값으로 0xffff_ffff_fff0_0000 (-1M)를 지정한다.
여기서 (u64)(-(1LL << 20))가 무슨 의미를 갖는 값인지 궁금합니다.
그냥 0으로 초기화하면 안 되는지, 매우 큰 값이 필요하다면 왜 하필 (u64)(-(1LL << 20))인지 궁금합니다.

해당 코드가 반영된 커널 커밋을 찾아봐도 의미를 잘 모르겠습니다.
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=67e9fb2a39a1d454218d50383094940982be138f

혹시 답을 아신다면 도움 주시면 감사드리겠습니다.
좋은 하루 보내세요 🙂
전체 1
  • 2025-08-18 21:47
    Peter Zijlstra 님께서 답변해주셨습니다.
    It is a value that is a little before wrap-around.
    Best to have every machine hit wrap-around for testing sake.