로그인 해주세요.

미니기기 / 음향 게시판 *스마트폰과 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 114604 13
핫글 미니 모바일 게임 쪽은 뭔가 잘못된듯.. [7] 미미코코 10:34 672 9
핫글 미니 블랙베리로 기변했읍니다.. [7] file Pepsi베어 24.06.03 684 8
핫글 미니 중국 클램쉘 폴더블 쪽으로도 공격적이네요 [13] file 오레오가좋아 24.06.03 1082 7
29339 미니 제가 생각하는 S+노트 라인업 통합 방안 [7] file Stellist 19.09.23 553 0
29338 미니 슬슬 기다림의 고통이 오는군요. [12] 바고부 19.09.23 497 0
29337 미니 폰트 맘에 드네용 [2] file asdf 19.09.22 447 0
29336 미니 개인적으로 S, 노트 브랜드 통합은 아직 시기상조라 생각합니다. [2] Aimer 19.09.22 226 0
29335 미니 아이폰XR 듀얼심 개조 부품이 왔습니다. [1] file 설련 19.09.22 560 0
29334 미니 g7 중고로 구매해서 2주정도 사용해봤는데... [15] 시아 19.09.22 600 0
29333 미니 갤럭시 one이라는 건 그냥 푹수수 같은 가칭일 뿐이죠 [16] aleji 19.09.22 487 0
29332 미니 갤스토어 폰트 사기전에 미리 체험 못해보나요 [5] 5다음은6? 19.09.22 298 0
29331 미니 어라 사파리도 별도로 업뎃이 되는거였군요 ㄷㄷ [4] file 여고생쟝 19.09.22 317 0
29330 미니 노트10 스피커 이퀄 먹이면 소리가 커지네요?? [2] file 보거 19.09.22 1063 0
29329 미니 노트10, a90 5g 세팅하면서 느낀점들 [10] 말레이곰 19.09.22 3143 1
29328 미니 이제 9월 말인데 oneui 2.0은 언제 공개될련지 [3] 5다음은6? 19.09.22 399 0
29327 미니 DAP에 이어 리시버를 영입했습니다 [6] file 여고생쟝 19.09.22 372 1
29326 미니 액티브1있는데 2로 갈 가치가 있을까요 [4] chromium 19.09.22 291 0
29325 미니 오늘도 238만 9천원은 안녕합니다.. [9] Futuristics 19.09.22 592 0
29324 미니 내년에 갤럭시S/NOTE가 갤럭시 ONE으로 바뀌면 [7] RumblingHearts 19.09.22 412 0
29323 미니 갤럭시 S11 카메라 스펙 찌라시 구체화된소식은 [7] 갤럭시S20존버 19.09.22 562 0
29322 미니 아이폰11에 크라운실버같은 색이 있다는 루머 [2] file aleji 19.09.22 474 0
29321 미니 노트10이랑 탭S6 같이 쓰시는분 계신가요? [3] 범죄자호날두 19.09.22 255 0
29320 미니 아이패드 터치 오류 때문에 뽀개고 싶어지네요 [10] 비온날흙비린내 19.09.22 507 0
29319 미니 충격의 아이폰XS vs 아이폰 11 프로 스피드테스트 [6] 범죄자호날두 19.09.22 794 1
29318 미니 엑박 원X 눈물의 떨이! [5] BarryWhite 19.09.22 549 0
29317 미니 갤락시ㅡ2018 에디션 완성하고 싶읍니다. [7] 인헤리턴스 19.09.22 430 0
29316 미니 성당님발 9830 찌라시 수정 [7] 다잊어야해욥 19.09.22 773 0
29315 미니 확실히 블루투스 헤드폰 쪽은 코드리스 이어폰이 대세인 거 같습니다. [15] Havokrush 19.09.22 533 0

추천 IT 소식 [1/]

스킨 기본정보

colorize02 board
2017-03-02
colorize02 게시판

사용자 정의

1. 게시판 기본 설정

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

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

2. 글 목록

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

썸네일 게시판만 해당

썸네일 게시판만 해당

썸네일 게시판만 해당

썸네일 게시판만 해당

3. 갤러리 설정

4. 글 읽기 화면

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

5. 댓글 설정

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

6. 글 쓰기 화면 설정

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

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