Linus Torvalds zaakceptował do jądra Linux 7.1, którego wydanie przewidywane jest na połowę czerwca, zestaw zmian z nową implementacją sterownika systemu plików NTFS. Nowy sterownik został dodany pod nazwą „ntfs”, które wcześniej było używane dla usuniętego z jądra starego sterownika działającego w trybie tylko do odczytu. Do tej pory głównym sterownikiem NTFS w jądrze pozostawał ntfs3, dodany kilka lat temu przez firmę Paragon Software.
Nowa implementacja została przygotowana przez dewelopera jądra Namjae Jeon (Namjae Jeon), który wcześniej brał udział w rozwoju exFAT, KSMBD i innych subsystemów. Prace nad sterownikiem trwały około czterech lat i stanowią on przeróbkę oryginalnego sterownika NTFS jądra z czystszą bazą kodu, w której dodano wsparcie dla zapisu, nowocześniejsze funkcje i lepszą integrację z aktualnymi mechanizmami jądra Linux.
Wśród zalet nowej implementacji wymienia się pełne wsparcie dla zapisu, wyższą stabilność w porównaniu do ntfs3, przechodzenie większej liczby testów xfstests, a także wykorzystanie nowoczesnych możliwości jądra, takich jak iomap i folio. Ponadto, dla nowej implementacji przygotowano narzędzia użytkowe dla fsck. Według autorów, pod względem wewnętrznej integracji z nowoczesnymi funkcjami jądra nowy sterownik wygląda korzystniej niż obecny ntfs3.
Przed dodaniem do głównej gałęzi kod przez około dwa miesiące znajdował się w linux-next, gdzie przechodził dodatkowe testy i przegląd. Całkowita objętość nowej i przerobionej bazy kodu szacowana jest na ponad 36 tysięcy linii.
Co ciekawe, początkowo Linus Torvalds odrzucił pierwszą próbę dodania nowego sterownika z powodu problemów z formatowaniem pull request w Git, jednak po przesłaniu poprawionej wersji zmiany zostały przyjęte. Sam Torvalds określił zdarzenie jako „ntfs resurrection”. Przy tym sterownik ntfs3 na razie pozostaje w drzewie źródłowym jądra, a nową implementację można dodać przez opcję NTFS_FS do Kconfig.
Źródło: linux.org.ru
