Linus Torvalds wściekły na najnowsze wydanie jądra Linux

Linus Torvalds wściekły na najnowsze wydanie jądra Linux

    przez -
    29 1330
    Linux Tux
    Linus Torvalds jest oburzony na wielkość jądra Linux 3.10-RC5, które nie tak dawno zostało upublicznione na serwerach. Okazuje się, że jest ono o wiele większe, aniżeli RC4 i do tego nie sposób zliczyć zmian, jakich dokonano pomiędzy tak małymi wydaniami. Linus dał do zrozumienia deweloperom, że jeżeli nie poprawią jakości nadsyłanego kodu, to niech lepiej idą się podszkolić, zanim wezmą się za coś, co ich przerasta.

    Guys, guys, guys. I’m going to have to start cursing again unless you stop sending me non-critical stuff. So the next pull request I get that has “cleanups” or just pointless churn, I’m going to call you guys out on, and try to come up with new ways to insult you, your mother, and your deceased pet hamster.

    So don’t do it. Send me just fixes to serious problems. Ok?

    Torvalds ma po prostu dość tego, w jaki sposób deweloperzy traktują kod, który piszą. Jest on niedopracowany, pełno w nim śmieci, a przez dużą ilość kodu, rozrasta się niepotrzebnie jądro. Ponad połowa wielkości jądra Linux to sterowniki, a druga połowa to różnego rodzaju podsystemy.

    • zuea

      I bardzo dobrze, gdyby nie trzymał ich w ryzach już dawno przepisali by kernel do Visual Basic'a

      • o_O

        Jak windows…

      • SS

        Ubuntu jest dobrym przykładem braku silnej ręki.

    • krzabr

      http://en.wikipedia.org/wiki/Wirth%27s_Law

      Swoją drogą to konstruktywni krytycy którzy są tak bardzo nielubani przez tłum i podwładnych powodują że projekty są używalne. Zostaje mieć nadzieję że Linus ich trochę naprostuje ;-)

    • Ubunciak

      Pamiętam jak w 1999 roku (bodajze czerwiec) zaczynałem przygodę w Linuksem. To był chyba Red Hat 6.2 kupiony razem z magazynem CHIP Special. Co to wtedy było. Zgodnie z artykułami zainstalowałem system, potem KDE (nie wiem jaki był domyślny system okien). Potem skompilowalem jądro. Pamietam, ze miało ono wielkość około 700-800 kB. Było to jądro z serii 2.2.x, dokladnie to chyba 2.2.24. Przez te kilkanascie lat Linux bardzo sie rozrósł. Moim zdaniem możliwość wpychania sterowników do jadra to błąd. Powinny być dostępne zawsze jako moduły. Oczywiscie potrzebne sterowniki (np. driver dla file system) muszą pozostać w jądrze, ale 99% nie.

      • Ubunciak

        Drobna poprawka: wydobyłem z szafy Chip Sepcial 99 i to nie był Red Hat 6.2 ale wersja 6.0 Heidwig a patrząc na zrzuty ekranu dostrzegłem, że kompilowali jądro 2.0.34. Po skompilowaniu kernel miał rozmiar 333 kB.

      • Mateusz

        No tak, tylko zwróć uwagę na to jakie to było jądro.. :) jak miałeś popularny sprzęt na zasadzie sound blastera, kartę rzecz jasna przewodową to miałeś szansę, że wszystko ruszy. Owszem, też wolałbym żeby w ilnuksie dostępna była jakaś sprytna komenda która przeiteruje po wyniku lspci / lsusb i sama stwierdzi jakie moduły dociągnąć ale pewnie wszystko kosztem tego aby zwyklemu uzytkownikowi system wstał z miejsca. kernel jest i moze spory, ale poza nielicznymi wyjątkami (sam doswiadczylem niedawno niemilej niespodzianki na plycie gigabyte) system wstaje z miejsca i rozpoznaje wszystkie urządzenia. to daje bardzo dużo w kwestii wygody użytkowania.

      • Kernel od dawna powinien być podzielony na dwie odnogi: Desktop i Server. W tym wspólna część Core, z najważniejszymi funkcjami, a reszta robiona pod konkretne specyfikacje. Czyli desktop to sterowniki i obsługa dużej ilości sprzętu typowo pod użytkownika. Część Server to odpowiednio zoptymalizowane usługi systemowe pod konkretne zastosowania, typu bazy danych, serwery www itp :) A teraz co mamy? Jedno wielkie bagno :/

      • cdc

        a to czemu tak gentoo stracił na popularności? Czy nadal to kogoś interesuje ile zajmuje jądro po kompilacji?
        Czy nie da się samemu już zkompilować jądra?

      • Mateusz

        problem z kompilacją jaja jest taki, że zawsze musisz mieć pod ręką zapasowe, które będziesz wiedział, że działa. Bo jak skompilujesz swoje super duper jajo ale walniesz się w opcjach to system wogóle nie wstanie. z tego co kojarze, w funtoo czy tez gentoo jest mozliwosc sciagniecia jadra z debiana i na jego podstawie jest robiona kompilacja tak zeby uzytkownik nie musial juz nic konfigurowac. Trwa to jednak troche.

      • adrb

        To nie jest zadanie dla deweloperów jądra, tylko danej dystrybucji.

      • o_O

        Oczywiście. I dziwię się, że w takim super Debianie Uniwersalnym Systemie nie ma takich paczek. Wstyd.

      • d33tah

        Truizm. Słyszę to już po raz enty i myślę, że w końcu wypadałoby odpowiedzieć ;) "W tym wspólna część Core, z najważniejszymi funkcjami" – z czego właściwie składa się kernel, w którym punkcie zastosowania serwerowe i klienckie się kłócą? Systemy plików? Sterowniki? Wywołania systmowe? Pianista / zarządca IO? Linux jest przepotężnie konfigurowalny i praktycznie każdy komponent można zmienić albo usunąć – nie widzę sensu tworzyć nowego forka tylko po to, żeby w gałęzi "serwerowej" nie było desktopowych sterowników, a w desktopowej – schedulerów mniej nastawionych na responsywność.

        Gdyby ten fork był społeczności na rękę, to już by powstał – popatrz na potężną siłę, którą stał się Android; spokojnie mógłby on odjechać od Linuksa i już nigdy się z nim nie połączyć. Programiści podjęli jednak inną decyzję. Czemu Twoim zdaniem? Fragmentacja szkodzi, a według mojej wiedzy tutaj nie ma tak istotnego konfliktu interesów. Kiedyś zapytałem na IRCu, czemu taki fork jeszcze nie miał miejsca i ktoś zauważył bardzo ciekawą rzecz – dzisiejsze serwery to jutrzejsze desktopy. I to IMHO naprawdę dobry argument, żeby nie robić krzywdy kernelowi.

        Mam prośbę – przytocz tutaj więcej argumentów, ze źródłami, żeby ta dyskusja miała sens. Bo mam wrażenie, że całość trochę zahacza o populizm.

        A co do samego artykułu, polecam lekturę komentarzy na slashdocie: http://linux.slashdot.org/story/13/06/09/1236247/… – zaciekawiony tym, o co NAPRAWDĘ chodzi w tej wiadomości Torvaldsa, z tego co rozumiem chodzi nie o to, żeby małe zmiany się nie pojawiały (bo, nie oszukujmy się, ludzie BĘDĄ się mylić a bugi *trzeba* naprawiać), ale o to, żeby nie wrzucać ich do kolejnego RC, skoro nie są krytyczne, bo wtedy tylko zaśmiecają logi. Poprawcie mnie, jeśli się mylę ;)

      • Już Ci raz tłumaczył Kamil, dlaczego jądro Linux jest źle zarządzane i powinno zostać rozdzielone. Od przykład, który kiedyś był. Planista w jądrze Linux miał być aktualizowany i dostosowany pod: typowe zadania serwerowe albo multimedia. Oczywiście wygrały multimedia z propozycja Canonical, zamiast Red Hata. Koniec i kropka jeżeli chodzi o decyzje w kwestii optymalizacją jądra Linux. Albo to rozdzielą, albo naprawdę będzie bardzo kiepsko.

      • d33tah

        Nie zapominajmy, że nawet jeśli faktycznie patche Red Hata zostały odrzucone, to praktycznie każde distro ma swoje patche na jądro, więc wątpię, żeby ten kod całkowicie poszedł w niepamięć. I wątpię, żeby chodziło tylko o faworyzowanie multimediów, podejrzewam, że było też więcej powodów. Dlatego – czy mogę poprosić o źródło?

    • herr

      Czekam na kolejną wersję napisów do "Upadku" ;-)

      -Więc, czy wydanie Linux 3.10-RC5 zawiera tylko krytyczne poprawki błędów?
      -Mein Fuhrer…

    • Star RIder

      A dlaczego nie używać dwóch kerneli? Pierwszy “ze wszystkim” do pierwszego uruchomienia systemu, w razie awarii lub po wymianie podzespołów.Drugi automatycznie kompilowany po pierwszym uruchomieniu systemu tylko pod aktualną konfigurację sprzętową.

      • Ubunciak

        Właśnie kiedys nad tym sie zastanawiałem, dlaczego nie napisano programu/skrytpu, ktory wykrywał by sprzet na ktorym uruchomiono linuksa a nastepnie uruchomił by "make xconfig" i ustawił odpowiednie parametry. Nam by zostałoby tylko wydac polecenie make, make install itd. Kiedys sam w wersji 3.x.x uruchomiłem make xconfig. Przeraziłem sie, tyle opcji, roboty na wiele wiele godzin, a i tak pewnie jako amator cos bym przegapil i kompilacja zakonczyłaby sie błędem.
        Bodajze pod ubuntu/debiana był program ktory sam pobieral kod zrodlowy jądra linuksa a nastepnie sam go kompilowal (nazwa programu wyleciala mi z glowy), ale niestety nie jest on juz rozwijany.

      • tomimaki

        KernelCheck?

    • WhE

      nie rozumiem newsa o rc5, kiedy niedawno zostało wydane już rc7 (czyli są to 2 tygodnie spóźnienia) i w ciągu tygodnia będzie wydana wersja stabilna: https://lkml.org/lkml/2013/6/22/97

      Proszę także o podanie jego wypowiedzi z której mozna wywnioskowac poniższe zdania:
      "Torvalds ma po prostu dość tego, w jaki sposób deweloperzy traktują kod, który piszą. Jest on niedopracowany, pełno w nim śmieci, a przez dużą ilość kodu, rozrasta się niepotrzebnie jądro."

      Trochę rzetelności poproszę

      • Neatnoise

        zgadzam się z Tobą tu nic nie jest napisane czy biega o to, że deweloperzy piszą niedopracowany kod, tylko że w tej fazie rozwoju wersji jądra 3.10 RC5, Linus oczekuje przesyłania mu bardzo ważnych – krytycznych poprawek w kodzie jądra (np. w obrębie bezpieczeństwa systemu), a nie "cleanupsy" czyli estetyczne poprawki w kodzie, które poprawiają jedynie czytelność kodu (refaktoryzacja). Proszę autora artykułu, aby bardziej zapoznał się z przekazywanymi treściami w następnych newsach.

      • bastard

        Z rzetelnością tu zazwyczaj cieniutko.

      • Zapraszamy zatem do pisania newsów, a nie ciągłego krytykowania :)

      • Z całego tekstu można jasno wywnioskować to zdanie, więc nie wiem, o co chodzi.

    • Pingback: Linus Torvalds: zespół kalendarza Google zażywał złych środków odurzających()