로그인 해주세요.

미니기기 / 음향 게시판 *스마트폰과 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 117370 13
핫글 음향 버즈3 당근에 18만원에 게또다제 (+ 간단후기) [12] flair 24.07.12 1188 14
핫글 미니 폴드6 구경했는데 진짜 대단하네요. [7] qwerty 01:11 1443 14
핫글 미니 국내 앱 사용 순위 보면 신기하네요 [21] file MrGom™ 24.07.12 1258 11
71592 미니 삼전이 5G모뎀을 물량문제로 거절했다고 하는데... [5] ARMCC 19.04.10 300 2
71591 미니 LG V50 ThinQ 듀얼 스크린 a.k.a 폰더블.jpg [10] file 갤럭시S2 19.04.10 671 2
71590 미니 A80 CAMERA .GIFS [5] file 스테인 19.04.10 478 2
71589 미니 이쯤에서 다시보는 08헬조선.jpg [11] file 맞는말만함 19.04.13 917 2
71588 미니 중국은 공산당 독재 국가입니다. +화웨이 emui썰 [5] 웅비 19.04.13 462 2
71587 미니 소니 1억화소 카메라.. A9R? A7R4? [16] 팝카드있으세요 19.04.14 1142 2
71586 미니 횐님덜....3편을..가지고...왔읍니다... [15] 버벨 19.04.14 605 2
71585 미니 갤럭시 폴드 2시간 간략 사용기 [11] 슈갤럼 19.04.16 1062 2
71584 미니 정말이지 눈물나네요 [5] file 숲속의참치 19.04.16 644 2
71583 미니 어째 잘 나간다 싶었다. [16] 브니엘 19.04.18 497 2
71582 미니 애플 항복과 인텔모뎀 드랍과의 관계는... [14] ARMCC 19.04.18 464 2
71581 미니 인생의...회의감을..느낄라구...하던찰나... [14] 버벨 19.04.19 541 2
71580 미니 추천 좀 부탁드립니다. [6] Telecom-slave 19.04.19 111 2
71579 미니 갤럭시a80엔 소니 imx586센서 탑재네요. [4] 우주정력황제갤럭시엠 19.04.21 459 2
71578 미니 이거 화웨이 p30이 해킹하고있다는 소리인가요? [15] file 범죄자호날두 19.04.23 694 2
71577 미니 SKT 사장 뻘쭘? (feat. 폴드 쉴드) file 독거노인 19.04.24 516 2
71576 미니 S5e에 빅스비 없는건 허위광고감이네여 [13] file S.C 19.04.26 594 2
71575 미니 빅스비 하는 거 보면 고동진씨도 좀 그렇네요 [6] [성공]함께크는성장 19.04.26 466 2
71574 미니 [단독] QLED 깎아내리던 LG전자…'Q-LED TV' 상표권 말소당해 [2] 다잊어야해욥 19.04.27 636 2
71573 미니 삼성플로우 윈도우스토어 버전 업데이트 되었습니다 [1] file [성공]함께크는성장 19.04.27 455 2
71572 미니 안드로이드Q부터 파일 구조가 저렇게 바뀐다면 저는.. [3] Stellist 19.04.28 262 2
71571 미니 쉽게 이해하는 안드로이드 Q 파일정책 [5] 숲속의참치 19.04.28 391 2
71570 미니 안드의 유연함을 살려서 참 잘 쓰고 있었는데 [3] [성공]함께크는성장 19.04.28 189 2
71569 미니 삼성仁터넷 9.3버전 정식 출시 [5] aleji 19.04.28 407 2
71568 미니 전 지금의 안드로이드가 만족스럽습니다 [6] [성공]함께크는성장 19.04.29 369 2

추천 IT 소식 [1/]

스킨 기본정보

colorize02 board
2017-03-02
colorize02 게시판

사용자 정의

1. 게시판 기본 설정

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

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

2. 글 목록

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

썸네일 게시판만 해당

썸네일 게시판만 해당

썸네일 게시판만 해당

썸네일 게시판만 해당

3. 갤러리 설정

4. 글 읽기 화면

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

5. 댓글 설정

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

6. 글 쓰기 화면 설정

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

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