2万7000行ものコードをひとつのファイルに書いたLinuxカーネルパッチが送りつけられる
最も有名なオープンソースプロジェクトのひとつであるLinuxカーネルは、多くのエンジニアがメーリングリストでやり取りし、カーネル開発のやり方を尊重しながら開発されています。LinuxカーネルはこれまでNTFSの書き込みをサポートしていませんでしたが、ソフトウェア開発企業のパラゴンソフトウェアが書き込みも含む完全なNTFS機能をサポートしたカーネルパッチを提供。しかし、その提供方法に少し問題があったと、Linuxのハードウェアレビューや関連ニュースを提供するニュースサイト「Phoronix」のマイケル・ララベル氏が報じています。
Paragon Looks To Mainline Their NTFS Read-Write Driver To The Mainline Linux Kernel - Phoronix
https://www.phoronix.com/scan.php?page=news_item&px=Paragon-Read-Write-NTFS-Linux
Paragon Sends Out Updated NTFS Driver They Want To Mainline For The Linux Kernel - Phoronix
https://www.phoronix.com/scan.php?page=news_item&px=Paragon-Linux-NTFS-Driver-V2
Linux kernel maintainers tear Paragon a new one after firm submits read-write NTFS driver in 27,000 lines of code • The Register
https://www.theregister.com/2020/08/18/paragon_tries_to_contribute_ntfs/
パラゴンソフトウェアは以前から、NTFSの商用ドライバーをLinuxやその他のプラットフォームに提供していました。しかし、NTFSが他の先進的なファイルシステムに機能的に追い越されている状況を鑑みて、自らのコードをLinuxカーネルに統合し、コミュニティに貢献しようと考えたとのこと。これまでLinuxでNTFSに対して書き込みを行う場合はNTFS-3Gというソフトウェアを用いるのが一般的でしたが、提供されたパッチが採用されれば、書き込みも含めた完全なNTFSの機能をLinuxカーネル単体で利用できるようになります。
しかし、パラゴンソフトウェアによるパッチの提供方法は、少々問題がありました。パラゴンソフトウェアはカーネルパッチを提供する際、2万7000行ものコードをひとつのファイルに記述してメーリングリストに送信。NTFSの完全な実装を歓迎する声ではなく、「この化け物をどうやってレビューするんだ?」という返信が、パラゴンソフトウェアのパッチに対する開発者の最初の反応でした。
Linuxの「カーネル開発のやり方」は日本語訳されており、Linuxカーネル開発に参加する場合は読んでおきたい資料です。資料には、サイズの大きいコードは確認のための時間や労力が大きくなるという理由から、「Linuxカーネルコミュニティは、一度に大量のコードの塊を喜んで受容することはありません」という記述があり、今回のパラゴンソフトウェアの行為はコミュニティにおける「マナー違反」だったことがわかります。
パラゴンソフトウェアはその後、パッチを10ファイルに分けて再びメーリングリストに送信しており、自らのマナー違反に気付いた様子。ララベル氏は「いずれにせよ、読み書き可能なNTFSドライバーがLinuxカーネルに採用される可能性があるのはうれしいことです」と語っており、Phoronixのコメント欄にはパッチの採用を待望するコメントもありました。
・関連記事
プログラマーの努力とコードの行数が比例しない7つの理由 - GIGAZINE
コードを全面的に書き直すよりもリファクタリングを少しずつ積み重ねるべき理由 - GIGAZINE
Linuxで「マスター/スレイブ」「ブラックリスト/ホワイトリスト」の語句置き換えが決定 - GIGAZINE
SpaceX開発のロケット「Falcon 9」はLinuxとC++で宇宙へ飛び立っている - GIGAZINE
・関連コンテンツ