LWN Weekly Report: 2026년 7월 23일 주요 뉴스

이번 주 LWN.net 위클리 에디션 주요 내용이다. Linus Torvalds의 “포크하거나 떠나라” 발언으로 다시 불붙은 커널 커뮤니티의 LLM 논쟁, GUADEC에서 나온 GNOME 세션 저장/복원 기능의 세 번째 도전, Red Hat의 트레이드마크 단독 사용을 둘러싼 Fedora의 거버넌스 위기, 그리고 LSFMM+BPF 서밋 후속 취재로 나온 tracepoint 다중 연결·BPF LSM 변조 방지·famfs 머지·sched-ext 서브스케줄러/proxy execution 소식까지 다룬다.

커널 커뮤니티의 LLM 논쟁, 더 복잡해지다

2025년 말 7.0 릴리스에 맞춰 도입된 Assisted-by 태그는 LLM이 작성에 관여한 패치임을 명시하도록 요구하는 규정이다. 하지만 7.2-rc4 기준 이 태그가 붙은 커밋은 1,200개를 넘는 반면, 태그 없이 들어오는 기계 생성 패치도 상당수라 태그의 실효성 자체가 의문시되는 상황이다. 7월 초 Christian Brauner가 태그에서 구체적 모델명이라도 빼자고 제안했고, Jeff Layton은 아예 고지 의무 자체를 없애는 패치를 올렸다. 네트워킹 메인테이너 Jakub Kicinski는 이미 적용받은 패치에서 태그를 그냥 지워버린다고 밝히기도 했다. 결국 태그 자체를 완전히 없애자는 데는 반대가 많아 존치 쪽으로 기울었지만, 구체적 도구명까지 요구하는 건 접자는 쪽으로 의견이 모였다 — 다만 최종 결론은 10월 Maintainers Summit까지 미뤄질 가능성이 크다.

코드 작성보다 더 널리 쓰이는 건 패치 리뷰 자동화 도구 Sashiko다. 문제는 이게 한 기업의 인프라 지원에 전적으로 의존한다는 점인데, Sashiko의 핵심 개발자 Roman Gushchin은 20여 년 전 BitKeeper가 갑자기 접근이 끊겼던 사례를 들며 지속 가능한 모델을 Maintainers Summit 안건으로 올렸다. Ted Ts’o는 “리뷰어들이 이 일을 그만두면 정말 곤란해질 것”이라면서도 Sashiko가 자신의 업무 부담을 줄여준다고 인정했는데, LWN은 이런 도구가 장기적으로 리뷰 역량 자체를 퇴화시킬 수 있고, 컴파일러와 달리 데이터센터 기반 LLM은 언제든 사라질 수 있다는 점에서 어셈블리 실력이 사라진 것과는 다른 위험이라고 짚었다.

Sashiko를 둘러싼 개발자 간 갈등도 있었다. 미디어 서브시스템 메인테이너 Mauro Chehab이 개별 기여자가 Sashiko 리뷰를 옵트아웃할 수 있게 해달라는 요청을 전하자, Gushchin은 유닛 테스트를 옵트아웃하겠다는 것과 다를 바 없다며 반대했다. Laurent Pinchart는 메인테이너가 Sashiko 리뷰를 먼저 걸러내지 않고 그대로 기여자에게 떠넘기는 관행을 문제 삼으며, 이는 “기여자에게 상당한 비율로 헛소리를 만들어내는 기계 앞에서 매번 자기 가치를 증명하라고 강요하는 것”이라고 비판했다. 기존 코드에 있던 버그까지 Sashiko가 잡아내는 문제에 대해 Torvalds는 무관한 버그를 고치라고 요구하는 건 예전부터 통하지 않았다고 지적하면서도, LLM이 스스로 그런 버그의 수정 패치 트리를 만들어 유지하면 어떻겠냐는 다소 파격적인 제안을 내놓기도 했다.

이 논쟁은 결국 널리 보도된 Torvalds의 발언으로 이어졌다. Gushchin의 옵트아웃 반대 발언에 이어 Torvalds는 “Linux는 반AI 프로젝트가 아니다. 마음에 안 들면 포크하거나 떠나면 된다. AI는 다른 도구와 마찬가지로 유용한 도구”라고 썼다. Lyude Paul은 많은 개발자가 생계 때문에 포크하거나 떠날 처지가 못 되며, 고용주들이 “10배 생산성 향상”을 명분으로 리뷰·품질 관리를 내던지도록 압박하고 있다고 반박했다. Laurent Pinchart는 한발 더 나아가 “오늘날 FOSS 개발에 생성형 AI를 쓰는 데 윤리적 정당성은 없다”고 밝혔는데, Torvalds는 “윤리는 개인 삶에나 두고, 남에게 강요하지 말라”며 논의 자체를 차단했다. LWN은 저작권, 환경 비용, 소수 빅테크로의 권력 집중 같은 우려가 실재함에도 그 논의 자체가 금지되는 상황을 짚으며, 커뮤니티가 이 문제를 무시할 수도, 존재하지 않는 척할 수도 없는 처지에 놓였다고 정리했다.

