
리눅스커널의 러스트 코드 병합을 둘러싼 논쟁의 파장이 계속되고 있다. 리눅스커널 유지관리자를 소셜미디어에서 공격했다는 비난을 받았던 아사히리눅스의 헥터 마틴은 커널 유지관리자에서 사임한데 이어 아사히리눅스 리더에서도 사임했다. 리눅스커널뿐 아니라 여러 오픈소스 프로젝트 관리자의 번아웃이 중요한 이슈로 떠올랐다.
헥터 마틴은 지난 14일 자신의 블로그에 “아사히 리눅스 프로젝트 리더에서 사임한다”고 밝혔다.
헥터 마틴은 지난달 18일부터 이달초까지 리눅스커널 관리자 메일링리스트에서 벌어진 러스트 코드 기반 장치 드라이버의 DMA API 접근 논쟁에서 러스트 측의 편을 들고 커널 유지관리자를 맹비난했던 인물이다. 리누스 토발즈는 논쟁 과정에서 침묵을 지키다가 헥터 마틴의 행동을 나무랐다. 헥터 마틴은 리눅스커널에 러스트를 병합하는 문제에서 리누스 토발즈를 비롯한 핵심 유지관리자의 지지와 개발 프로세스 개선을 요구했지만, 리누스 토발즈와 커널 유지관리자들은 보수적 입장을 유지했다. 헥터 마틴은 이에 리눅스커널 유지관리자에서 사임했다.(관련기사 바로가기)
헥터 마틴은 2020년 애플에서 Arm 아키텍처 기반의 PC용 프로세서 M1 칩을 공개한 후 애플 M1 칩에서 구동가능한 리눅스 배포판을 개발해왔다. 아사히리눅스라 불리는 이 프로젝트는 리눅스커널 차원에서 코드를 반영해줘야 원활히 진행될 수 있었고, 헥터 마틴은 직접 커널 유지관리자로 참여해 Arm 기반 애플 M 계열 칩 지원 부분에서 활동했다.
헥터 마틴은 14일 블로그에서 “리누스의 러스트를 리눅스에 통합하는 방식은 리더십의 중대한 실패라고 생각한다”며 “이렇게 큰 프로젝트가 살아남으려면 주요 이해 관계자의 상당한 지원이 필요한데, 그의 접근 방식은 그저 기다리고 지켜보는 것”이라고 비판했다.
그는 “리누스 아래 여러 하위시스템 유지관리자는 프로젝트를 방해하거나 방해하기 위해 최선을 다했고, 용납할 수 없는 언어적 학대를 가하며 일반적으로 사기를 떨어뜨렸지만 아무런 조치도 없었다”며 “리눅스용 러스트의 주요 유지관리자 중 한명은 이미 몇달 전 사임했다”고 지적했다.
그는 논쟁 당시 자신의 발언에 대해 공격적이었다는 점을 인정하면서도 “불의를 보면 그냥 넘어가는 사람이 아니어서 또 다른 장기 유지관리자가 자신의 지위를 악용해 리눅스용 러스트를 방해하고 업스트림 진행을 막으려 했을 때 목소리를 냈다”며 “그리고 이어진 반응은 나를 벼랑 끝으로 몰고 간 마지막 한 방울이었고, 더 이상 그 커뮤니티에 관여하고 싶지 않아서 애플 Arm 지원의 업스트림 유지관리자 직위에서 사임했다”고 설명했다.
그는 “해당 스레드 후반에 또 다른 주요 유지관리자가 ‘우리는 얇은 파란색 선’이라고 말했고, 그들과 내가 아무런 관계도 갖고 싶지 않다는 것을 더욱 확신하게 됐다”며 “그 사람은 이전에 리눅스용 러스트 유지관리자가 그만두게 만든 장본인”이라고 지적했다. 해당 인물은 테어도어 조를 가리킨다.
그는 유지관리자 사임 후 리눅스커널 커뮤니티 구성원이 겉으로 자신을 지지하는 척하면서 뒤로 아사히리눅스를 비난하는 세력을 규합했다는 사실을 알게 됐다고 밝혔다. 그는 “아사히리눅스가 생존하기 위해 상호작용해야 하는 여러 프로젝트에서 높은 지위에 있는 이들 중 한 명이 나를 직접 학대하고 괴롭히는 개인들과 편을 들었다는 소식을 들었다”며 “내가 아사히리눅스에서 일하기 위해 누군가에게 고용됐다는 등의 거짓말도 돌았다”고 적었다.
그는 “일부 사람이 내 게시물을 좋아하지 않을 수 있다는 걸 이해하고 내가 거칠다는 것은 인정하지만 내 배후에서 파벌을 형성하고 자신의 의도를 두고 거짓말하는 사람들과 함께 일할 수 없다”며 “커뮤니티의 독인 사람들 대신 메신저에게 책임을 돌리는 사람들과 함께 일할 수 없다”고 덧붙였다.
헥터 마틴은 리누스 토발즈의 아사히리눅스에 대한 태도도 비판했다. 그는 “애플이 M1을 출시했을 때 리누스 토발즈는 리눅스 실행을 바랐지만 그럴 수 있을 것이란 희망은 별로 없었다”며 “우리가 그것을 실현했고, 토발즈의 열정이 우리 커뮤니티에 대한 지원으로 이어지고 업스트림의 어려움을 해결하는데 도움되길 바랐지만 슬프게도 그런 일은 이뤄지지 않았다”고 했다.
그는 “2023년 11월 리누스 토발즈에게 커널 기여와 유지 관리의 과제를 논의하고 어떻게 도울 수 있는지 알아보자는 초대장을 보냈지만, 그는 답장을 하지 않았다”고 덧붙였다.
헥터 마틴은 과거 닌텐도 위 게임콘솔에서 비공식 앱을 구동할 수 있는 리눅스 소프트웨어를 개발했던 과거의 경험을 거론하며 ‘번아웃’을 화제로 끌어올렸다. 그는 닌텐도 위 리눅스를 재미로 개발했는데, 불법복제 게임을 원하는 사람들의 탈옥 기능 강화 압박에 번아웃을 겪었다고 밝혔다.
아사히리눅스 프로젝트의 경우도 초기 한두달 엄청난 양의 지원과 기부금을 받았지만, 기술적 어려움과 자격을 가진 사용자의 무책임한 기능 추가 요구에 시달렸다고 했다. 공급업체의 지원이나 문서 없이 처음부터 구축해야 하는 상황에서 상당한 업적을 이뤘음에도 사람들은 더 많은 것을 원했다고 적었다. 또 “프로젝트 시작 후 계속 기부금과 약속은 천천히 줄었고, 역대 최고 월간 기부금은 처음 한두달만 이었을 뿐 많은 것을 이룰수록 지원은 더 줄어들었다”고 밝혔다.
그는 리눅스커널 업스트림 프로젝트에 러스트를 병합하는 대신 별도의 포크를 하라는 일부의 주장에 대해서도 반박했다.
그는 “사람들은 왜 러스트 상황을 더 오랜 기간 더 방치하고 그때까지 다운스트림을 유지할 수 없는 지 의아할 수 있다”며 “한가지 이유는 이 상황이 현재 개발자의 사기를 저하시키고 있기 때문이고, 또 다른 이유는 애플 GPU 드라이버 자체가 리눅스용 러스트의 유효함을 증명하는 주요 증거기 때문”이라고 설명했다.
그는 “단순히 업스트림을 목표로 하지 않는 것은 관심 부족으로 간주될 수 있으며, 리눅스용 러스트 노력의 생존 가능성을 손상시킬 수 있다”며 “역설적이게도 리눅스 커널 개발 모델은 업스트림을 장려하고 다운스트림 포크를 처벌하도록 설계됐다”고 주장했다.
그는 “업스트림을 신경쓰지 않고 완전한 하드 포크를 유지하는 게 가능하지만, 이는 실현 가능한 장기적 솔루션이 아니다”며 “아사히리눅스 다운스트림 트리는 최신 업스트림 커널을 기반으로 지속적으로 리베이스되며 이는 다운스트림으로 전달하는 모든 추가 패치가 유지 관리 작업 부하를 증가시키고, 때론 상당히 증가한다”고 설명했다.
그는 “더 심오한 문제가 있는데, kernel/Mesa 정책에 따르면 GPU 드라이버에 대한 업스트림 Mesa 지원은 커널 측에서 병합 준비가 될 때까지 병합 및 활성화될 수 없어서 사용자에게 Mesa 포크를 제공해야 한다”고 했다.
그는 2011년 콘 콜리바스가 리눅스커널 커뮤니티에서 퇴장한 후 리눅스커널에 취미로 기여하는 사람이 없어졌다고 지적했다. 기업에 고용돼야 리눅스커널 유지관리자로 살아갈 수 있는 상황이고, 취미로 오픈소스 프로젝트를 유지하는 것에 지쳤다고도 했다.
“나는 이제 지쳤어요”
오픈소스 커뮤니티에서 ‘번아웃’은 오랜 문제지만 쉽게 해결되지 않는 문제다. 많은 오픈소스 프로젝트 리더가 처음엔 기꺼운 마음으로 시작하지만, 이후 무책임한 사용자의 무분별한 요구나 비난에 시달리고, 활동을 인정받지 못하는 상황에 직면한다. 사용자 증가로 업무는 증가하지만 물적 혹은 심리적 보상을 전혀 받지 못하다가 번아웃을 선언하며 프로젝트에서 떠나 버리는 일이 비일비재하다.
헥터 마틴은 자신의 번아웃 요인을 리눅스커널 커뮤니티의 수구적 행동이라고 지목했는데, 아이러니하게도 리눅스커널 유지관리자도 번아웃을 호소하는 상황이다.
커널 유지관리자들은 각종 프로젝트 기여자들의 코드에서 급진적이고 오류를 일으킬 가능성 있는 부분의 수락을 막는 책임을 위해 개인적으로 많은 시간을 할애하지만, 그로 인해 승진이나 성과 평가에서 손해를 입는다고 호소한다. 다양한 기여자의 요구와 비난에 시달리면서 적지 않은 봉사를 하고 있지만 언어 폭력과 과로로 스트레스에 시달리면서 인정도 받지 못하고 지쳐가고 있다는 애기도 한다.

