Tokom rasprave o novim ispravkama predloženim za uključivanje u kernel 6.11-rc5, autor Bcachefs, Linus Torvalds, napisao je da počinje žaliti zbog prihvatanja datotečnog sistema Bcachefs u kernel. Torvaldsovo nezadovoljstvo je rezultat toga što Kent Overstreet, autor Bcachefs, u fazi konačnih kandidata za oslobađanje šalje prevelike ispravke koje ne samo da ispravljaju greške, već i nastavljaju razvoj funkcionalnosti, iako su funkcionalne promene dozvoljene samo u ranoj fazi razvoja nove verzije, dok se u fazi rc5 prihvataju samo pojedinačne male ispravke, čija veličina ne bi trebala prelaziti 100 linija koda.
Poslani Bcachefs patch, koji je dodao 1309 linija i uklonio 671 liniju u 39 datoteka, osim ispravki grešaka, uključivao je dva značajna unapređenja: podršku za novu strukturu podataka za upravljanje listom slobodnih elemenata u kešu i mogućnost konvertovanja hash tabela za keš. Nova struktura je dodana kako bi se eliminisale suvišne blokade keša i isključile situacije koje mogu dovesti do sukoba blokada pod višekratnim opterećenjima.
To nije prvi put da se velike ispravke za Bcachefs šalju nakon zatvaranja prozora za prijem izmena, i nije prvi put da se umesto jednostavnih ispravki grešaka napreduju teža funkcionalna dopuna koja se unosi kroz zahteve za ispravke u konačnim fazama razvoja nove verzije. Linus Torvalds odgovorio je na poslani pull zahtev:
«Dosta. Posljednji pull-zahtjev također je bio veliki. Ovaj pull-zahtjev je također preobiman, obuhvaća stvari koje nisu povezane s Bcachefs, i čak ni izdaleka nije neka vrsta regresije. U nekom trenutku, 'ispravljanje nečega' jednostavno prelazi u razvoj, i to je taj trenutak. Nitko pri zdravoj pameti ne koristi Bcachefs i ne očekuje od njega stabilnost, stoga je svaki korisnik područje eksperimenata. Bcachefs zakrpe postale su svojevrsni 'veliki razvoj tijekom ciklusa pripreme za izdavanje, a ne prije njega', do te mjere da počinjem zažaliti što sam prihvatio Bcachefs. Ako Bcachefs ne može raditi ispravno prema rasporedu razvoja glavnog (upstream) jezgra, možda ga ne bi trebalo biti u glavnom jezgru. Ovo već izlazi iz okvira smiješnog.»
Kent Overstreet je odgovorio da je Bcachefs zasigurno pouzdaniji od Btrfs i da radi na tome da je učini otpornijom i pouzdanijom od XFS i EXT4, zahvaljujući implementaciji mehanizma cjelovitosti podataka od kraja do kraja (end to end data Integrity). Kent je također naglasio da se predložene promjene izravno odnose na povećanje pouzdanosti, i ako pogreška u drugim podsistemima jezgra može biti ograničena na pada i ponovnog pokretanja, u datotečnim sustavima cijena pogreške je vrlo visoka i može dovesti do skrivene štete podataka koja se može primijetiti tek tjednima kasnije.
Torvalds je prigovorio da još uvijek ne postoje veliki distribucijski paketi Linuxa koji koriste Bcachefs, i istaknuo da bi se trebala pridržavati pravila razvoja izdanja jezgra Linuxa, jer postoji mogućnost pojave novih grešaka zbog takvih velikih zakrpa koje sadrže više od 1000 redaka koda. Trenutno raspravljene ispravke za Bcachefs nisu prihvaćene u jezgru Linuxa, a programer Bcachefs još nije pripremio ažuriranu verziju pull-zahtjeva, oslobođenu dodavanja nove funkcionalnosti i usredotočenu samo na ispravke grešaka.
Izvor: opennet.ru