GNOME에 세션 저장/복원 기능이 돌아올까

X11에서 Wayland로 넘어오며 GNOME 사용자들이 가장 아쉬워하는 기능 중 하나가 로그아웃·재부팅 후 창 위치와 열려 있던 문서를 그대로 복원해주는 세션 저장/복원이다. 스페인 A Coruña에서 열린 GUADEC 2026에서 Adrian Vovk는 이 기능을 GNOME 플랫폼 전반에 도입하는 작업을 세 번째로 시도하고 있다고 발표했다 — 다만 10월 GNOME 51에는 시간이 부족해 맞추지 못한다.

X11 시절 세션 관리는 XSMP 프로토콜로 처리됐는데, 애플리케이션이 다음 로그인 때 실행할 커맨드라인을 직접 세션 매니저에 등록하는 방식이라 샌드박스와는 애초에 맞지 않았다. Vovk의 대안은 XDG desktop portal을 통한 xdg_session_management_v1 프로토콜이다. 애플리케이션이 스스로 상태를 저장하는 대신 컴포지터(GNOME의 mutter)에게 “내 상태를 저장하고 토큰을 달라”고 요청하는 구조로, 애플리케이션 재시작 시 “평범한 실행”, “전체 세션 복원”, “방금 크래시했으니 조심스럽게 복원” 같은 복원 사유(restore reason)를 함께 전달받는다.

정작 가장 까다로웠던 건 GTK 쪽 API였다. 첫 번째 API는 완전 동기 방식이라 GNOME 50/GTK 4.22에 거의 실릴 뻔했지만, 텍스트 에디터처럼 수 메가바이트짜리 문서를 비동기로 디스크에 써야 하는 상황을 지원할 수 없다는 게 드러나 릴리스 직전에 통째로 빼버렸다. 비동기 GObject 시그널 기반의 두 번째 API는 메인테이너들에게 “압도적으로” 거부당했고, 지금은 async 시그널 대신 비동기 메서드/vfunc를 쓰는 세 번째 API를 준비 중이다. Vovk는 GNOME 51 베타에 mutter 쪽 구현은 들어갔지만 실제 세션에서 통합했을 때 정리해야 할 버그가 남아 있고, GTK 쪽은 아직 애플리케이션이 쓸 수 있는 단계가 아니라고 밝혔다. 안정화 전에 실제 애플리케이션 몇 개를 이 API로 포팅해 인체공학성부터 검증하고 싶다는 게 그의 계획이다.

Fedora, 거버넌스 위기에 빠지다

Fedora는 원래 정교한 프로세스와 문서화된 정책으로 유명한 프로젝트지만, 최근 1년 사이 그 프로세스들이 잇달아 도마 위에 올랐다. Red Hat 직원 Gordon Messmer가 3월 31일 제안한 “AI 개발자 데스크톱” 이니셔티브는 커뮤니티의 반발 속에 Fedora Council에서 일단 승인됐다가, 5월 8일과 13일 각각 위원 Justin Wheeler와 Miro Hrončok이 표를 뒤집으며 최종 무산됐다.

더 큰 파장은 Red Hat이 자동화 OS 빌드 프로젝트 “Hummingbird”를 공개 프로세스 없이 Council에 비공개로 트레이드마크 사용만 요청한 뒤, 5월 12일 Red Hat Summit에서 곧바로 발표해버린 사건이었다. Fedora 기여자 Michael Gruber는 “이게 정말 Fedora 프로젝트인지조차 모르겠다. 이런 식으로 시작하고 소통된 이상 전혀 신뢰할 수 없다”고 반발했다. Red Hat 소속이자 Fedora 기여자인 Adam Williamson은 회사가 더 공개적으로 요청했으면 좋았겠지만, 그나마 Fedora 안에서 하려 한 시도 자체는 긍정적으로 평가하며 “Red Hat이 Fedora 밖에서 뭔가를 할수록, 회사가 Fedora 지원 자체를 재고할 위험이 커진다”고 지적했다.

