로그인 해주세요.

미니기기 / 음향 게시판 *스마트폰과 PC, 카메라, 스피커 등 IT 미니기기와 음향기기에 관해 교류하는 게시판입니다.

Score_고동빈

미니 리눅스 커널 근황: 패치로 인한 성능 향상이 너무나도 뛰어나서 롤백

- 두 달 전에 커밋된 inode 관련 최적화 로 인해 리눅스 커널에서의 EXT4 읽기 속도가 비약적으로 향상

- 근데 해당 패치가 적용된 커널으로 아치 리눅스를 부팅하면 부팅 중 행(멈춤)이 걸리는 문제 발생, 이유를 살펴보니

  - 특정 아치 리눅스 버전에서 getrandom() 호출을 하는 systemd 데몬을 부팅 중에 실행 

  - 근데 해당 패치를 적용한 커널의 경우에는 부팅 속도가 너무 빨라서 엔트로피 풀이 채워지기도 전에 부팅 완료

  - 부팅 중의 getrandom()은 원래 /dev/urandom과 같이 non-block 콜이어야 하나, 특정 라이브러리(cryptsetup)와의 의존성 문제 때문에 block이 이루어짐

  - 결국 이게 해결될 때 까지 해당 커밋 롤백(...)

 

부가 설명:

- getrandom()은 말 그대로 랜덤한 숫자를 제공해 주는 함수입니다. 

근데 이 랜덤한 숫자라는 게, 사실 엔트로피 풀이라는 저장 공간 내에서 숫자를 하나 뽑아서 리턴 해 주는것이라 엔트로피 풀이 비어있으면 당연히 랜덤 넘버도 전달할 수 없습니다.

