커널 Rust 코드에서 패닉은 언제 허용되나 — Kangrejos 2026 논의 정리

Rust 코드의 panic!은 커널에서 BUG()로 이어져 실행 중인 커널을 멈춘다. 그런데 Rust의 정수 곱셈과 슬라이스 인덱싱에도 패닉 경로가 들어간다. 커널의 Rust 코딩 가이드라인은 패닉을 드물게 쓰고 거의 모든 경우에 Result를…

Continue Reading커널 Rust 코드에서 패닉은 언제 허용되나 — Kangrejos 2026 논의 정리

glibc에 래퍼가 없는 리눅스 시스템 콜 — syscall()로 futex_waitv() 호출하기

커널에 새 시스템 콜이 들어와도 glibc에 래퍼 함수가 없으면 C에서 일반 함수처럼 부를 수 없다. 이때는 syscall(SYS_xxx, ...)로 번호와 인자를 직접 넘긴다. 커널 5.16에 들어온 futex_waitv()도 아직 래퍼가 없다. LPC…

Continue Readingglibc에 래퍼가 없는 리눅스 시스템 콜 — syscall()로 futex_waitv() 호출하기

리눅스 커널에 컨테이너 객체가 생길까 — 조셉 바식의 ‘셀(cell)’ 제안

리눅스 커널에는 "컨테이너"라는 객체가 없습니다. 커널은 네임스페이스, cgroup, seccomp 같은 부품만 제공합니다. 조립은 Docker, Podman, LXC 같은 사용자 공간 도구가 맡습니다. 그래서 커널은 "이 프로세스가 어느 컨테이너에 속하는가"라는 질문에 답할…

Continue Reading리눅스 커널에 컨테이너 객체가 생길까 — 조셉 바식의 ‘셀(cell)’ 제안

LWN Weekly Report: 2026년 11월 5일 주요 뉴스

이번 주 LWN.net 위클리 에디션(11월 5일자) 주요 내용이다. 조셉 바식(Josef Bacik)은 컨테이너를 커널 객체로 만드는 "셀(cell)"을 제안했다. Android Binder의 C 구현은 7.4에서 삭제되고 Rust 구현만 남는다. 7.4 머지 윈도우는 체인지셋…

Continue ReadingLWN Weekly Report: 2026년 11월 5일 주요 뉴스

Ubuntu 26.10(Stonking Stingray) 릴리스 노트 정리

Ubuntu 26.10(코드명 Stonking Stingray)이 2026년 10월 15일에 릴리스됐다. 인터림(interim) 릴리스라 지원 기간은 9개월이다. 릴리스 노트에는 호환성을 깨는 변경이 여러 건 있다. 그래서 버전 표만 보고 판단하면 서버 운영에서 문제가 생길…

Continue ReadingUbuntu 26.10(Stonking Stingray) 릴리스 노트 정리

리눅스 커널 mm 서브시스템 동향 (3) — 리뷰 중인 패치와 쟁점

머지된 코드는 git log로 쉽게 볼 수 있다. 반면 앞으로 무엇이 들어올지는 메일링 리스트, 학회 발표, 메인테이너의 반응을 함께 봐야 알 수 있다. 기여할 주제를 고르려면 바로 이 "아직 머지되지…

Continue Reading리눅스 커널 mm 서브시스템 동향 (3) — 리뷰 중인 패치와 쟁점

리눅스 커널 mm 서브시스템 동향 (2) — 7.0~7.4에 머지된 변화

mm 서브시스템은 릴리스마다 수십 개의 패치 시리즈를 받는다. 머지 메시지만 읽어서는 어떤 흐름이 몇 릴리스에 걸쳐 이어지는지 보이지 않는다. 예를 들어 스왑 테이블 작업은 7.0부터 7.2까지 네 단계로 나뉘어 들어왔고,…

Continue Reading리눅스 커널 mm 서브시스템 동향 (2) — 7.0~7.4에 머지된 변화

리눅스 커널 mm 서브시스템 동향 (1) — 개발 구조와 추적 방법

리눅스 커널 메모리 관리(mm) 서브시스템은 mm/ 디렉터리에만 C 파일이 165개 있고, 릴리스마다 340~550개 커밋이 들어온다. 관심 있는 주제의 패치를 쓰려면 먼저 코드가 어느 트리를 거쳐 메인라인에 들어가는지, 누가 리뷰하는지, 지금…

Continue Reading리눅스 커널 mm 서브시스템 동향 (1) — 개발 구조와 추적 방법

리눅스 커널 7.4, x86에서 __get_user()·__put_user() 제거 — SMAP이 바꾼 사용자 공간 접근 비용

리눅스 커널 7.4에서 x86의 __get_user()와 __put_user()가 사라집니다. 두 매크로는 오랫동안 "검사를 한 번만 하고 빠르게 접근하는" 최적화 수단이었습니다. 하지만 SMAP(Supervisor Mode Access Prevention)이 보편화된 뒤로는 x86에서 오히려 더 느려졌습니다. 이번…

Continue Reading리눅스 커널 7.4, x86에서 __get_user()·__put_user() 제거 — SMAP이 바꾼 사용자 공간 접근 비용