Việc phát triển nhân Linux một lần nữa làm nổi bật những tiêu chuẩn khắt khe chi phối một trong những dự án mã nguồn mở quan trọng nhất thế giới. Tranh cãi mới nhất xoay quanh việc từ chối một đóng góp mã cho hỗ trợ kiến trúc RISC-V, cho thấy cách thời gian, chất lượng mã và các quyết định kiến trúc giao thoa trong phát triển nhân.
Nộp Muộn Gây Ra Phản Ứng Mạnh Mẽ
Sự cố bắt đầu khi Palmer Dabbelt , một kỹ sư phần mềm tại Meta (trước đây là Facebook ), nộp một bộ bản vá RISC-V cho cửa sổ merge Linux 6.17. Thời điểm này tỏ ra đặc biệt có vấn đề, vì Linus Torvalds trước đó đã cảnh báo các nhà phát triển về lịch trình di chuyển sắp tới của ông do các sự kiện gia đình trên khắp Hoa Kỳ và Phần Lan . Torvalds đã yêu cầu rõ ràng việc nộp sớm và cảnh báo rằng các yêu cầu pull muộn sẽ phải đối mặt với sự xem xét nghiêm ngặt hơn trong giai đoạn này.
Bối cảnh thời gian:
- Xung đột thời gian cửa sổ merge Linux 6.17 với các sự kiện gia đình của Torvalds
- Torvalds đi du lịch để tham dự lễ cưới và sinh nhật tại Mỹ và Phần Lan
- Các cải tiến RISC-V được hoãn lại cho chu kỳ phát triển Linux 6.18
Vấn Đề Kỹ Thuật Vượt Ra Ngoài Thời Gian Nộp Kém
Trong khi việc nộp muộn ban đầu gây ra chỉ trích, các vấn đề kỹ thuật sâu hơn đã xuất hiện khi xem xét. Bản vá bao gồm các sửa đổi đối với các tệp header Linux chung thay vì giới hạn các thay đổi trong mã cụ thể cho RISC-V. Quyết định kiến trúc này làm dấy lên lo ngại về tác động tiềm tàng đến các thành phần nhân không liên quan và tính ổn định tổng thể của hệ thống.
Hàm Helper Gây Tranh Cãi Nhận Chỉ Trích Gay Gắt
Yếu tố gây tranh cãi nhất liên quan đến một hàm helper có tên make_u32_from_two_u16()
, được thiết kế để kết hợp hai số nguyên không dấu 16-bit thành một số nguyên 32-bit. Torvalds mô tả hàm này là điên rồ và vô nghĩa, lập luận rằng nó che giấu thứ tự dữ liệu và đưa vào sự phức tạp không cần thiết. Ông cho rằng hàm này làm cho mã khó hiểu hơn và tích cực làm giảm chất lượng của codebase.
Các Vấn Đề Kỹ Thuật Chính Được Xác Định:
- Hàm hỗ trợ
make_u32_from_two_u16()
được đánh giá là không cần thiết và gây nhầm lẫn - Các thay đổi tệp header chung thay vì các thay đổi chuyên biệt cho RISC-V
- Nộp muộn trong cửa sổ merge mặc dù đã được cảnh báo trước đó
- Tác động tiêu cực tiềm tàng đến các thành phần kernel không liên quan
![]() |
---|
Linus Torvalds bày tỏ mối quan ngại của mình về thiết kế phức tạp của hàm hỗ trợ trong các bản vá RISC-V bị từ chối |
Lo Ngại Về Ô Nhiễm Tệp Header Chung
Quyết định đặt chức năng cụ thể cho RISC-V trong các tệp header chung đặc biệt làm Torvalds bực tức. Ông nhấn mạnh rằng những thực hành như vậy có thể tác động tiêu cực đến hệ sinh thái Linux rộng lớn hơn bằng cách buộc mã không liên quan phải thích ứng với các yêu cầu cụ thể cho kiến trúc. Cách tiếp cận này vi phạm các nguyên tắc phát triển nhân đã được thiết lập ưu tiên sự tách biệt rõ ràng giữa các thành phần chung và cụ thể cho kiến trúc.
Đặt Ra Kỳ Vọng Rõ Ràng Cho Các Đóng Góp Tương Lai
Sau khi từ chối, Torvalds đã đưa ra các hướng dẫn cụ thể cho các đóng góp tương lai. Ông yêu cầu các đóng góp tập trung độc quyền vào các thay đổi cụ thể cho kiến trúc trừ khi có lý do thuyết phục cho các sửa đổi chung. Bất kỳ thay đổi chung nào cũng phải chứng minh lợi ích rõ ràng và đến trước thời hạn. Chỉ thị này vừa là cảnh báo cho người đóng góp trực tiếp vừa là hướng dẫn cho cộng đồng phát triển rộng lớn hơn.
Phản Hồi Của Nhà Phát Triển Và Phản Ứng Cộng Đồng
Dabbelt thừa nhận phản hồi và cam kết cải thiện cả thời gian nộp và chất lượng mã cho các đóng góp tương lai. Cuộc trao đổi đã gây ra các phản ứng khác nhau trong cộng đồng phát triển, với một số người bảo vệ cách tiếp cận trực tiếp của Torvalds là cần thiết để duy trì tiêu chuẩn dự án, trong khi những người khác đặt câu hỏi liệu giọng điệu có phục vụ mục đích xây dựng hay không.
Sự Tiến Hóa Của Phong Cách Lãnh Đạo
Sự cố này phản ánh cách tiếp cận lãnh đạo đã tiến hóa nhưng vẫn đòi hỏi khắt khe của Torvalds . Trong khi phong cách giao tiếp của ông đã điều độ hơn kể từ cam kết năm 2018 về việc cải thiện tương tác với nhà phát triển, ông vẫn duy trì tiêu chuẩn không thỏa hiệp về chất lượng mã và giao thức nộp. Sự cân bằng này giữa hành vi chuyên nghiệp và sự nghiêm ngặt kỹ thuật tiếp tục định hình văn hóa phát triển nhân Linux .
![]() |
---|
Linus Torvalds tiếp tục đặt ra những tiêu chuẩn cao về chất lượng mã nguồn và tương tác trong cộng đồng phát triển nhân Linux |
Nhìn Về Phía Trước Với Linux 6.18
Các cải tiến RISC-V bị từ chối sẽ cần phải chờ đợi chu kỳ phát triển Linux 6.18, với điều kiện chúng giải quyết các lo ngại đã xác định và đến trong khung thời gian thích hợp. Sự chậm trễ này nhấn mạnh cách phát triển nhân ưu tiên tính ổn định lâu dài và chất lượng mã hơn việc bổ sung tính năng ngay lập tức, ngay cả khi các đóng góp đến từ các công ty công nghệ lớn.