TLBi operation 질문

컴퓨터 2022.09.18 21:32 조회 수 : 382

안녕하세요.

 

아래 코드에서 질문이 있어서 남겨봅니다.

 

SYM_FUNC_START(__cpu_setup)
    tlbi    vmalle1                // Invalidate local TLB
    dsb    nsh

 

"__create_page_tables()" 에서 idmap_pg_dir과 init_pg_dir을 생성하고 __cpu_setup을 통해 MMU를 enable하기 전에 TLB를 invalidate해주고 있는 코드입니다. 궁금한 점은:

 

* "tlbi vmalle1" 명령어는 local TLB, 즉 이 명령어를 실행하는 core에 대해서만 영향이 있다라고 해석 [1] 하였는데 그렇다면 이 invlidation은 TLB-l1에서만 invalidate해주는 것일까요? 만약 그렇다면 TLB-l2에는 아직 stale entry들이 존재할 수 있는데 그 부분은 나중 코드 어디서 해결해주고 있을까요?

 

* 만약 "tlbi vmalle1" 명령어가 TLB-l2의 entry들도 invalidate해주고 있다면 "tlbi vmalle1"와 "tlbi vmalle1is"의 차이가 무엇일까요?

 

 

[1] ARM DDI 0487F.c, ID072120, C5.5.73 TLBI VMALLE1, TLB Invalidate by VMID, All at stage 1, EL1

The invalidation applies to the PE that executes this System instruction.

 

번호 제목 글쓴이 날짜 조회 수
공지 [공지] 프로그래밍 관련 Q&A 게시판 입니다. woos 2016.04.09 22077
518 arm a53 아키텍처는 cache size를 configuration 할 수 없나요? [1] mnth 2023.12.03 211
517 Nested Interrupt on ARM64 [7] 아띨라 2022.07.24 634
516 러스트 언어나 리눅스커널+러스트 어떻게 생각하세요? 해볼만 할까요? [2] 김기오 2022.11.28 778
515 리눅스 스케줄링에서 SCHED_FIFO에 대해 문의드립니다. [1] Neo2013 2023.02.09 779
514 __no_granule_support에서의 wfe, wfi 중복 사용 [2] min 2022.10.03 161
» TLBi operation 질문 [5] 컴퓨터 2022.09.18 382
512 ARM64 CPU Context Switch [2] 아띨라 2022.07.24 472
511 vmcore 파일 생성방법 질문 드립니다. [2] sppedpower 2013.08.28 5264
510 인터럽트 발생 관련해서 질문 드리고 싶습니다. [6] 코딩의노예 2020.07.07 930
509 커널 빌드시 최적화 관련 질문 [5] 김개미 2019.12.17 1547
508 mmap후 파일 올리기 [3] 읏짜 2022.01.13 783
507 [질문-해결됨] compaction 후 기존 PTE 매핑에 뜬금 스왑 엔트리가 나와요! [12] 이파란 2021.05.17 1908
506 16기 리눅스 커널 스터디 C조 18주차 질문입니다. [3] cien 2019.10.12 18565
505 iamroot선배님들의 조언 부탁드립니다 [2] 이파란 2021.04.15 762
504 오드로이드에 관해 akqk13012 2021.03.26 443
503 critical section에 대한 커널 코드 검증 방법 문의 [7] file mnth 2021.01.09 1460
502 RCU 관련해서 질문 하나 드려봅니다. [2] 코딩의노예 2020.07.03 647
501 멀티스레드 시간측정 질문 file 뇨뇸 2020.05.03 510
500 리눅스 소스 분석 관련 질문 [4] AlanWalker 2020.04.22 730
499 16기 리눅스 커널 스터디 39주차 질문입니다. [6] rnsscman 2020.03.22 707
XE Login