러스트 프로젝트 내부에서도 번아웃 문제가 지속적으로 거론돼왔다.
지난달 16일 러스트 수석 엔지니어인 진 넬슨은 블로그에서 러스트 프로젝트의 번아웃 문제를 지적했다. 그는 “번아웃으로 러스트 프로젝트를 그만둔 사람의 수는 충격적으로 많으며, 프로젝트에서 번아웃 직전인 사람의 수도 충격적으로 많다”고 밝혔다.
그는 러스트에 적극적으로 기여할수록 많은 작업을 멘토없이 독립적으로 수행하게 되고, 너무 적극적으로 참여해서 기존 유지관리자에게 많은 책임을 넘겨 받아 따라갈 수 없는 규모의 풀리퀘스트를 검토하다 피곤해진다고 지적했다.
프로젝트가 자신없이 망가질 것이란 책임감이 유지관리자를 짓누른다는 게 번아웃 문제를 다루는 전문가들의 분석이다. 그들은 무급 자원봉사로 오픈소스 프로젝트에 초과근무를 하지 말고 수년 동안 계속 번아웃을 조심하면서 스스로를 잘 대우하라고 조언한다.
오픈소스 소프트웨어 생태계는 자원봉사자에게 과도한 책임을 부과하는 방식으로 유지되고 있다. 기여자와 유지관리자는 별도의 자기 직업을 가진 상태에서 무급으로 오픈소스 프로젝트에 참여하고 근무 외 시간을 들여 코드 리뷰와 커밋을 하고 있다. 이런 자원봉사자 의존은 오픈소스 생태계의 균열을 키우는 중요한 요인이다.
오픈소스 프로젝트 관리자를 지치게 만드는 상황은 매우 다양하게 나타난다. 열심히 코드를 리뷰하고 프로젝트를 개선하는 가운데 일부 사용자가 업데이트 주기가 길어진다고 맹목적 비난을 가한다. 혹은 본래 직업을 포기하면서 오픈소스 프로젝트에 참여하고 있는데 비도덕적인 기업에서 후원을 받았다며 진정성을 훼손당하기도 한다. 갑자기 오픈소스 프로젝트를 복제해 상용 소프트웨어로 판매하는 강탈자도 등장한다. 저작권 트롤을 통해 지적재산권 침해로 소송을 당하기도 한다. 수많은 기여자의 요구는 각자 이해 관계에 따라 충돌할 수 있고, 그 싸움을 중재하다 구태로 몰려 쫓겨나기도 한다.
리눅스재단과 하버드대학교애서 2022년 발간한 자유 및 오픈소스 소프트웨어 설문조사 보고서에 의하면, 대중적인 오픈소스 소프트웨어 대부분이 극소수 기여자에 의해 개발되고 유지되고 있다. 타이드리프트의 작년 설문조사에 따르면, 오픈소스 유지관리자의 60%는 무보수로 일하며 그들 중 상당수는 작업을 그만두거나 그만두는 것을 고려하고 있다. 사용자는 늘어나지만 가꾸는 사람은 늘어나지 않는 공유지의 비극이다.
오픈소스 프로젝트 유지관리자의 업무는 소수에게 집중되고 점차 늘어나고 있다. 대중성 확보는 곧 보안성 강화 부담으로 이뤄지고, 오픈소스 관리자들은 매년 전년보다 몇배 더 늘어나는 보안성 검토 업무에 시달리고 있다. 그뿐 아니라 프로젝트 유지를 위한 홍보, 기금 모금 활동과 커뮤니티 관리, 멘토링, 이슈 분류 등의 코드 작업과 상관없는 일도 많다.
오픈소스 프로젝트는 기업 주도형과 개인 주도형으로 나뉘는데, 그 유형에 상관없이 유지관리자의 번아웃 문제는 점차 심화되고 있다. 리눅스재단이나 러스트재단, 아파치소프트웨어재단 등 거대한 거버넌스 조직 하의 프로젝트 대다수가 일부 소수 관리자에 의존하며 유지된다.
문제는 프로젝트 관리자의 이탈이 늘어나면서 전세계 소프트웨어 공급망 보안의 위험성도 높아진다는 점이다. 세계의 수많은 소프트웨어와 IT시스템이 절대적으로 오픈소스 소프트웨어에 의존하고 있는데, 그 핵심을 이루는 오픈소스 프로젝트들이 관리자의 이탈과 부주의한 검토로 보안 허점을 내포한 채 배포될 소지를 갖고 있다. 많은 사용자를 가진 인기 오픈소스 프로젝트가 어느 순간 갑자기 붕괴돼 IT시스템을 위협할 것이란 우려가 커지는 상황이다.
유지관리자의 수가 사용자와 기여자의 규모에 비례해 늘어나고, 유지관리자의 다양한 역할을 여러 구성원에게 분배하면 번아웃 문제를 줄일 수 있다. 그러나 유지관리 책임자 슈모를 늘리는 것에 부정적인 입장을 가진 사람도 많고, 유지관리자를 자처하는 기여자도 적어 쉽지 않은 문제다.
기업의 오픈소스 프로젝트 후원도 점차 줄어들고 있다. 대개 오픈소스 프로젝트에 기업의 기여나 기부는 유지관리자와 기여자를 고용하는 방법에 집중되며, 실질적 자금 지원은 거의 이뤄지지 않는다. 특히 요즘같이 경기 불확실성이 커지면 오픈소스 프로젝트 지원 규모를 더욱 줄이는 게 다반사다.
오픈소스 프로젝트는 이제 강력한 힘을 얻었지만, 과도한 책임이 오픈소스를 이끌어온 소수 관리자의 번아웃을 더 가속하고 있다. 너무 복잡한 문제여서 그 해법 마련도 쉽지 않다는 게 더욱 안타깝고 걱정스럽다.
한편, 아사히리눅스는 헥터 마틴의 사임 후 팀원들의 관리 하에 계속 유지되고 있다. 리눅스용 러스트도 계속 되고 있다.
글. 바이라인네트워크
<김우용 기자>yong2@byline.network