이 엔트로피 풀은 커널의 다양한 이벤트 발생으로 채워집니다 (https://stackoverflow.com/questions/19981189/how-does-the-kernel-entropy-pool-work 참고)

-  non-block 콜이어야 한다는 건, getrandom() 함수를 실행하는 게 다른 프로그램의 실행에 영향이 없어야 한다는 뜻이나... 그게 정상적으로 작동하지 않음으로 인해 데드락이 발현됩니다.

- getrandom()이 결과값을 리턴하려면 커널의 엔트로피 풀이 채워져야 되는데, 엔트로피 풀이 채워지려면 getrandom()이 끝나고 다른 이벤트들이 발생해야 하고, 그러려면 엔트로피 풀이 채워져야 하고... 무한 반복이 되는거죠.

 

Score_고동빈
2141 / 1260 / 2217 / 1864 / 2014 / 2093 / 1842 / 2190 / 2093 / 2094 / 1998
댓글
2
BarryWhite
1등 BarryWhite
2019.09.17. 07:53

신기하네요. 얼마나 빨라졌길래...

[BarryWhite]님의 댓글을 신고합니다. 취소 신고
Score_고동빈
글쓴이
Score_고동빈 BarryWhite 님께
2019.09.17. 08:01

더 정확히 들어가면

해당 패치가 쓸모없는 I/O 작업을 줄여주는건데, I/O 작업 갯수가 줄어드니까 엔트로피 풀도 덜 채워지고... 그래서 그런거죠.

[Score_고동빈]님의 댓글을 신고합니다. 취소 신고
취소
번호 분류 제목 글쓴이 날짜 조회 수
공지 공지 사이트 이용 수칙 230228 수정 file admin 18.08.04 117715 13
핫글 미니 애플 디자인 경향이 좋은지는 모르겠습니다 [14] updatefile peekaboob 24.08.02 1633 15
핫글 미니 다나와도 직접 유통 하려나보네요 [3] 룬룬 24.08.02 949 7
핫글 음향 버즈라이브에서 버즈3는 꽤 성공적입니다 [7] 아재건달_보노뭘보노 24.08.02 849 4
72369 미니 2026 M4 OLED 아이패드 에어 컨셉 [3] 요트맨 24.07.31 808 1
72368 미니 잡담: 중국서 TSMC 6nm 기반 Arm PC 칩 공개 [2] Section31 24.07.31 781 1
72367 미니 삼성 HBM3E 공급은 에둘러서 언급하네요 Aimyon 24.07.31 677 1
72366 미니 베스트바이. AMD Ryzen 9000시리즈 CPU 가격 표시 [6] file 스퀴니 24.07.31 693 1
72365 미니 아싸 물건사기전 이러고 있다.jpg file 품귀문란 24.07.31 1000 1
72364 미니 IP등급에서 먼지보호를 인정받으려면 IP5x이상이네여 [1] file 스퀴니 24.08.01 396 1
72363 미니 잡담: "구글 텐서 G4, 역대 최소 업그레이드일 듯" [10] Section31 24.08.01 805 1
72362 미니 플립계열은 전면 포인트 때문이라도 전면부에 색상을 배치하는게 좋아보이네요 [1] file 가마 24.08.01 463 1
72361 미니 베타 시작한줄알고 낚였네요 [5] file 갠냑시 24.08.01 597 1
72360 미니 카메라 질문 있습니다 [2] 아뚱 24.08.01 150 1
72359 미니 과연 One UI 7 베타 오픈 징조인가 [3] file OneUI7.1 24.08.01 800 1
72358 미니 결국 피코4를 가져왔습니다 [3] file RASBI 24.08.01 513 1
72357 미니 이거 도대체 어떻게 끄나요? [5] file Magyarország 24.08.01 747 1
72356 미니 스트릭스 헤일로에 대응하는 데탑apu가 나올까요? [10] 참깨돌이 24.08.01 445 1
72355 미니 스냅 X 엘리트 탑재 미니PC 등장! [14] BarryWhite 24.08.01 1046 1
72354 미니 그래도 오랜만에 안드쓰니 좋네요. Magyarország 24.08.02 403 1
72353 미니 S펜 글자인식 아쉬운 점 [1] 엣지 24.08.02 361 1
72352 미니 애플 인텔리전스... 지금은 생각보다 더 뭐가 없는 느낌이네요... [2] MrGom™ 24.08.02 483 1
72351 미니 인텔, 13/14세대 CPU 보증기간 2년 추가 연장 발표 [10] PatGelsinger 24.08.02 657 1
72350 미니 삼성 요즘엔 갤럭시에 비스포크 [5] 애애앵 24.08.02 870 1
72349 미니 요즘 귀 상태가 메롱한게 버즈2프 이자식 때문이였군요 [1] 파치마리 24.08.02 316 1
72348 미니 픽셀 워치 3, 갤럭시 워치 7 시리즈보다 비쌀 예정 [1] AquStar 24.08.02 466 1
72347 미니 이번 lg전자 광고 [1] Pepsi베어 24.08.02 411 1
72346 미니 잇섭 탭S10 디멘시티 루머 영상 업로드 [16] 유비소프트 24.08.02 1255 1
72345 미니 10월 출시 예정인 Dimensity 9400, 플래그십 SoC 출시가 전년 대비 50% 매출 증가를 가져올 것이라고 확신하는 MediaTek CEO [2] file PatGelsinger 24.08.02 594 1

추천 IT 소식 [1/]

스킨 기본정보

colorize02 board
2017-03-02
colorize02 게시판

사용자 정의

1. 게시판 기본 설정

게시판 타이틀 하단에 출력 됩니다.

일반 게시판, 리스트 게시판, 갤러리 게시판에만 해당

2. 글 목록

기본 게시판, 일반 게시판, 썸네일 게시판만 해당

썸네일 게시판만 해당

썸네일 게시판만 해당

썸네일 게시판만 해당

썸네일 게시판만 해당

3. 갤러리 설정

4. 글 읽기 화면

기본 10명 (11명 일 경우, XXXXX 외 1명으로 표시)

5. 댓글 설정

일정 수 이상의 추천을 받은 댓글에 표시를 합니다.

6. 글 쓰기 화면 설정

글 쓰기 폼에 미리 입력해 놓을 문구를 설정합니다.

서버에 요청 중입니다. 잠시만 기다려 주십시오...