BcacheFS kontra Linus Torvalds – A Linux kernelből való kizárás története
Kérdés: Ez azt jelenti, hogy Linus kirúgta a BcacheFS-t a kernelfából?
Válasz: Röviden: igen, úgy tűnik, hogy Linus Torvalds de facto kirúgta a BcacheFS-t a Linux kernelből – legalábbis a 6.17-es verziótól kezdve, ha nem történik valami nagyon komoly fordulat.
Mi történt?
- Linus Torvalds kijelentette: „we’ll be parting ways in 6.17”, és „we’re done”. Ez egyértelmű utalás arra, hogy a fájlrendszer ki fog kerülni a fő kernelből.
- Kent Overstreet (a BcacheFS fő fejlesztője) visszavágott: „I positively enjoy working with you - when you’re not being a dick.” Ez tovább fokozta a konfliktust.
- Ez nem új – 2023 végén a Linux Code of Conduct egy hónapra már el is tiltotta Kentet.
Technikai háttér
A BcacheFS egy ambiciózus, CoW-alapú fájlrendszer, amely olyan funkciókat integrál, mint:
- Beépített cache és journaling
- Snapshot támogatás
- Inline tömörítés
- Checksumming és multi-thread I/O
A kritika nem az architektúrát érte, hanem a kód minősége és a kommunikációs stílus volt problémás.
Mi következhet?
- A BcacheFS várhatóan kikerül a Linux kernel 6.17-es verziójától.
- Ha nem lesz új maintainer, vagy Kent nem változtat hozzáállásán, a fájlrendszer halálra van ítélve.
- Alternatíva lehet: külön patchként fenntartani, vagy egy disztribúcióban külön támogatni.
Frissítés – 2025. július
Kérdés: Meggondolta magát Linus? Lesz még esély BcacheFS-nek?
Válasz: Nem. A legfrissebb források szerint Linus nem hátrált meg, a 6.17-es kernelből való kizárás továbbra is érvényben van.
Források (2025. július)
- The Register: Linus hints BcacheFS may be dropped
- Slashdot: Kernel Drama – BcacheFS dropped
- LWN.net: BcacheFS may be headed out of the kernel
- Heise: Linus considers kicking out BcacheFS
Összegzés
Kérdés | Állapot |
---|---|
Linus visszavonta a döntést? | Nem |
BcacheFS a 6.17-es kernelben? | Nem |
Van esély a visszatérésre? | Jelenleg minimális |
(A cikk nyomokban Mesterséges Intelligencia által szolgáltatott adatokat tartalmaz, így a tartalmát érdemes duplán ellenőrizni!)
- A hozzászóláshoz be kell jelentkezni
- 1557 megtekintés
Hozzászólások
Elkezdtem olvasgatni a levelezést, egészen szép baráti bazmegelős csevegés lehetne belőle egy sör mellett, de alapvetően jogosnak tűnik Linus baja. Kent, a bcachefs karbantartója ugyanis egy recovery toolt akar betolni a 6.16-ba, de az RC1 után Linus már csak javításokat fogad be, nem új fícsőröket. Ezt az első válaszoló meg is mondja neki, hogy nem technikai problémák vannak elsősorban, hanem magasról tesz a kernelfejlesztés megszokott workflowjára.
- A hozzászóláshoz be kell jelentkezni
Köszi a linket!
- A hozzászóláshoz be kell jelentkezni
🤣 Mintha a HUP-ot olvasnám! Ebből is látszik, hogy a HUP semmivel nem rosszabb, mint mondjuk az LKML 🤷♂️
trey @ gépház
- A hozzászóláshoz be kell jelentkezni
Ha csak ennyi lenne, akkor a 6.18-ba meg beferne. Gyanitom abban se lesz bcachefs. :)
(De itt most en is Team Linus vagyok)
- A hozzászóláshoz be kell jelentkezni
A bcachefs kódminőségével kapcsolatban az alábbi problémák merültek fel:
* Instabilitás és kísérleti jelleg: Több forrás is instabilnak és kísérletinek tartja, nem javasolják éles rendszerekben való használatát. Gyakori, hogy a felhasználóknak a legújabb kernelre kell frissíteniük a kritikus hibajavításokért. Linus Torvalds maga is megbánta a bcachefs beolvasztását a fő kernelbe.
* Gyakori és kiterjedt javítások: A fejlesztés során túl gyakran és kiterjedten nyújtanak be javításokat, amelyek inkább új funkciók fejlesztésének tűnnek, semmint hibajavításoknak, és ez ütközik a kernel kiadási szabályaival.
* Adatvesztés és adatkorrupció: Aggodalmak merültek fel az adatvesztéssel és az adatkorrupcióval kapcsolatban. Konkrétan említik az "inode_not_unlinked" hibákat, lassú felülírásokat snapshotok esetén, írásvédetté váló fájlrendszert hash tábla hibák miatt, adatkorrupciót "Journal stuck" üzenetekkel, és "misaligned write" írási hibákat. Deadlockok is előfordultak fsck futtatása közben.
* Zárolási kód problémák: Linus Torvalds különösen aggodalmát fejezte ki a zárolási kóddal kapcsolatban, és kifogásolta a nagy, monolitikus "pull request"-eket (egyesített kódbeadványokat).
* Éretlen felhasználói eszközök: A fájlrendszerhez tartozó felhasználói térbeli (userspace) eszközök éretlennek, kiforratlannak minősülnek.
* Kommunikációs stílus: Bár közvetlenül nem kódminőségi probléma, a fejlesztői kommunikáció stílusa is hozzájárult a projekt megítéléséhez, feszültségeket és konfliktusokat okozva, ami közvetve befolyásolhatja a kódminőségről alkotott képet.
- by Gemini.
- A hozzászóláshoz be kell jelentkezni
Mi az a "zárolási kód"?
- A hozzászóláshoz be kell jelentkezni
A zárolási kód (angolul locking code) a számítógép-programozásban használt kódgyűjteményre utal, amely biztosítja, hogy több, egyidejűleg futó folyamat vagy szál ne férjen hozzá egyszerre ugyanazokhoz az adatokhoz vagy erőforrásokhoz, és ne okozzon így inkonzisztenciát vagy adatkorrupciót.
Működése és fontossága
Képzeld el, hogy több ember próbál egyszerre írni ugyanabba a dokumentumba anélkül, hogy tudnának egymásról. Valószínűleg összevisszaság lenne a végeredmény. A zárolási kód pontosan ezt akadályozza meg szoftveres környezetben.
Amikor egy program több szálon fut (például egy webböngésző, amely egyszerre több lapot is betölt, vagy egy operációs rendszer, amely egyszerre több alkalmazást is futtat), ezek a szálak gyakran ugyanazokat a memóriaterületeket vagy fájlokat akarják elérni. Ha két szál egyszerre próbálja megváltoztatni ugyanazt az adatot, az úgynevezett versenyhelyzet (race condition) jöhet létre, ami kiszámíthatatlan és hibás eredményekhez vezethet.
A zárolási kód különféle mechanizmusokat (például mutexeket, szemaforokat, spinlockokat) használ annak biztosítására, hogy egy adott kritikus szekcióba (ahol az adatok módosítása történik) csak egy szál léphessen be egyszerre. Amikor egy szál belép egy ilyen kritikus szekcióba, "zárolja" az erőforrást, és csak akkor oldja fel a zárat, ha végzett vele, így a többi szál addig várni kénytelen.
Problémák a zárolási kóddal
A zárolási kód helyes implementálása rendkívül komplex feladat. A hibásan megírt zárolási kód súlyos problémákat okozhat:
* Deadlock (holtpont): Két vagy több szál kölcsönösen vár egymásra, és egyik sem tud továbbhaladni. Például az A szál vár a B szál által tartott zárat, miközben a B szál vár az A szál által tartott zárat.
* Livelock (élő holtpont): A szálak folyamatosan változtatják az állapotukat, de nem haladnak előre a feladatukban, mert állandóan próbálják elkerülni egymást, vagy ütköznek a zárolási szabályokkal.
* Starvation (éheztetés): Egy vagy több szál soha nem jut hozzá egy erőforráshoz, mert a többi szál folyamatosan elfoglalja azt.
* Performancia romlás: A túlzott vagy rosszul optimalizált zárolás jelentősen lelassíthatja a program végrehajtását, mivel a szálaknak sokat kell várniuk egymásra.
Linus Torvalds, a Linux kernel fő fejlesztője, gyakran rendkívül szigorúan ellenőrzi a kernelbe bekerülő zárolási kódot, mert annak hibái súlyos rendszerösszeomlásokat, adatvesztést és performancia problémákat okozhatnak. A bcachefs esetében valószínűleg ezek a problémák merültek fel, és aggodalmakat váltottak ki a kód stabilitásával kapcsolatban.
-by Gemini.
- A hozzászóláshoz be kell jelentkezni
Hát azért ahhoz is kell skill, hogy emészthető, értelmezhető, ne túl terjengős választ adjon az AI :P
- A hozzászóláshoz be kell jelentkezni
Jaja, be kell állítani a tulajdonságlapot megfelelően.
AI user 0.1 szint
trey @ gépház
- A hozzászóláshoz be kell jelentkezni
Nice:
Pillanatnyilag nincs külön beállítási felület, ahol előre megadhatnád a preferenciáidat. A beállításokat és azt, hogy hogyan válaszoljak, a veled való kommunikáció alapján tudom alakítani.
Egyszerűen csak mondd el nekem, mit szeretnél:
* Emlékeztesselek valamire? Például, "Kérlek, emlékezz arra, hogy a cégem neve 'XYZ Innovációk'."
* Változtassak a válaszaim stílusán? Például, "Kérlek, próbálj meg tömörebben fogalmazni." vagy "Légy egy kicsit barátságosabb a hangnemben."
* Töröljek egy korábbi információt? Például, "Kérlek, felejtsd el azt a címet, amit korábban megadtam."
Ezeket a kéréseket igyekszem figyelembe venni a jövőbeni válaszaim során.
------
A zárolási kód (angolul locking code) a programozásban arra szolgál, hogy szinkronizálja a párhuzamosan futó folyamatokat vagy szálakat, megakadályozva, hogy egyszerre módosítsák ugyanazt az adatot vagy erőforrást. Ez létfontosságú az adatkonzisztencia és a rendszerstabilitás fenntartásához.
Problémák a zárolási kóddal:
A zárolási kód hibás implementálása súlyos következményekkel járhat, mint például:
* Holtpont (deadlock): Szálak kölcsönösen várnak egymásra.
* Élő holtpont (livelock): Szálak folyamatosan változtatják az állapotukat, de nem haladnak előre.
* Éheztetés (starvation): Egy szál sosem jut hozzá egy erőforráshoz.
* Teljesítményromlás: Felesleges várakozások miatt lelassul a program.
Linus Torvalds aggodalmai a bcachefs zárolási kódjával kapcsolatban valószínűleg a fenti kockázatokra vonatkoztak, kiemelve a kernel stabilitásának fontosságát.
- A hozzászóláshoz be kell jelentkezni
illanatnyilag nincs külön beállítási felület, ahol előre megadhatnád a preferenciáidat.
Gemini? Settings > Saved info :)
- A hozzászóláshoz be kell jelentkezni
LOL, akkor ott is van tanítható rész ezek szerint.
trey @ gépház
- A hozzászóláshoz be kell jelentkezni
Ezért használok ChatGPT Plus-t:
Beállítások → ChatGPT testreszabása
A Beállítások → ChatGPT testreszabása menüpontban két fő dolgot állíthatsz be:
Személyiség hangolása – Megadhatod, hogy a ChatGPT milyen stílusban kommunikáljon (pl. tömör, barátságos, professzionális, szókimondó stb.).
Téged érintő infók megosztása – Beírhatsz olyan adatokat (pl. neved, munkaköröd, preferenciáid), amelyeket az asszisztens figyelembe vesz, hogy személyre szabottabb választ adjon.
És:
Mentett memória:
A Mentett memória funkció arra szolgál, hogy tartósan megjegyezzek rólad bizonyos információkat – például a neved, szereped, preferenciáid vagy visszatérő témáid –, hogy hosszabb távon is személyre szabottabb válaszokat adhassak.
Fő funkciói:
Automatikus tanulás: Ha észreveszem, hogy gyakran említesz valamit (pl. a munkaköröd vagy írási stílusod), felajánlom, hogy elmentsem.
Kézi szerkesztés: A Beállítások → Mentett memória menüpont alatt bármikor megnézheted, módosíthatod vagy törölheted ezeket az adatokat.
Teljes kikapcsolás: Ha nem akarod, hogy bármit is megjegyezzek hosszú távon, a memóriafunkció teljesen kikapcsolható.
Fontos: az aktuális beszélgetésen belül nem a memória, hanem az adott kontextus alapján válaszolok. A memória inkább a több beszélgetésen átívelő „emlékezésre” való.
trey @ gépház
- A hozzászóláshoz be kell jelentkezni
Pl:
Milyen képességei legyenek a ChatGPT-nek?
Nálam a beállítása: Vitázó, érvelő. Egyenes, szókimondó. Tömör, sallangmentes.
Ja, a mentési funkció triggerelhető, pl.:
Összefoglaló:HTML
A beszélgetés témájáról egy Drupal Teljes szöveg -> Forrás kompatibilis összefoglalót kérek letisztult HTML-bem és az alján egy Discaimer szöveggel:
<i><p>(A cikk nyomokban <a href="https://hup.hu/faq/20240804/hasznal-e_a_hup_a_hivatalos_tartalmai_eloal…">Mesterséges Intelligencia által szolgáltatott adatokat</a> tartalmaz, így a tartalmát érdemes duplán ellenőrizni!)<p></i>
Mentsd el.
Válasz:
Memória frissítve!
De ez már lvl 0.2 szint.
trey @ gépház
- A hozzászóláshoz be kell jelentkezni
Mit kérek, ha Összefoglaló:HTML-t írok?
A ChatGPT ezt mondta:
Ha azt írod: „Összefoglaló:HTML”, akkor a következőre kérsz:
Egy tömör, informatív összefoglalót a megadott témáról vagy cikkről, HTML formátumban, amely:
-
Letisztult, forrás-kompatibilis HTML legyen (pl. Drupal vagy más CMS szerkesztőbe másolható formában),
-
A tartalom végén szerepeljen egy diszkréten megjelenő disclaimer az MI-forrásról, így:
<i><p>(A cikk nyomokban <a href="https://hup.hu/faq/20240804/hasznal-e_a_hup_a_hivatalos_tartalmai_eloallitasahoz_mesterseges_intelligenciat">Mesterséges Intelligencia által szolgáltatott adatokat</a> tartalmaz, így a tartalmát érdemes duplán ellenőrizni!)</p></i>
Stílusjegyek:
-
Strukturált, könnyen másolható.
-
HTML-ben címek:
<h2>
, bekezdések:<p>
, listák:<ul><li>
. -
Nincs inline CSS vagy felesleges osztály, csak alap HTML-elemek.
-
Nincs sallang, nincs szócséplés – informatív, lényegre törő.
Ha van konkrét szöveg vagy cikk, amit szeretnél összefoglalni ilyen formában, küldd, és átalakítom.
Ezt mondtad:
Melyik oldalra?
A ChatGPT ezt mondta:
A disclaimer, amit a „Összefoglaló:HTML” végére kéred, a HUP-ra (Hungarian Unix Portal) mutat. Pontosabban erre az oldalra:
Ez a link a HUP hivatalos állásfoglalását tartalmazza arról, hogy használnak-e mesterséges intelligenciát tartalmak előállításához.
A disclaimer célja tehát az, hogy a saját cikked végén jelezd: az adott tartalom tartalmazhat MI által generált vagy feldolgozott részeket, ezért érdemes kritikus szemmel olvasni. Ez a HUP közösségi normáival is összhangban van.
trey @ gépház
- A hozzászóláshoz be kell jelentkezni
Ezeket az AI összefoglalókat úgy készíted, hogy elbeszélgetsz vele egy témáról, rákérdezel, tisztázod a lényeges részeket, aztán készíttetsz egy összefoglalót a beszélgetésről?
- A hozzászóláshoz be kell jelentkezni
Igen. Plusz kérem, hogy fact check-elje az internetről a legutolsó elérhető forrásokat a mai napig bezárólag.
trey @ gépház
- A hozzászóláshoz be kell jelentkezni
Meg vagy dicsérve, végre kitetted hírnek. Kicsit AI-s a struktúrája, de alapos hír. Eleve nem lett volna szabad felvenni a kernelbe ezt a Bcachefs-t, túl új, túl kiforratlan, túl instabil. Dolgozza át a fejlesztő a kernelen kívül, hogy alap szinten használható legyen, akkor vegyék vissza a kernelbe, ha már kiforrott, csak apróbb simítások, karbantartás van vele hátra.
Azzal nem értek egyet, hogy a Bcachefs elhal, mert nem lesz a kernelben. Ha a fejlesztő nem hagyja, nem hal az el. A ZFS sincs a kernelben, igaz annál a licencprobléma szól közbe, de attól él és virul.
Persze ezt Kentet sajnálom, kezdtem már megkedvelni. Milyen lazán le-dick-ezte Linus-t, azóta ezen röhögök.
Egy valamit viszont nem értek. A kifogásolt patch most mégis befogadásra került, megjelenik a 6.16-os kernellel, de minek, ha a 6.17-ben már nem lesz benne? Mert az tuti, hogy Linus kidobja ezt az ürgét, már nem először fenyegetőzik vele, most is megígérte, már csak azért is tartani fogja, hogy ne tartsák gyengekezűnek, hanem számítsanak rá, hogy amit ő megmond, hogy úgy lesz, az úgy lesz.
“Windows 95/98: 32 bit extension and a graphical shell for a 16 bit patch to an 8 bit operating system originally coded for a 4 bit microprocessor, written by a 2 bit company that can't stand 1 bit of competition.”
- A hozzászóláshoz be kell jelentkezni
valaki leirna (megkerdezne valamelyik draga ai-t) hogy miert is lenne jobb ez a bcachefs a btfrs-nel?
- A hozzászóláshoz be kell jelentkezni
https://g.co/gemini/share/11cfc89711bf
De óvatosan fogadd el a válaszát, mert már az első félmondat is nettó hazugság. ("A megadott cikk jelenleg nem elérhető") :)
szerk: https://chatgpt.com/share/6868e14c-4254-8006-a8b1-0e861445bf90
- A hozzászóláshoz be kell jelentkezni
A
bcachefs
architektúrája egy relációs adatbázishoz hasonlít, ami a fejlesztők szerint egyszerűbbé és könnyebben karbantarthatóvá teszi
Ez nagyon tetszik! Valszeg azért olyan egyszerűek az RDBMS-ek :)
- A hozzászóláshoz be kell jelentkezni
Lényegében nem jobb, a Btrfs-nek javítaná néhány hiányosságát, amit itt felettem soroltak, de ez mind csak álmodozás, meg terv. Szerintem teljesen felesleges is, inkább a Btrfs fejlesztésébe szált volna be ez az Overstreet.
“Windows 95/98: 32 bit extension and a graphical shell for a 16 bit patch to an 8 bit operating system originally coded for a 4 bit microprocessor, written by a 2 bit company that can't stand 1 bit of competition.”
- A hozzászóláshoz be kell jelentkezni
Inkább ne barmoljon bele :D
Színes vászon, színes vászon, fúj!
Kérem a Fiátot..
- A hozzászóláshoz be kell jelentkezni
Kellene egy új generációs Linux kernel, ahol nem kell mindenféle támogatást a kernelbe beletenni, hogy elérhető legyen. Tudom, nyilván van oka, hogy így van, de ezeket az okokat más szemszögből megközelíteni és új koncepciót kitalálni.
- A hozzászóláshoz be kell jelentkezni
Elindulhatunk ebbol a gondolatmenetbol. De barmerre tartunk, percek kerdese, es eljutunk odaig, hogy "ezt a kernelt tulajdonkeppen akkor ne is hivjak Linuxnak".
- A hozzászóláshoz be kell jelentkezni
... nem kell Linuxnak hívni
- A hozzászóláshoz be kell jelentkezni
Nem értem, hogy ezt hogyan érted. A Linux kernel monolitikus, benne kell lennie minden drivernek, ha más nem, külön forgatott, és utólag felcsatolt modul formájában. Ha nem teszed a kernelbe, akkor honnan lesz elérhető?
“Windows 95/98: 32 bit extension and a graphical shell for a 16 bit patch to an 8 bit operating system originally coded for a 4 bit microprocessor, written by a 2 bit company that can't stand 1 bit of competition.”
- A hozzászóláshoz be kell jelentkezni
Ideális lenne más, mikrokernel, vagy eddig még nem implementált működés. Például hogy egy module manager berántja a szükséges drivereket, de önmagában a kernelben nincs benne a driver támogatása. Ha így működne, akkor bármilyen régi driverrel ami ilyen másik kernel kompatibilis, a legújabb kernel is be tudná tölteni. A kernel pedig nem lenne nagy méretű azért, mert benne van mindenféle támogatás. Így a régi gépeken is lehetne úgy a legújabb kernel, hogy nem kell manuálisan fordítani hozzá a régi hardver támogatást, amit már kivettek az újabb kernelből. Vagy éppen nem kell régi kernelt használni, ami már évek óta nincs frissítve, mert abban még ott az adott gép hardver támogatása. Ebből a nézetből írtam.
- A hozzászóláshoz be kell jelentkezni
Ebben az a probléma hogy az API-t akkor nagyon stabilan kellene tartani, a Linux esetében viszont úgy döntöttek hogy fontosabb hogy gyorsan lehessen haladni mintsem hogy évtizedekig kompatibilisek legyenek olyan eszközökkel, amit már valójában csak pár ember használ. Ilyen szempontból pl. a Huawei és társai sokkal jobb helyzetben vannak, ők mikrokernel-t használnak, viszont teljesen kontrollálják mind a HW-t, mind a támogatás hosszát.
- A hozzászóláshoz be kell jelentkezni
Nem ezt hívják mikrokernelnek?
- A hozzászóláshoz be kell jelentkezni
De Fenyő bával annak idején már lemeccselte ezt Linus. Ettől függetlenül egyrészt ott van a FUSE, másrészt el lehetne menni egy hibrid irányba, hogyaszondja, el kellene kezdeni bizonyos eszközosztályokhoz valami stabil inerfészt heggeszteni, hogy akik futottak még, de jó lenne valami Linux támogatás jó sebességgel, azok legyenek szívesek azt használni.
Színes vászon, színes vászon, fúj!
Kérem a Fiátot..
- A hozzászóláshoz be kell jelentkezni
Az nem Fenyő bá, hanem Karácsonyfa bá.
Ez a Kent Overstreet azt írta, hogy a FUSE nem alkalmas neki FS fejlesztésre, sok tesztje meg debugja nem megy vele.
“Windows 95/98: 32 bit extension and a graphical shell for a 16 bit patch to an 8 bit operating system originally coded for a 4 bit microprocessor, written by a 2 bit company that can't stand 1 bit of competition.”
- A hozzászóláshoz be kell jelentkezni
Szabad asszociáció :)
Akkor IJ :)
Színes vászon, színes vászon, fúj!
Kérem a Fiátot..
- A hozzászóláshoz be kell jelentkezni
Pedig az Fenyő bá. A Karácsonyfa bá "Weihnachtsbaum" lenne.
Amúgy komoly fejlesztésre a FUSE tényleg nem jó. Rengeteg fölösleges taszkváltás van, ami leterheli a procit, és rontja a sebességet.
- A hozzászóláshoz be kell jelentkezni
Részben. A Weihnachtsbaum is karácsonyfa, de a Tannenbaum is. A fenyő az a Tanne.
“Windows 95/98: 32 bit extension and a graphical shell for a 16 bit patch to an 8 bit operating system originally coded for a 4 bit microprocessor, written by a 2 bit company that can't stand 1 bit of competition.”
- A hozzászóláshoz be kell jelentkezni
- A hozzászóláshoz be kell jelentkezni
el kellene kezdeni bizonyos eszközosztályokhoz valami stabil inerfészt heggeszteni, hogy akik futottak még, de jó lenne valami Linux támogatás jó sebességgel, azok legyenek szívesek azt használni
Köszi a megfogalmazást, ilyesmire gondoltam.
- A hozzászóláshoz be kell jelentkezni
Mikor Kernnel?
A magyar ember jelképe a hátrafelé nyilazás. Vakon rohanunk a semmibe, miközben a múltunkat támadjuk.
- A hozzászóláshoz be kell jelentkezni
A próbák előtt a Lipótinál és lehetőleg tilosban parkolva a rizsrakétával :)
Színes vászon, színes vászon, fúj!
Kérem a Fiátot..
- A hozzászóláshoz be kell jelentkezni