이 논란 직후인 7월 1일, “change wrangler” Aoife Moloney는 Fedora의 커뮤니티 이니셔티브 프로세스 전체를 일시 중단한다고 발표했다. AI 개발자 데스크톱 사례가 “새 아이디어가 존중받는 피드백을 받고 Council의 지지를 얻는 프레임워크”로서 이니셔티브 프로세스가 실패했음을 보여줬다는 것이다. 같은 시기 FESCo 위원 “Maxwell G”는 변경(change) 프로세스 자체도 손볼 때가 됐다며 위키·Wikitext 대신 Git 저장소의 Markdown 파일로, Discourse 포럼과 메일링 리스트로 쪼개진 논의도 한 곳으로 모으자고 제안했다. Björn Persson은 실제로는 위키·Pagure·Bugzilla·GitLab까지 열 곳 넘는 곳에 흩어져 있었다며 이 제안에 공감했지만, 새 웹 애플리케이션을 자체 개발하자는 의견에는 “Fedora는 뭔가를 만들어놓고 장기간 유지보수하지 못한, 실망스러운 전례가 많다”(Daniel P. Berrangé)는 회의적 반응이 나왔다.

LSFMM+BPF 서밋 후속: tracepoint 다중 연결, BPF LSM 변조 방지, famfs, sched-ext

5월 크로아티아 자그레브에서 열렸던 2026 LSFMM+BPF 서밋 취재가 이번 주에도 이어졌다. Jiri Olsa가 진행한 tracepoint 다중 연결 작업은 이미 머지되어 7.2 커널에 포함된다. 기존에는 BPF 프로그램 하나가 tracepoint 하나에만 붙을 수 있었는데, kprobe만큼 유연하면서도 tracepoint 특유의 실행 속도(kprobe 대비 최대 2배)를 지키는 게 관건이었다. 트램폴린별로 따로 걸던 락을 없애고 32개짜리 락 풀을 공유하는 방식으로 lockdep의 48-lock 제한 문제를 해결했고, 라이브 커널 패치와의 락 역전(lock inversion) 문제는 락 획득을 반복 재시도하는 방식으로 우회했다. 다만 다중 tracepoint에 붙은 BPF 프로그램은 함수 시그니처가 제각각이라 검증기가 인자 포인터의 역참조를 허용하지 않는 제약이 남아 있고, x86에 있는 IPI 최소화 트릭이 아직 Arm에는 없어 이 부분은 후속 과제로 남았다.

systemd에서 BPF를 보안 모듈(LSM)로 쓰고 있는 Christian Brauner는 BPF LSM을 변조로부터 지키는 문제로 골머리를 앓고 있다고 발표했다. dm-verity 서명이 유효한 파일만 실행되도록 하는 부분은 잘 만들었지만, 정작 그 BPF 프로그램 자신이 언로드되거나 맵 데이터가 변조되는 걸 막을 “깔끔한 방법을 못 찾았다”는 것이다. 서명된 BPF 프로그램은 로드 시점만 보호할 뿐 언로드는 막지 못하고, exclusive map은 프로그램당 하나만 가능해 그의 프로그램이 필요로 하는 7개 맵을 다 감당하지 못한다. Andrii Nakryiko는 자신은 로드 직후 관련 파일 디스크립터를 전부 기록해 LSM 훅으로 보호하는 자체 방식을 쓴다고 소개했지만, systemd는 재실행(re-exec) 시 파일 디스크립터를 그대로 물려받는 구조라 이 방법이 그대로 통하지 않았다. 결국 파일 디스크립터를 닫아도 참조 카운트가 0이 되지 않게 하는 방향으로 의견이 모였지만, uprobe로 사용자 공간 코드의 제어 흐름 자체를 바꿔치기할 수 있다는 지적까지 나오면서 완전한 변조 방지가 정말 가능한지에 대한 의문은 해소되지 않은 채 세션이 끝났다.

CXL 등 거대 메모리 장치를 여러 서버가 공유하도록 하는 famfs는 2024년부터 3년째 커널 진입을 시도 중이다. 개발자 John Groves는 FUSE 기반 구현에 필요한 ABI 변경을 두고 FUSE 커뮤니티의 반응이 계속 바뀌어 지쳤다고 토로했다. 이번 서밋에서는 BPF를 fault 핸들러로 써서 익스텐트를 계산하자는 아이디어가 나왔지만 실제로는 성능이 나오지 않아 폐기됐고, 대신 Christoph Hellwig와 Darrick Wong이 밀고 있는 FUSE용 iomap 작업과 결합하는 쪽으로 논의가 정리됐다. Wong은 famfs의 파일 맵 패치를 “FUSE map”처럼 범용화된 이름으로 가져가 자신의 iomap 작업과 합치겠다고 제안했고, Groves도 동의하면서 지지부진하던 famfs 머지에 오랜만에 실질적인 진전의 실마리가 생겼다.

