[리눅스커널] IPI(Inter Processor Interrupt) Call 요청 루틴(하이 레벨 뷰)
By Guillermo Austin Kim | 2022년 3월 21일 |
IPI(Inter Processor Interrupt)의 약자로 지정한 CPU 코어를 타겟으로 인터럽트(소프트웨어적)를 유발하는 매커니즘입니다. 이번 포스트에서는 리눅스 커널에서 IPI Call을 요청하는 루틴을 리뷰하겠습니다. IPI Call은 아키텍처에 의존적으로 처리되므로 하이 레벨과 로우 레벨로 코드가 구현돼 있습니다. * High Level 코드 위치 kernel/sched/core.c kernel/smp.c kernel/irq/ipi.c * Low Level (Arm 아키텍처) 코드 위치 arch/arm64/kernel/smp.c drivers/irqchip/irq-gic-v3.c IPI Call 요청 루틴(하이 레벨) 아래 함수는 Qualcomm Watchdog
리눅스 커널 메일링 리스트 구독 따라해보기
By Guillermo Austin Kim | 2019년 9월 23일 |
이번 시간에는 리눅스 커널 메일링 리스트를 구독하는 방법을 소개합니다.이번에 소개하는 내용을 참고해서 '리눅스 커널 메일 리스트'를 적극적으로 활용하시길 희망합니다. 홈페이지 방문 가장 먼저 다음 링크에 있는 홈페이지로 이동합시다.http://vger.kernel.org/vger-lists.html 홈페이지로 이동하면 다음과 같은 화면이 보일 것입니다. 위에서 푸른색 글짜가 리눅스 커널 메일링 리스트입니다. 수 십가지 리눅스 커널 메일링 리스트가 보입니다.여러분은 이 목록 중 하나를 등록하면 되는 것입니다. 메일링 리스트를 구독하기 위해 메일 발송 위 목록 중에서 linux-xfs 메일링 리스트에 등록을 하려면 어떻게 해야 할까요?이를 위해 다음 포멧으로 이메일을 전달하면 됩니다.수신자: ma
리눅스 커널, 드디어 6.0 버전대 시대로 진입
By 파란오이의 Beautiful Life | 2022년 10월 6일 |
며칠 지난 소식이지만, 새로운 10월의 시작과 함께 하듯이 10월 2일 리눅스 커널의 6.0 릴리즈가 등장했습니다. 기존 안정 버전 5.19 버전대에서 6.0 대에서 한 번에 올라왔지만, 메이저 버전업에 기대하는 천지개벽 같은 요소는 그리 없습니다. 버전을 6.0으로 올린 것도 5.19에서 5.20으로 가기에는 서브 버전이 좀 숫자가 크다... 고 해서 올린 의미 정도이니까요. 하지만 지속적으로 진행 중인 변화의 폭 자체는 그리 작지 않습니다. 이번 커널 6.0에서도 최신 하드웨어들에 대한 지원들이 추가되었습니다. 프로세서에서는 3세대 제온 스케일러블 ''아이스 레이크''나 AMD 라이젠 쓰레드리퍼, AMD 에픽 프로세서 등에서의 성능 최적화 등이 적용되었고, 인텔의 차세대 프로세서가 될 4세대 제온 스케일러
[리눅스커널][디버깅] 크래시 유틸리티로 vmcore를 T32(Trace32)에 로딩하기
By Guillermo Austin Kim | 2019년 3월 13일 |
소개 크래시 유틸리티는 리눅스 커널 개발에서 인기 있는 디버깅 툴입니다. 특히 search 명령어로 메모리 서치를 할 수 있는 막강한 기능을 제공합니다. 하지만 프로세스별 콜스택을 이동하면서 지역변수를 볼 수 있는 기능이 없어 조금 불편합니다. 이번 포스팅에서 vmcore에서 스택 덤프를 추출해 T32 시뮬레이터로 콜스택을 올려 보는 방법을 소개합니다. 크래시 유틸리티로 프로세스 스택 메모리 덤프하기 "./crash64 vmcore vmlinux" 명령어로 크래시 유틸리티를 실행합니다.austindh.kim~/backup/Vmcore_dump$ ./crash64 vmcore vmlinux crash64 7.1.9++Copyright (C) 2002-2017 Red Hat, Inc.Copyrigh