Vlákno názorů ke zprávičce Dočasné řešení problému ZFS a Linuxu 5.0 od Rhinox - Cim dal tim vice se ukazuje, ze ZFS...

  • Aktualita je stará, nové názory již nelze přidávat.
  • 17. 1. 2019 20:16

    Rhinox (neregistrovaný)

    Cim dal tim vice se ukazuje, ze ZFS nemuze byt "tim pravym" next-gen filesystemem pro Linux. Tenhle licencni zmatek nejde nijak rozseknout, proto je lepsi se na to vys*at a hledat nekde jinde. Priznejme si konecne, ze ZFS je z hlediska Linuxu slepa vetev vyvoje.

    Proc plytvat zdroje na ZoL, kdyz to zjevne nikam nevede, jen porad k dalsim problemum? Radsi dovest do stabilniho stavu btrfs/bcachef­s/stratis, nebo nakej jinej fs...

  • 17. 1. 2019 20:44

    Miroslav Šilhavý

    Ono spíš podivně vypadá blokování funkcí (exportu symbolů) pod podmínkou GPL. Je to určitý typ naschválu, poměrně zbytečný. ZFS (a jiné projekty) se nikdy nestanou integrální součástí jádra, právě kvůli licenci. Proč je ale potřeba to "osolit" ještě tím, že nepůjdou používat ani externě, těmi, kteří chtějí?

    Dále můžeme uvažovat o tom, že by jednoho dne mohl Linux vůbec začít vyžadovat, aby i v userspace běžely pouze GPL binárky. Mělo by to tu samou logiku: proč by mělo GPL jádro podporovat běh něčeho s jinou licencí?

    EXPORT_SYMBOL_GPL si ve výsledku moc nezadá s hojně kritizovanými DRM systémy. Ty také slouží k tomu, aby si "ten druhý" ani neškrtl.

    Linuxu tento přístup nesluší.

  • 17. 1. 2019 21:15

    RDa

    Souhlasim. Ale ono cele GPL je takove "rakovinove". Clovek aby se bal napsat pomalu jakykoli kod, protoze ho obvini z toho ze to ukrad z GPL, byt se jenom treb inspiroval. By me zajimalo zda je prevzati algoritmu poruseni licence, nebo se za to povazuje jenom copy+paste. Je prevzati seznamu #defines poruseni gpl, kdyz tyhle defines popisuji napr. adresy periferii ci registru v ramci nejakeho zarizeni?

  • 17. 1. 2019 21:25

    Miroslav Šilhavý

    Otázky, které píšete, jsou právě docela nejasné.

    Když půjdete do historie, tak u literárního díla nesmělo docházet k opisům statí (byť i s obměnami), které nesly "náboj" původního díla. Nicméně, námět obšlehnout lze - viz např. převyprávění Defoeova Robinsona Crusoe J. V. Plevou nebo F. Novotným.

    U hudebního díla se ustálila zvyklost na určitém počtu taktů nebo délce v sekundách. Ale ani to neplatí úplně. Např. Madonna ve své Hung Up použila opravdu kratičký sample z ABBA Gimme! Gimme! Gimme! (A Man After Midnight), přesto k tomu měla výslovné svolení. Protože ten motiv je na tolik výrazný, že je nutné ho považovat za samostatné autorské dílo.

    Přepsat kód lze. Jsou elementární funkce, které se nedají přepsat moc jinak, než je originál. Ale zde platí pravidlo, že takto elementární "díla" nelze autosky chránit (nelze chránit funkci na součet, násobení, ...). Osobně si myslím, že FPU funkce spadají spíš do této kategorie a nemělo by se snažit o jejich licenční ochranu.

    Pak jsou ale větší softwarové celky. Ty můžete obšlehnout co do vstupů a co do výsledku. Pokud ale zvolíte stejný postup (spád programu) jako původní autor, bude to porušení autorských práv i v případě, pokud to přepíšete. Např. tak jednoduchý program jako kalkulačka, nebo, abychom byli ještě skromnější, řekněme "bc" - to už jsou programy, které se dají přepsat od základu a každý programátor je přepíše jinak, i když navenek budou fungovat stejně.

  • 17. 1. 2019 21:30

    PetebLazar (neregistrovaný)

    Ty value možná ne (ty budou nejspíš vycházet ze specifikací), ale ty CNAME (vytvořené autorem kódu?) již asi budou předmětem licence.

  • 17. 1. 2019 22:17

    Lol Phirae (neregistrovaný)

    Ale ono cele GPL je takove "rakovinove"

    Tak stále ještě to bude méně rakovinové než SSPL, které je tak rakovinové, že postižený software rovnou vyhodili z Debianu, z Fedory a RHEL.

    Nic nepotěší víc, než když se někdo pořádně střelí do nohy. :-D U těchhle NoSQL frikulínů se jedná asi o nějakou epidemii nebo soutěž o největší demenci, viz Redis a jejich Commons Clause, revoluce "překvapivě" ani zde úspěchem neskončila.

  • 18. 1. 2019 7:00

    Milan Juřík (neregistrovaný)

    Je zajímavé, jak dorůstají nové generace nepamatující si počítačový středověk. GPL je cíleně takto sestavená, tak, aby tlačila svět k otevřenosti. Jen GPL2 nepočítala s tím, že v rámci obrany otevřenosti může existovat otevřená licence požadující něco navíc.

  • 18. 1. 2019 7:18

    Miroslav Šilhavý

    Je zajímavé, jak dorůstají nové generace nepamatující si počítačový středověk. GPL je cíleně takto sestavená, tak, aby tlačila svět k otevřenosti. Jen GPL2 nepočítala s tím, že v rámci obrany otevřenosti může existovat otevřená licence požadující něco navíc.

    Středověké zákony už neplatí. Společnost se vyvíjí, a jakmile se dosáhne určitého cíle, zákony se mění a chrání hodnoty, které je potřeba chránit v nové době. Hezkým příkladem je např. Zákoník práce. Pod jeho zněním z minulých dob by už nikdo pracovat nechtěl. Občanský zákoník taktéž - za posledních 100 let máme už čtvrtou rekodifikaci.

    GPL byla ve své době naprosto nenahraditelná a odvedla přesně takovou práci, jakou si předsevzala. Bez GPL bychom dnes neměli Open Source tak, jak ho vnímáme. Na druhou stranu, možná už je právě doba, kdy je na čase si říct: Open Source už není v ohrožení, ale stojí před námi nové výzvy.

    Novými výzvami myslím např. toto. Před dvaceti lety byl Open Source postaven antagonisticky proti zájmům korporací, OSS s nimi soupeřil. Korporace dlouho neuměli OSS konkurovat (snažily se, ale zjistili, že OSS je založený na jiných hodnotách). Jaká je situace dnes? Korporace si Open Source ochočily. Google zkrotil velkou část Linuxu, Microsoft kombinuje sílu svých a OSS systémů, Apple svůj systém vystavěl z výsledků práce OSS. Tj. vidím tu posun znovu zpět ve prospěch korporací. S trochou nadsázky: "OSS idealisté" dělají marketing a vyvýjejí s přesvědčením pro dobro světa. Korporace, i přes GPL, z toho umějí vydělat dolar.

    GPL, či obecně OSS licence by se měly zaměřovat na aktuální výzvy a ne pouze bezmyšlenkovitě trvat na dogmatech platících před několika dekádami.

  • 18. 1. 2019 12:34

    ja. (neregistrovaný)

    Nepovedal by som, ze korporacie si OSS skrotili.

    Apple ignoruje GPL: ma stary bash (pred zmenou na GPL3), sambu nahradili svojim serverom a klientom, gcc nahradzaju clangom.

    Microsoft, podobne ako Apple, preferuje BSD/MIT/Apache, GPL ignoruje.

    Google GPL neignoruje, pri poskytovani sluzieb to nie je problem (to az AGPL), a vacsina Androidovych vendorov porusuje GPL. Tych zopar, co ju neporusuju, symbolicky vyhodia niekam na ftp zdrojaky jadra, ktore su aj tak nepouzitelne, pretoze im chybaju drivery a zariadenia su tivoizovane, co zase riesi az GPL3 a Torvalds ju specificky nechce.

  • 18. 1. 2019 12:39

    Lojza

    zajimavy by byl myslenkovy experiment kdyby gnu/linux byl zalozen na bsd licenci kde bychom nyni byli ?

    nemam pocit ze by si vyvojari *bsd distribuci nejak moc stezovali na vykradani a zpenezovani jejich prace ...

  • 18. 1. 2019 13:52

    ja. (neregistrovaný)

    Tak by bol Linux tak pozadu, a riesil rovnake problemy ako napr. OpenBSD, namiesto toho, aby ich mal vyriesene uz 10-15 rokov.

    Plus by sme mali niekolko rozlicnych forkov... rovnako ako ma BSD.

  • 18. 1. 2019 12:40

    ivoszz

    Takže se nebavíte o OSS, ale o software, který je pod GPL3. To jste si to dost upravil (CLANG není OSS?, BSD/MIT/Apache není OSS? tvůrci sw si nemohoui svobodně vybrat licenci?).

  • 18. 1. 2019 13:51

    ja. (neregistrovaný)

    To si upravil uz predrecnik - zacal o GPL, potom plynulo presiel na OSS.

    Moja pointa bola, ze pre korporacie predstavuje GPL rovnaky problem, ako pred 20 rokmi, a ziadne skrotenie sa nekona.

  • 17. 1. 2019 22:19

    Michal Kubeček

    Dále můžeme uvažovat o tom, že by jednoho dne mohl Linux vůbec začít vyžadovat, aby i v userspace běžely pouze GPL binárky. Mělo by to tu samou logiku: proč by mělo GPL jádro podporovat běh něčeho s jinou licencí?

    Než začnete vyvozovat podobné závěry, udělejte si malý domácí úkol: podívejte se, jaký SPDX identifikátor mají hlavičkové soubory v include/uapi a dohledejte si, co znamená část " WITH Linux-syscall-note". Nebo se rovnou ve zdrojácích jádra podívejte do souboru COPYING a souborů, na které se odkazuje, a to zejména LICENSES/excep­tions/Linux-syscall-note .

  • 18. 1. 2019 7:10

    Miroslav Šilhavý

    Než začnete vyvozovat podobné závěry, udělejte si malý domácí úkol:

    Dobrý den,
    asi jsem se vyjádřil nesrozumitelně. Já vůbec nezpochybňuji právo autora na určení licence, ani to, jaká ta licence je. Rozumím i důvodům.

    Moje úvaha byla spíš o tom, jakou filozofii linux vyznává. EXPORT_SYMBOL_GPL je z mého pohledu určitá forma naschválismu. Vím, že vyplývá ze situace, přesto si myslím, že současný důsledek (že nelze z externího kódu zavolat FPU funkce) nebyl zamýšlený účel těch, kteří svobodné licence vymýšlejí a prosazují.

    Moje úvaha o omezení v userspace byla tedy jen jakýmsi příměrem, kam by až mohly podobné směry zajít. Tj. jakási redukce ad absurdum, upozornění na to, jakým směrem se výklad licence ubírá.

    EXPORT_SYMBOL_GPL vidím jako určité DRM v rámci OSS. Je to prostředek na ochranu práv autorů, aby bylo splněno to, co vyznávají. Potud to vidím jako správné.

    Na druhou stranu vedu protiúvahu, jestli už nejsme od prapůvodní myšlenky GPL možná až moc daleko. Jestli toto opatření fakticky chrání nějaké hodnoty, nebo jestli se jedná přeformalizované uplatnění GPL. Jak to vypadá, když se nějaký předpis vykládá příliš formalisticky vidíme často u české finanční správy.

    ZoL by měl existovat. ZFS je používaný filesystem. Sebrat uživatelům Linuxu možnost připojit ZFS mi nepřijde jako obohacení. Myslím, že Linux se vymezil dostatečně tím, že ZFS se nikdy nestane součástí jádra. ZoL nezbyde, než aby si chybějící funkce do jádra doplnila v rámci svých patchů. Budeme mít zdvojený kód, zdvojené riziko bugů. Jen kvůli neochotě najít kompromis na tom, co smí non-GPL projekt z jádra volat.

  • 18. 1. 2019 8:04

    Michal Kubeček

    Moje úvaha o omezení v userspace byla tedy jen jakýmsi příměrem, kam by až mohly podobné směry zajít. Tj. jakási redukce ad absurdum, upozornění na to, jakým směrem se výklad licence ubírá.

    A já jsem vás upozornil, že kdybyste se obtěžoval podívat na licenci linuxového jádra, věděl byste, že taková úvaha je už od základu nesmyslná, protože tato možnost je tam od začátku jednoznačně a výslovně vyloučena. Tím je dán naprosto zásadní rozdíl mezi userspace programem používajícím syscally (a případně další rozhraní jako netlink, proc nebo sysfs) a modulem, který je v linuxovém pojetí přímo součástí jádra. Vztah jádra a modulů spíš odpovídá tomu, jak v userspace fungují PAM nebo NSS moduly, případně moduly např. u PHP nebo dalších aplikací. (Tam ovšem nikdo nezpochybňuje, že modul musí mít licenci kompatibilní s hlavním programem nebo knihovnou.)

    Myslím, že Linux se vymezil dostatečně tím, že ZFS se nikdy nestane součástí jádra.

    Ne Linux ale Sun (dnes Oracle). Linus zvolil licenci Linuxu někdy v roce 1991 nebo 1992 a doufám, že nechcete tvrdit, že se tehdy vymezoval vůči ZFS. Sun zvolil (mnohem později) při zveřejnění svého kódu, který je základem "ZFS on Linux", licenci CDDL, která není s GPL kompatibilní, přičemž je úplně jedno, jestli opravdu byla záměrně navržená za tím účelem nebo je to jen vedlejší efekt. Výsledek prostě je takový jaký je a u Sunu to moc dobře věděli. Jaké k tomu měli důvody, to je jejich starost, ale tvrdit, že je to "Linux", kdo brání využití tohot kódu k implementaci ZFS v Linuxu, je hrubé zkreslování skutečnosti.

    Jen kvůli neochotě najít kompromis na tom, co smí non-GPL projekt z jádra volat.

    Jak už jsem upozornil v minulé diskusi, už sama přípustnost šíření modulů jádra pod non-GPL licencí (přesněji: sadou licencí neobsahující GPL 2.0) je diskutabilní. Linus se sice v minulosti vyjádřil ve smyslu, že mu to nevadí, ale jednak to není totéž jako říct, že je to licenčně v pořádku, jednak zdaleka ne všichni tento názor sdílejí. Ruku na srdce: kdybych měl zdůvodnit, proč je v pořádku non-GPL jaderný modul, ale ne userspace "modul", tj. *.so linkovaný za běhu pomocí dlopen(), asi bych se brzy přistihl, že jsem nucen používat vykonstruované argumenty, které neznějí přesvědčivě ani mně samotnému.

    To, že je něco snadno technicky proveditelné, a dokonce ani to, že mne za to nikdo nezažaluje, neznamená automaticky, že je to v pořádku. Kdybych měl tu situaci k něčemu přirovnat, tak třeba k tomu, že jestli mám na vstupních dveřích do domu korálkový závěs, normální dveře s FABkou nebo nějaké superbezpečnostní s devítibodovým zámkem a alarmem, je jen technické opatření odrážející to, jak moc mi záleží na tom, aby se dovnitř nedostal někdo, kdo tam nemá co dělat. Ale nemění to nic na tom, že ani v jednom případě nemá nikdo cizí právo vlézt dovnitř bez mého svolení (pomineme-li speciální případy typu policie s povolením k domovní prohlídce nebo hasiče při požáru).

  • 18. 1. 2019 8:19

    Miroslav Šilhavý

    A já jsem vás upozornil, že kdybyste se obtěžoval podívat na licenci linuxového jádra, věděl byste, že taková úvaha je už od základu nesmyslná, protože tato možnost je tam od začátku jednoznačně a výslovně vyloučena.

    Asi se mi nedaří vysvětlit, že jsem to myslel jako upozornění na myšlenkový posun u autorů. O to, že by userspace nešel, o to samozřejmě strach nemám. (Ale před pár lety jsem neměl strach ani z toho, že by se nesměly používat některé funkce.)

    doufám, že nechcete tvrdit, že se tehdy vymezoval vůči ZFS. Sun zvolil (mnohem později) při zveřejnění svého kódu, který je základem "ZFS on Linux", licenci CDDL

    Proboha, proč to pořád stavíte tak, že se někdo proti někomu musí vymezovat? To nemohou oba svobodně zvolit licenci, a přesto hledat cestu spolupráce?

    To, že je něco snadno technicky proveditelné, a dokonce ani to, že mne za to nikdo nezažaluje, neznamená automaticky, že je to v pořádku. Kdybych měl tu situaci k něčemu přirovnat, tak třeba k tomu, že jestli mám na vstupních dveřích do domu korálkový závěs, normální dveře s FABkou nebo nějaké superbezpečnostní s devítibodovým zámkem a alarmem, je jen technické opatření odrážející to, jak moc mi záleží na tom, aby se dovnitř nedostal někdo, kdo tam nemá co dělat.

    Souhlasím. Mimochodem, zmínil jste, jaký je výklad Linuse. A teď jsme možná tak trochu u jádra pudla. Předpis nebo dohodu si může vyložit v detailech každý jinak. Jediným, kdo může v praxi rozhodnout, jak se má dané právo uplatnit, je soud. Jenže: 1. jaká je místní příslušnost takového soudu? V Evropě pravděpodobně všude podle obvodu žalovaného. Co mimo Evropu, v USA a dalších zemích? 2. Jak se OSS vypořádá s tím, že jednotlivé příslušné soudy budou rozhodovat jinak a v každé době jinak? U korporací na to existují obrovská odělení Legal a Compliance, jenže u OSS to nikdo nedělá.

    V praxi vidíme, že GPL vykládají úzkostlivě spíš jednotlivci. Velcí hráči na to tak trochu prdí. Buďto vůbec licenci nedodrží (kde není žalobce, není ani soudce). Nebo nejprve zkusí svět změnit po dobrém (Google, RedHat, ...), a teprve když to nejde pomocí PR, pak zatlačí silou.

    Mně současná situace nepřijde šťastná a proto se mi ani nelíbí postoje, že se někdo musí vymezovat proti někomu. Tohle přeci nemusí být souboj!

  • 18. 1. 2019 8:47

    Lol Phirae (neregistrovaný)

    To není zřejmě myšlenkový posun, oni to dělají zcela bezmyšlenkovitě. Mimoto, již pod minulým článkem bylo řečeno, že SFLC tam žádný licenční problém nevidí; narozdíl od potrhlého militantního hulákání GKH to ovšem mají podložené argumenty.

  • 18. 1. 2019 8:49

    Miroslav Šilhavý

    To není zřejmě myšlenkový posun, oni to dělají zcela bezmyšlenkovitě. Mimoto, již pod minulým článkem bylo řečeno, že SFLC tam žádný licenční problém nevidí; narozdíl od potrhlého militantního hulákání GKH to ovšem mají podložené argumenty.

    Jenže 1. ne každý chce jít do právní nejistoty, 2. v praxi by to znamenalo přetahovanou o patche do jádra. (Abychom se ještě nedočkali forku Linuxu).

  • 18. 1. 2019 9:05

    Michal Kubeček

    Asi se mi nedaří vysvětlit, že jsem to myslel jako upozornění na myšlenkový posun u autorů.

    Ten můj příměr s domem měl naznačit, že já tam myšlenkový posun nevidím. Tedy aspoň ne v té základní otázce, zda je non-GPL modul v pořádku, a že je-li nějaký posun, tak spíš v tom, že některým vývojářům začíná tak trochu docházet trpělivost. GPL2 je pořád stejná (GPL3 a různé další nové verze jsou jiná kapitola, ale to se Linuxu naštěstí netýká) a základní licence je pořád GPL2 (with syscall note). Mění-li se v něčem situace a vedou-li se o něco spory, tak je to spíš to, jak agresivně se má dodržování pravidel vynucovat. Tedy jazykem toho příměru "přidávání zámků", ne změna pohledu na to, zda je přípustné vlézt cizímu člověku do domu.

    Jakkoli nevývojáři může ten rozdíl připadat malicherný, upozornil bych i na to, že tady je naprosto zřejmé, že ta změna v 5.0-rc1 byl naprosto standardní úklid a že vůbec nebyla motivována nějakým děláním naschválů ZFS. (Stejně jako nikdo (kdo je trochu v obraze] neobviňuje vývojáře z úmyslného házení klacků pod nohy VMware kvůli třem jiným změnám, které rozbily jejich out of tree moduly.) Neochota k revertu je také primárně dána tím, že tohle rozhraní bylo viditelné spíš jen omylem a že všeobecný úzus je, že funkce, kterou nikdo ve stromě nevolá, nemá v jádře co dělat (přičemž se za argument proti nepovažuje ani "náš out-of-tree modul ji používá" ani "chystáme se přidat in-tree kód, který ji bude používat").

    Proboha, proč to pořád stavíte tak, že se někdo proti někomu musí vymezovat?

    Já to tak stavím? Podívetjte se o kousek výš. kdo jako první začal mluvit o "vymezování se" a obvinil "Linux" z toho, že se vymezil vůči ZFS. Já u toho příspěvku vidím jméno "Miroslav Šilhavý".

    V praxi vidíme, že GPL vykládají úzkostlivě spíš jednotlivci. Velcí hráči na to tak trochu prdí. Buďto vůbec licenci nedodrží (kde není žalobce, není ani soudce). Nebo nejprve zkusí svět změnit po dobrém (Google, RedHat, ...), a teprve když to nejde pomocí PR, pak zatlačí silou.

    A právě proto jsem připomínal, že to, že určité chování je dlouhodobě tolerováno, neznamená automaticky, že je v pořádku. A také že neřešíme situaci, kdy by linuxoví vývojáři nějak stíhali vývojáře "ZFS on Linux". Naopak, jsou to vývojáři "ZFS on Linux", kteří se z nějakého důvodu domnívají, že mají právo požadovat, aby jim vývojáři Linuxu vycházeli vstříc a usnadňovali jim jejiích práci. A to je naprosté nepochopení situace; vývojáři Linuxu od začátku dávali jasně najevo, že bastlit si dlouhodobě out of tree modul (bez jasného plánu na začlenění do upstreamu) je špatný vývojový model, a že každý, kdo se k němu z jakéhokoli důvodu rozhodne, musí počítat s tím, že to přináší problémy a že se nikdo nepřetrhne, aby je za něj řešil.

  • 18. 1. 2019 9:19

    Miroslav Šilhavý

    A právě proto jsem připomínal, že to, že určité chování je dlouhodobě tolerováno, neznamená automaticky, že je v pořádku.

    Přesně naopak! Nejprve je potřeba si všímat toho, jak věci fungují a pak teprve kodifikovat a naposledy s větší či menší silou vynucovat. Příkladem z běžného života budiž např. auto s nefungujícími směrovými blikači. Takové auto je nezpůsobilé provozu a nemělo by se s ním jezdit. Přesto ale existují pokyny, jak signalizovat změnu směru s nefunkčními blikači (doleva upažením z okna, doprava zdvižením ruky z okna). Protože zákonodárce si je vědom toho, že ne vždy je možné do puntíku dodržet pravidlo č. 1 - tedy odstavit okamžitě vozidlo z provozu.

    Další vývoj je např. v autorském právu, kdy AutZ v době vzniku ani dlouho poté nepočítal s fenoménem internetu. U internetového díla je problematické posuzování místní příslušnosti (odkud je v případě CDN dílo poskytováno?), nebo i otázka toho, v jaké zemi bylo dílo uvedeno poprvé? (Když se ve stejný okamžik objeví všude?). Zde je také uplatňována jakási zdrženlivost, protože dbát na doslovném výkladu by nic nepřineslo.

    Pokud tedy praxe ukazuje, že toto tolerování je přínosné, je na místě hledat způsob, jak to zachovat. Nikoliv, jak to zrušit a odůvodnit.

    Naopak, jsou to vývojáři "ZFS on Linux", kteří se z nějakého důvodu domnívají, že mají právo požadovat, aby jim vývojáři Linuxu vycházeli vstříc a usnadňovali jim jejiích práci. A to je naprosté nepochopení situace; vývojáři Linuxu od začátku dávali jasně najevo, že bastlit si dlouhodobě out of tree modul (bez jasného plánu na začlenění do upstreamu) je špatný vývojový model, a že každý, kdo se k němu z jakéhokoli důvodu rozhodne, musí počítat s tím, že to přináší problémy a že se nikdo nepřetrhne, aby je za něj řešil.

    Zde si dovoluji mít odlišný názor. Myslím si, že mít ohled na významné projekty (zmíněné vmware, zmíněný ZFS i další), je také v pořádku. Je jasné, že nelze vyhovět všem. Ale jsou oblasti, kde i externí, licenčně nekompatibilní projekt je tak významný, vydobyl si postavení u uživatelů, že je na místě ho tolerovat nebo dokonce i trochu pomáhat.

  • 18. 1. 2019 10:08

    Michal Kubeček

    Nejprve je potřeba si všímat toho, jak věci fungují a pak teprve kodifikovat

    Takže se mělo nejdřív dostatečně dlouho počkat, kdo a jak bude Linux chtít používat a kdo a jak na něm bude chtít stavět další projekty, a pak teprve stanovit jeho licenci? To si dost dobře nedokážu představit.

    Protože zákonodárce si je vědom toho, že ne vždy je možné do puntíku dodržet pravidlo č. 1 - tedy odstavit okamžitě vozidlo z provozu.

    To ale nemění nic na tom, že vyložíte-li si to jako záminku jezdit s technicky nezpůsobilým vozidlem mimo situace, kdy je to přípustné (např. pokud by to okamžité odstavení znamenalo ještě větší riziko), vystavujete se riziku postihu a pokud dokonce způsobíte nehodu, bude to přitěžující okolností.

    Myslím si, že mít ohled na významné projekty (zmíněné vmware, zmíněný ZFS i další), je také v pořádku.

    V pořádku to je, pokud se tak vývojáři svobodně rozhodnou. Pokud ne, je třeba to respektovat jako jejich rozhodnutí. Bohužel to v diskusích na fórech vypadá, jako kdyby snad na to byl nějaký nárok jen proto, že oni mají ten modul rádi. (Tím nemyslím osobně vás, vy jste jeden z těch kulturnějších, ale zkuste se podívat na tuhle i minulou diskusi, co tam padalo za výrazy - a to nemluvím třeba o Phoronixu.) Podobně byli před lety někteří agresivní členové reiserfs fanclubu přesvědčeni, že jen proto, že jim se ten filesystém líbí, mají nárok na to, aby byl co nejrychleji začleněn bez ohledu na technické výhrady maintainerů.

    Ale jsou oblasti, kde i externí, licenčně nekompatibilní projekt je tak významný, vydobyl si postavení u uživatelů, že je na místě ho tolerovat nebo dokonce i trochu pomáhat.

    Pohled z druhé strany: před nějakými 6-7 lety bylo pro VMware Workstation/Player host potřeba pět out-of-tree modulů. Dnes zbyly dva, u ostatních už si u VMware dali práci, aby je vyčistili, přepracovali v souladu s logikou a zvyklostmi příslušných subsystémů a dostali do mainline. Jeden z nich (vsock) je dokonce využíván nejen pro VMware VMCI, ale i pro virtio. A když později Microsoft submitnul svou vlastní verzi socketů pro přímou komunikaci s HyperV, byli vyzváni, aby neduplikovali funkcionalitu a postavili to také na vsock. Myslíte si, že by se to stalo, kdyby ze strany vývojářů jádra fungovala ta vstřícnost vůči out of tree modulům (aspoň těm "významným"), kterou považujiete za užitečnou a žádoucí? Já jsem přesvědčen, že je mnohem pravděpodobnější, že by v takovém případě těch modulů bylo těch out of tree modulů pořád pět. A to není zdaleka jediný příklad.

  • 18. 1. 2019 11:08

    Miroslav Šilhavý

    Takže se mělo nejdřív dostatečně dlouho počkat, kdo a jak bude Linux chtít používat a kdo a jak na něm bude chtít stavět další projekty, a pak teprve stanovit jeho licenci? To si dost dobře nedokážu představit.

    Neříkám, že tyto situace musíme vyvolávat. Ale když už nastanou - což je tento případ, je podle mě lepší se nad tím zamyslet s odstupem, neházet argumenty jako ve školce "já to viděl první" / "ale já to první sebral ze země" / "ale já si s tím hrál už včera".

    V pořádku to je, pokud se tak vývojáři svobodně rozhodnou. Pokud ne, je třeba to respektovat jako jejich rozhodnutí. Bohužel to v diskusích na fórech vypadá, jako kdyby snad na to byl nějaký nárok jen proto, že oni mají ten modul rádi.

    Znovu, ta emoce by neměla zastínit meritum věci. Mohou sice argumentovat emotivně "máme rádi", ale i fakticky to může být pravda.

    A když později Microsoft submitnul svou vlastní verzi socketů pro přímou komunikaci s HyperV, byli vyzváni, aby neduplikovali funkcionalitu a postavili to také na vsock. Myslíte si, že by se to stalo, kdyby ze strany vývojářů jádra fungovala ta vstřícnost vůči out of tree modulům (aspoň těm "významným"), kterou považujiete za užitečnou a žádoucí? Já jsem přesvědčen, že je mnohem pravděpodobnější, že by v takovém případě těch modulů bylo těch out of tree modulů pořád pět.

    Záleží případ od případu. Někdy jsou souběžné moduly zdravé, protože začne fungovat soutěž. Stačí si vzpomenout na moduly síťovek, které byly mnohdy ve dvou paralelních verzích, o podpoře zvuku (i historicky) nemluvě. Mnohdy ten později přicházející dokáže dodat vývoji nový náboj a pohnout s tím víc dopředu - stalo se to už mockrát.

  • 18. 1. 2019 11:38

    Michal Kubeček

    Neříkám, že tyto situace musíme vyvolávat. Ale když už nastanou - což je tento případ, je podle mě lepší se nad tím zamyslet s odstupem, neházet argumenty jako ve školce "já to viděl první" / "ale já to první sebral ze země" / "ale já si s tím hrál už včera".

    Jak konkrétně byste si to představoval? Licence jádra je GPL2, je to tak už přes čtvrt století a i kdyby byla vůle to změnit (jako že není), nebylo by to technicky proveditelné. Dokonce ani kdyby se Linus spolu se všemi aktuálními významnými mintainery a přispěvateli dohodli, že chtějí licenci změnit, tak by to nestačilo. Nemám tušení, jak je to s licencí ZFS, jestli je i tam technický problém nebo jestli je to prostě jen neochota. U XFS to šlo, u JFS to šlo. Oba se do jádra dostaly v době, kdy Linux ještě nebyl zdaleka tak významný jako dnes a za oběma také stály hodně velké firmy.

    Někdy jsou souběžné moduly zdravé, protože začne fungovat soutěž. Stačí si vzpomenout na moduly síťovek, které byly mnohdy ve dvou paralelních verzích, o podpoře zvuku (i historicky) nemluvě.

    Zrovna drivery síťových karet bych viděl jako argument proti. Dodnes je řada (naštěstí většinou těch méně významných) výrobců, kteří si spokojeně bastlí svůj out of tree driver (u driverů zařízení je to jednodušší než u filesystému) a in-tree buď neexistuje nebo je zoufale pozadu (mnohdy bez jakékoli podpory ze strany výrobce). To není žádoucí stav, tím spíš že i ty out-of-tree drivery jsou sice (celkem) aktuální, ale často neuvěřitelně zprasené. Nedělám si iluze, že u zvukových karet je to lepší, spíš bych čekal, že je to ještě o dost horší. A už vůbec si nemyslím, že větší vstřícnost vůči out-of-tree modulům by situaci zlepšila - přesně naopak.

  • 18. 1. 2019 11:48

    Miroslav Šilhavý

    Jak konkrétně byste si to představoval? Licence jádra je GPL2, je to tak už přes čtvrt století a i kdyby byla vůle to změnit (jako že není), nebylo by to technicky proveditelné.

    To si právě uvědomuji a proto říkám, že v některých ohledech se GPL neosvědčila či přežila.

    Zrovna drivery síťových karet bych viděl jako argument proti. Dodnes je řada (naštěstí většinou těch méně významných) výrobců, kteří si spokojeně bastlí svůj out of tree driver (u driverů zařízení je to jednodušší než u filesystému) a in-tree buď neexistuje nebo je zoufale pozadu (mnohdy bez jakékoli podpory ze strany výrobce).

    Já mluvím o době, kdy in-tree byly paralelně dva moduly pro 3com nebo Intel síťovky. O době, kdy in-tree byly dva různé soundsystémy, a v rámci nich někdy i dva navzájem se stínující drivery. Na konec vyhrál ten lepší - udržovanější.

  • 18. 1. 2019 13:52

    Michal Kubeček

    Já mluvím o době, kdy in-tree byly paralelně dva moduly pro 3com nebo Intel síťovky. O době, kdy in-tree byly dva různé soundsystémy, a v rámci nich někdy i dva navzájem se stínující drivery. Na konec vyhrál ten lepší - udržovanější.

    To je ale úplně jiná situace, než o které se tady bavíme. Se "ZFS on Linux" to nemá vůbec nic společného, to je out-of-tree modul, který se do mainline v žádném případě dostat nemůže, pokud ho Oracle nepřelicencuje. Jistě, pokud bychom v jádře měli ext4, XFS, BtrFS a ZFS, mohli bychom se bavit o tom, čemu uživatelé a firmy nasazující linuxová řešení dají přednost, co se prosadí a co zahyne nebo bude skomírat na okraji zájmu. Ale taková situace tu není a pokud Oracle nezmění svůj postoj, ani nebude - a těžko z toho vinit vývojáře jádra.

  • 18. 1. 2019 12:36

    ivoszz

    Je zajímavé vidět argumenty na obhajobu obou stran. Bohužel i já vidím v chování některých vývojářů jádra naschvály. Argumenty Michala Kubečka sice dávají smysl, ale.

    1. Pokud se vrátíme ke kořenům, smyslem GPL bylo vynutit při distribuci upravené verze programu i dostupnost jeho upravených zdrojových kódů. Toto CDDL beze zbytky splňuje (skoro by se chtělo říct, že je svobodnější, než samotná GPL). Vše ostatní jsou už jen technikálie a trvání na splnění formálních detailů.

    2. Grafika v Linuxu jde úplně mimo mne, takže doufám, že se nemýlím, ale z toho co se ke mně doneslo mám pocit, že vývojáři jádra nejsou tak militantní, pokud se jedná o proprietární grafické drivery. V tom případě jejich chování vypadá značně pokrytecky.

    3. Organizace Linux Foundation (která stojí za Linuxem a ochranou jeho práv) nemá velký zájem bojovat proti zjevným porušením licenčních práv (kauza VMware), pokud za nimi stojí významné společnosti a nechá v tom vykoupat jednotlivce. O dodržování jakých licenčních práv se potom bavíme.

    Ano, pokud se týká litery licence, má Michal Kubeček bezpochyby pravdu. Ale je to značně farizejský přístup.

  • 18. 1. 2019 13:50

    Johanka (neregistrovaný)

    A který že z těch jedenácti stejně odsazených příspěvků podepisujete? :-)

  • 18. 1. 2019 13:47

    Michal Kubeček

    Zdá se, že podstata toho, co se tu celou dobu snažím vysvětlit, není dostatečně jasná. Mně nejde primárně o GPL nebo Stallmanův svatý boj za ideovou čistotu (není to koneckonců tak dlouho, co jsem byl na ABCLinuxu obviněn, že "nenávidím GPL"). Co se tu celou dobu (včetně minulé diskuse na toto téma) snažím vysvětlit, je, že z pohledu "Linuxu", ať už tím myslíme maintainery, vývojáře a nebo koneckonců i uživatele, nejsou out-of-tree drivery žádná velká výhra. Chápu, že pohledem člověka, který je z Windows zvyklý shánět si drivery ke každému kousku hardware po webech výrobců, to může být těžko pochopitelné, ale to je prostě jiný svět.

    Podporovat out-of-tree drivery bez ohledu na licenci znamená směřovat ke stavu, kdy spousta hardware nebude vanilla jádrem podporována, kdy bude potřeba shánět drivery pochybné kvality po všech čertech. Znamená to podporovat přístup "fire and forget", kdy výrobce přestane podporovat starší verzi hardware, jakmile vydá novou. To není malování čerta na zeď, to je extrapolace z existujících out-of-tree driverů.

    Je také velký rozdíl, jestli je driver out-of-tree proto, že je to novinka ve stádiu vývoje, kdy ještě není ve stavu zralém na přijetí do mainline, nebo jestli je to driver, který autoři nikdy do jádra dostat ani nechtějí, ať už proto, že jediným cílem je odškrtnout "Linux driver... done", nebo proto, že je to pro ně jednodušší a pohodlnější. Non-GPL moduly, to je ještě další krůček dál: to jsou drivery, které se bez přelicencování do jádra ani dostat ani nemohou, takže tam je předem jasné, jak na tom jsme. (Úplně nejnižší úroveň jsou pak closed source drivery.)

    Je mi jasné, že z pohledu uživatele, který si koupil konkrétní hardware (aniž by si ověřil, jak je to s podporou) nebo chce z nějakého důvodu používat reiser4 nebo ZFS, to všechno může vypadat malicherně, protože pro něj je out-of-tree driver super řešení a ti zlí vývojáři mu ho chtějí rozbít. Přesto se snažím vysvětlit, že podpora vzniku dalších a dalších out-of-tree driverů bez jasného plánu (nebo vůbec vůle) dostat je někdy do upstreamu není ve skutečnosti vůbec v zájmu Linuxu a jeho použitelnosti.

    Ad 2: Je přirozené, že různí maintaineři mohou mít různé představy o tom, co je správné a co je žádoucí. Ale že by u grafiky byla patrná snaha za každou cenu vyhovět NVidii a ulehčit jí to, jak si s Linuxem vytírá zadek, to se mi moc nezdá.

    Ad 3: Linux Foundation sice má v názvu "Linux" a platí Linuse, Grega a možná pár dalších, ale rozhodně to není tak, že by nějakým způsobem reprezentovala vývojáře a že by její postoj byl směrodatný. Naopak znám významné vývojáře, kteří o LF zřídka promluví v dobrém.

  • 18. 1. 2019 14:11

    Miroslav Šilhavý

    Chápu, že pohledem člověka, který je z Windows zvyklý shánět si drivery ke každému kousku hardware po webech výrobců, to může být těžko pochopitelné, ale to je prostě jiný svět.

    To je trochu zkreslená představa. Už dlouho platí, že na současném hardwaru není potřeba nic instalovat, výrobci mají drivery přímo ve firmwaru, ... Takže Windows většinou fungují "seamlessly". Ano, problém bývá, když chce někdo rozchodit starší hardware (k tomu se dostanu dále).

    Podporovat out-of-tree drivery bez ohledu na licenci znamená směřovat ke stavu, kdy spousta hardware nebude vanilla jádrem podporována, kdy bude potřeba shánět drivery pochybné kvality po všech čertech.

    To si nemyslím. Myslím si, že není úplně nutné podporovat kdejaký historický hardware in-tree jen kvůli tomu, že existuje mantainer (který mnohdy vyvíjí sám pro sebe a pár desítek jednotlivců). Naopak by mi dávalo smysl jádro zjednodušovat, poskytovat drivery jen na opravdu smysluplný hardware. Tento přístup funguje např. u BSD systémů, nemají povětšinou problém s kompatibilitou. Mně přijde, že snad nejvíc diskutovaným problémem jsou drivery určené pro desktopové použití, ale to je zrovna oblast, kde si Linux vede mizerně. Na serveru, naopak, nepotřebuju podporu tisíců kravin.

    Dál je potřeba zamyslet se, jak vypadá životní cyklus hardwaru a cena hardwaru vůči průměrné mzdě. V devadesátých letech bylo PC neskutečně drahé pro Čecha, ale nebylo zanedbatelné ani pro Němce. Hardware se využíval roky, přepojoval se od starší sestavy k novější, ... Dnes je cyklus úplně jiný. Z průměrné mzdy nakoupíte hned několik počítačů. Lidé hardware koupí, pár měsíců používají a mnohdy (periferie) hodí klidně do koše.

    Přístup maintainerů Linuxu mi připadá, jako kdyby byli tak trochu zastydlí v těch devadesátých letech.

    Přesto se snažím vysvětlit, že podpora vzniku dalších a dalších out-of-tree driverů bez jasného plánu (nebo vůbec vůle) dostat je někdy do upstreamu není ve skutečnosti vůbec v zájmu Linuxu a jeho použitelnosti.

    To je podle mě odvážné tvrzení. Víme, že i opačný přístup vede k úspěchu, takže dovozovat, že toto je v zájmu Linuxu mi přijde hodně nekritické.

    GPL je hodně omezující a dá se říct, že je málo svobodná. Vynucená svoboda není už svoboda, to je protimluv. EXPORT_SYMBOL_GPL je něco hodně na kraji výkladu a podle mě by měli maintaineři Linuxu volit spíš zdrženlivý přístup ke kontroverzním výkladům, než do nich jít po hlavě.

  • 18. 1. 2019 14:54

    Michal Kubeček

    Abych to stručně shrnul: názorně jste vysvětlil, že vaše kritéria kvality a úspěšnosti operačního systému jsou diametrálně odlišná od kritérií maintainerů linuxového jádra. Jakkoli souhlasím, že měřeno těmi vašimi metrikami by bylo žádoucí co nejvíce podporovat vznik a (ne)vývoj out-of-tree driverů bez ohledu na jejich licenci a (ne)budoucnost, musím konstatovat, že váš pohled a vaše preference nesdílím - a tudíž ani závěry, které z nich plynou.

  • 18. 1. 2019 15:00

    Michal Kubeček

    Záleží případ od případu. Někdy jsou souběžné moduly zdravé, protože začne fungovat soutěž.

    Dodatečně mi došlo, že tady asi došlo k nedorozumění. Věta "Myslíte, že by se to stalo..." se nevztahovala k bezprostředně předcházející větě, ale k celému textu toho odstavce, tj. "Myslíte, že by si VMware dal práci s upstreamováním tří z pěti těch out-of-tree modulů..."

  • 18. 1. 2019 16:11

    jdsulin2 (neregistrovaný)

    Protoze jaderni vyvojari na OOT modely mohou zvysoka ****. Je to dobre, neni to dobre, netusim, ale binarni bloby a drivery jsou proste pro linuxove jadro problem. U ZOL, protoze to resi FS, ktery je vice spjaty s jadrem, nez jine moduly to je problem. A rekl bych, ze doslo k nasledujicimu:
    Situace pred:
    EXPORT_SYMBOL(__ker­nel_fpu_begin)
    EXPORT_SYMBOL_GPL(ker­nel_fpu_begin)
    Situace po:
    EXPORT_SYMBOL_GPL(ker­nel_fpu_begin)

    Proste zrusili EXPORT_SYMBOL(__ker­nel_fpu_begin), protoze to nikdo v jadre uz nepouzival. A takove veci se proste deji.

    A vubec nechapu ty vykriky tady - pokud mas kompatibilni licenci, tak nemas problem. Pouzijes BSD licenci a wrapper na proprietarni cast a v klidu si EXPORT_SYMBOL_GPL pouzivas. V tomto stojim 100% za linuxem - Sun proste nechtel licenci kompatibilni (o tom taky muzeme vest spory), tak pouzil CDDL. Proc by mu meli jit jaderni vyvojari naproti. Podpora proprietarnich modulu znamena uzavrenost, nekompatibilni zarizeni, ktere nikdo nerozjede, atd. je to proste kratkozrake. Nic nestoji v ceste tomu, aby nastupce Sunu - Oracle zmenil licenci na kompatibilni s GPL a bylo by po problemu, coz neudela. Ale vy tady radsi budete nadavat na linuxove vyvojare. Jasne kdyz se jedna o neco takoveho jako je ZFS, kde teoreticky muze oproti BSD se ZFS ujizdet vlak, ale to je cesta do pekel. BSD se sice muze ohanet tim, jak Apple a PS jejich kernel pouzivaji, ale videl nekdo zdrojaky od jejich driveru ? Jste se zblaznili ?

  • 18. 1. 2019 16:20

    Lol Phirae (neregistrovaný)

    No, není nad to u zcela open-source kódu blábolit o binárních blobech, proprietárních modulech a uzavřenosti. To jsou opravdu myšlenkově konsistentní a silné argumenty. :-P

  • 18. 1. 2019 23:28

    Mr. Cidermaster (neregistrovaný)

    Laskavě si ráčej zapsat za uši, že Apple v macOS žádný BSD kernel nepoužívá, tudíž se BSD nemá čím ohánět.

  • 18. 1. 2019 8:09

    madloki (neregistrovaný)

    Asi proto, ze nic srovnatelneho v linuxu proste neni. Uprimne, zfs je duvod, proc vyrobci diskovych poli nepouzivaji linux.

    Umyslne blokovani behu software na opensource OS je poprenim principu opensource.

    Chapu, ze firmy typu redhat by linux rady uzavrely a jsou pro to ochotny udelat hodne (systemd), ale je to uz pres caru. Bud nabidni srovnatelnou alternativu, nebo neprud.

    Zfs jako kladny a systemd jako zaporny argument by mne uz davno odvedli k opensolaris, kdyby byla jeho budoucnost jistejsi a vyvoj dynamictejsi. Ale ten system pro desktop ani masivni serverove nasazeni zatim pouzitelny neni.

  • 20. 1. 2019 13:12

    Ivan (neregistrovaný)

    ZFS i btrfs financuje(finan­coval) Oracle. Slepa vetev je spise Solaris nez nejaky kontretni FS. Tuhle situaci mohou "vyresit" pravnici z Oracle, ti se ale ted snazni monetarizovat investici do SUNu - viz. licence na podporu JDK.

    Oracle je firma, ktera stoji za ZFS, brtfs, OCFS, avdFs, ACFS. Oni porad nevedi jaky je jejich vztah k Linuxu, ale maji velice jasno v tom jaky je jejich vztah k penezum. Dokud RHEL neprijde s necim vlastnim, tak to pode porad ZFS vs brtfs.

  • 20. 1. 2019 13:32

    Ondra Satai Nekola
    Zlatý podporovatel

    RH patlá nějaké dočasné řešení, které balí xfs s lvm do úhlednějšího balení. Btrfs jim už moc nevoní.

  • 20. 1. 2019 14:15

    neregistrovany (neregistrovaný)

    RH v prvom rade nema ludi, ktori by v btrfs (bTRfs, nie bRTfs; mnemonicka pomocka: "better fs", ano som si vedomy ironie) boli doma. Zatial akurat vyhadzovali peniaze na backbort aktualnej verzie do kernelu 3.10. tak sa na to pred casom vykaslali.

    Zato ale maju ludi, ktori stali pri xfs od jeho vzniku. Preto tlacia xfs. Ruku na srdce, niektore veci, ktore su sucastou zfs a btrfs by fakt mali byt sucastou volume managera a nie suboroveho systemu.

  • 21. 1. 2019 8:03

    Petr Neni (neregistrovaný)

    Ruku na srdce, evidentne nerozumis duvodum proc to neni oddelene. U 1 disku doma je to fuk, u storage s xxxTB to neni fuk.

  • 20. 1. 2019 17:00

    Ivan (neregistrovaný)

    Jeste dodam, ze Oracle prodava vlastni storage Pillar Axiom a IMHO budoucnost ZFS zavisi i na tom jak se jim bude darit v tomhle odvetvi. NetApp si taky drzi kontrolu nad WAFL. Tim nechci obhajovat Oracle nelibi se mi jak se ta firma chova, ale na druhou stranu v open-source neexistuje neco jako pravo/narok na nejaky lepsi filesystem.