sched_ext에서는 두 갈래 작업이 동시에 진행 중이다. Tejun Heo가 이어가는 서브스케줄러 enqueue 경로 작업은 상위 스케줄러가 하위 스케줄러에게 CPU별로 “idle CPU에 배치”, “디스패치 큐에 넣기”, “다른 스케줄러의 태스크 선점” 세 단계의 권한을 나눠줄 수 있게 하는 capability 메커니즘을 도입해, 컨트롤 그룹 간 격리를 지키면서도 계층을 거슬러 올라가는 비용을 피한다. 권한 밖의 CPU에 태스크를 넣으려 하면 거부 큐로 보냈다가 재시도 플래그와 함께 되돌려주는 식이다. 다섯 차례 리비전을 거쳐 7.3 머지를 목표로 하고 있다. 한편 데드라인 스케줄링에서 우선순위 역전을 해결하는 proxy execution은 지금까지 sched_ext와 커널 설정에서 상호 배타적이었는데, Andrea Righi와 John Stultz의 패치는 락을 쥔 프로세스가 대기 중인 프로세스의 스케줄링 컨텍스트를 빌려 실행되는 과정을 sched_ext 스케줄러에게 아예 숨겨버리는 방식으로 이 문제를 푼다. 스케줄러가 참여 의사를 밝히면(SCX_OPS_ENQ_BLOCKED) 블록된 태스크를 enqueue()에서 특별 취급할 수 있게 되며, 이 역시 7.3 머지를 목표로 일곱 차례 리비전을 거친 상태다.

짧은 소식

  • GNOME 보안 이슈 트래킹 공백 예고: 2020년부터 GNOME 보안 이슈를 관리해온 Michael Catanzaro가 AI 생성 보안 제보 급증을 이유로 공개 유예 기간을 90일에서 30일로 단축하고, 12월 1일부로 이 역할 자체에서 물러난다고 밝혔다. 후임자를 구하고 있다.
  • PyPI, 14일 지난 릴리스에 파일 업로드 차단: 게시 토큰 탈취 시 오래된 릴리스가 오염되는 걸 막기 위해 14일이 지난 릴리스에는 새 파일 업로드를 거부한다. LiteLLM·Telnyx 패키지 침해 사건이 재논의의 계기가 됐고, 실제 영향은 상위 1만 5천개 패키지 중 56개에 불과했다.
  • “Half a Second” — XZ 백도어를 다룬 책: Adrian Mastronardi가 2024년 XZ 백도어 사건 전 과정을 다룬 책을 비영리·CC 라이선스로 무료 공개했다.
  • 커널 7.2-rc4 (7월 19일): 14,716개 non-merge changeset, 2,343명의 개발자(481명 첫 기여)가 참여했다.
  • Firefox 153 릴리스: 확장 프로그램의 로컬 파일 접근 권한 기본값 변경, 기본 LAN 접근 제한, 위치정보 접근 시각적 표시, PDF 병합/이미지 삽입, JPEG XL 실험 지원이 추가됐다.

이번 주 핵심 요약

  • Assisted-by 태그는 완전 폐지 대신 모델명 요구만 빼는 쪽으로 기울었지만, Torvalds의 “포크하거나 떠나라” 발언은 LLM 사용 자체보다 그 사용을 둘러싼 윤리적 논의를 커뮤니티가 어디까지 허용할지에 대한 더 근본적인 질문을 남겼다.
  • GNOME 세션 저장/복원은 두 번의 API 실패(동기 방식의 한계, 거부당한 async 시그널)를 거쳐 세 번째 시도 중이지만, GNOME 51에도 시간이 부족해 이 기능을 오래 기다려온 사용자들은 조금 더 기다려야 한다.
  • Fedora의 Hummingbird 트레이드마크 논란은 결국 커뮤니티 이니셔티브 프로세스 전면 중단으로 이어졌다 — Red Hat과 커뮤니티 사이의 오래된 긴장이 프로세스 자체의 정당성 문제로 번진 사례다.
  • famfs는 BPF 기반 아이디어가 폐기되고 대신 FUSE iomap 작업과 합치는 쪽으로 정리되면서, 3년 만에 처음으로 뚜렷한 머지 경로가 보이기 시작했다.
  • sched_ext는 서브스케줄러 enqueue 경로와 proxy execution 호환이라는 두 가지 오랜 숙제를 동시에 7.3 머지 목표로 진행 중이며, BPF LSM 변조 방지는 여전히 완전한 해법 없이 열린 문제로 남아 있다.

원문: LWN.net Weekly Edition for July 23, 2026

답글 남기기