Podsumowanie FreeBSD cvs-src od 15/02/04 do 22/02/04 ++++++++++++++++++++++++++++++++++++++++++++++++++++ Jest to regularne cotygodniowe podsumowanie pełnego wyzwań rozwoju FreeBSD, ma ono na celu pomoc wspólnocie FreeBSD w śledzeniu szybko dokonujących się zmian we FreeBSD-CURRENT poprzez odcedzenie z potoku listy pocztowe CVS tego (mam nadzieję) łatwego w czytaniu sprawozania. Sprawozdanie to wykonano przy użyciu reStructuredText_, wiec każda nietypowa interpunkcja prawdopodobnie jest przewidziana dla reST. .. _reStructuredText: http://docutils.sourceforge.net/rst.html Możesz znaleźć stare podsumowania i ich wesje html pod adresem http://mocart.pinco.pl/FreeBSD/. Wszystkie komentarze wysyłaj do Mark'a Johnston'a (mark at xl0.org) Łukasza Dudek (mocart at pinco.pl) . .. Contents:: ============ Nowe cechy ============ dodano wsparcie dla barier w PThread ------------------------------------ Mime Makonnen (mtm) dodał wsparcie dla barier PThread i atrybutów barier do biblioteki wątków libthr. Bariery te sa w przypadku watków sposobem na zsynchronizowanie wielu wątków razem, każdy wątek który synchronizuje sie (zapytuje) z barierą zostaje zawieszony. Kiedy już zawieszonych jest wystarczająca ilośc wątków, bariera pozwala im wykonać sie wszystkim na raz. http://docs.freebsd.org/cgi/mid.cgi?200402191351.i1JDprSG065022 dodano Łączenie(concatenation) dysków poprzez GEOM -------------------------------------------------- Paweł Jakub Dawidek (pjd) dodał wsparcie do GEOM dla łączenia dysków. Łączenie dysków umożliwia korzystanie z wielu urządzeń pamięci masowej jakby były one jednym dużym dyskiem. Wprowadził także narzędzie zwane gconcat którym tworzymy, niszczymy i opisujemy(label) dyski łączone poprzez łączenie GEOM. wsparcie GEOM: http://docs.freebsd.org/cgi/mid.cgi?200402191519.i1JFJoYQ084836 gconcat: http://docs.freebsd.org/cgi/mid.cgi?200402191602.i1JG29pe094944 Nowy Sendmail w wersji 8.12.11 włączony do 4.x ---------------------------------------------- Gregory Neil Shapiro (gshapiro) włączył Sendmail'a 8.12.11 do FreeBSD 4.x. Jest to ta sama aktualizacja która miała miejsce w -CURRENT `w zeszłym tygodniu`_. Prosze przejrzeć przypisy do wydania `Sendmail 8.12.11`_ aby zapoznać się ze szczegółami zmian w nowej wersji. .. _`w zeszłym tygodniu`: http://excel.xl0.org/FreeBSD/15-02-04.html#id8 .. _`Sendmail 8.12.11`: http://www.sendmail.org/8.12.11.html dodano wsparcie dla Sysloga w nologin(8) ---------------------------------------- Colin Percival (cperciva) dodał aktualizacje do nologin, programu który wyświetla wiadomość dla kont które nie maja zezwolenia na wejście do systemu, aby zapisywał on w dzienniku systemowym informacje o próbie wejścia na zablokowane konto. Zmiana ta zwiększa rozmiar pliku o 100 kb, więc dodał on także opcje wyłaczającą tą zmianę. http://docs.freebsd.org/cgi/mid.cgi?200402221003.i1MA3PW0024791 opcja cleanworld dodana do głownego pliku Makefile -------------------------------------------------- Garance A. Drosehn (gad) dodał do głownego pliku Makefile opcje "cleanworld". Umożliwia to wykonanie komendy "make cleanworld w /usr/src która usuwa wszystkie pliki które zostały stworzone podczas wykonywania komendy "make buildworld" i "make buildkernel". http://docs.freebsd.org/cgi/mid.cgi?200402162018.i1GKIQK4029731 Podstawowe wsparcie dla dużych plików w systemie plików ext2 ------------------------------------------------------------ Tim J. Robbins (tjr) dodał wsparcie dla dużych plików w systemie plików ext2. Kod ten działa tylko gdy system plików jest zgodny z współczesnym kodem ext2, i potrzebuje ustawienia oznaczenia zgodności. http://docs.freebsd.org/cgi/mid.cgi?200402181408.i1IE8QaL004568 =================== zmiany u komiterów =================== Alfred Perlstein (alfred) wprowadził Jim Rees (rees) jako nowego komitera dla src. Jim będzie pracował nad klientem i serwerem dla wersji 4 NFS (Sieciowy System Plików) systemu plików. http://docs.freebsd.org/cgi/mid.cgi?200402170216.i1H2GuU4058858 Paul Saab (psaab) wprowadził Vinod Kashyap (vkashyap), jako nowego komitera dla src, który będzie pracował nad sterownikami dla kart ATA RAID firmy 3ware. http://docs.freebsd.org/cgi/mid.cgi?200402202335.i1KNZxrO075548 ================ Toczone dyskusje ================ Wyświetlanie numeru linii kiedy nastąpi błąd systemu (panic), ponownie --------------------------------------------------------------------------- Jak wspominano w `podsumowanie z 23 Stycznia`_, Poul-Henning Kamp (phk) wprowadził zmiany umożliwiające odczytanie nazw plików i numerów linii z wiadomości i błedzie systemu (panic). Dyskusje wznowiono po uwadze Bruce'a Evans'a (bde) że temat pozostał otwarty. Nate Lawson (njl) wspomniał że wprowadził już zmiany (patch) dokonane przez Ian'a Dowse'a (iedowse) które powodowały ze śledzenie wsteczne (backtrace) logowało sie właściwie. Marcel Moolenaar (marcel) zasugerował aby KASSERT(), makro używane do sprawdzania podanych wyrażen, może zostać zmodyfikowane do wyświetlania nazwy pliku i numeru linii. John Baldwin (jhb) zaproponował w zamian makro MPASS(), które już podaje numer linii, i dyskusja potoczyła sie w kierunku zmiany nazwy MPASS() na ASSERT(). .. _`podsumowanie z 23 Stycznia`: http://excel.xl0.org/FreeBSD/23-01-04.html#id5 wiadomość Bruce'a: http://docs.freebsd.org/cgi/mid.cgi?20040213035557.M24031 komentarz Nate'a: http://docs.freebsd.org/cgi/mid.cgi?20040217083910.M29569 sugestia John'a dla MPASS: http://docs.freebsd.org/cgi/mid.cgi?200402180839.09285.jhb M_WAITOK opcja alokacji pamięci zmieniona ----------------------------------------- Dag-Erling Smorgrav (des) wprowadził zmiany do podsystemu pamięci umożliwiające mu zwrócenie wartości NULL kiedy zapytanie o pamieć z opcją M_WAITOK nie może zostac dokonane. Zapoczątkowało to dyskusję czy zmiana znaczenia opcji M_WAITOK jest pożądana. Na problemie zaważyło pytanie czy zapotrzebowanie na przydzielenie bezwzględnej ilości pamieci w jądrze nie spowoduje ryzyka wywołania błędu systemu (panic). Pojawiły sie prośby o wycofanie zmiany, w zamian za wprowadzenie innego rozwiązania problemu. Maxime Henrion (mux) wspomniał o napisanej poprawce (patch) która wprowadzała tą samą możliwość, dyskusja toczyła sie wokół tematu czy wprowadzone funkcjonalność jest przydatna. Dag-Erling wycofał zmianę w poniedziałek. http://docs.freebsd.org/cgi/mid.cgi?200402161841.i1GIfwmv008267 mail Maxim'a: http://docs.freebsd.org/cgi/mid.cgi?20040216210503.GC35475 wycofanie zmiany Dag-Erling'a: http://docs.freebsd.org/cgi/mid.cgi?200402162136.i1GLaxWG053281 Poprawne usuwanie plików wprowadzanych z zewnątrz w CVS dla -CURRENT -------------------------------------------------------------------- Andrey Chernov (ache) usunął niektóre pliki powiązane z GNU getopt z systemu. Ollivier Robert zauważył że pliki zostały wycofane z CVS'a dostawcy. Potoczyła się dyskusja nad sposobem usuwania plików dostarczanych z zewnatrz gdy narasta taka potrzeba. Aby prześledzić całość dyskusji, która wymaga dogłębnej znajomości sposobu zarządzania źródłem CVS w FreeBSD możesz skorzystać z linku poniżej. http://docs.freebsd.org/cgi/mid.cgi?200402170343.i1H3hCot079054 Konfiguracja podczas uruchamiania device.hints vs. loader.conf -------------------------------------------------------------- Wes Peters (wes) wprowadził kod dla strony podręcznika systemowego ACPI wyjaśniające różnice pomiedzy sysctl(8) a device.hints(5) podczas wprowadzania ustawień. Wywołało to dyskusje o korzyściach płynących z wprowadźania zmian w ustawieniach do loader.conf zamiast device.hints, żaden z tych plików nie jest automatycznie zmieniany ale device.hints może byc aktualizowany razem z nową wersją jądra. Nate Lawson (njl) wspomniał także że loader.conf jest dostarczony pusty, co ułatwia jego zrozumienie w przypadku problemów. http://docs.freebsd.org/cgi/mid.cgi?200402172038.i1HKcnKY035565 komentarz Nate'a: http://docs.freebsd.org/cgi/mid.cgi?20040217143034.B31176 Poważne zmiany w kodzie urządzeń -------------------------------- Poul-Henning Kamp (phk) wprowadził duże zmiany do kodu odpowiedźialnego za urządzenia. Nowy kod pozwala śledzić urządzenia dużo dokładniej niż dotychczas, ułatwia to wyszukiwanie błędów i ich naprawę. Uwalnia on także wiekszość urządzeń od ustawionych statycznie numerów urządzeń. Uaktualanie to zmienia API dla urządzeń, tak więc sterowniki nie dostarczone z systemem będą musiały dostosować się do zmian. Poul-Henning zaktualizował sterowniki systemowe dla nowego API. zmiany w API: http://docs.freebsd.org/cgi/mid.cgi?200402212110.i1LLAtEX008732 http://docs.freebsd.org/cgi/mid.cgi?200402212157.i1LLvQWp020145 ===================== Ważne poprawki błędów ===================== filtr pakietów IPv6 teraz uruchamiany poprawnie ----------------------------------------------- Mike Makonnen (mtm) wprowadził aktualizację do skryptów startowych dla ipfw w wersji IPv6, poprawiając problem który powodował niewłaściwe uruchomienia filtra pakietów po wprowadzniu jego reguł. Zmiana ta zamyka `PR 61501`_, dostarczony przez Roderick van Domburg. .. _`PR 61501`: http://www.freebsd.org/cgi/query-pr.cgi?pr=61501 http://docs.freebsd.org/cgi/mid.cgi?200402190653.i1J6rPlP057009 poprawione błędy zgłoszone przez Coverity ----------------------------------------- Ted Unangst z Coverity_ wysłał raport dotyczący błędów znalezionych przez oprogramowanie do automatycznego wykrywania błędów Coverity_. Najpoważniejsze błędy poprawiono w sterowniku RAID RAIDframe, gdzie w niektórych przypadkach przyznawana była zbyt mała ilość pamięci. Poprawki te zostały wprowadzone podczas ubiegłego tygodnia przez Colin'a Percival'a (cperciva), Jim'a Rees'a (rees) i Soeren'a Schmidt'a (sos). Podziękowania dla Colin'a Percival'a (cperciva) za wprowadzenie mnie w temat Coverity. .. _Coverity: http://www.coverity.com/ http://docs.freebsd.org/cgi/mid.cgi?200402220103.i1M13coA076447 naprawiona obsługa przenoszących sie procesów w Jail'ach -------------------------------------------------------- Jacques Vidrine (nectar) wprowadził poprawkę do kodu jail ktory uniemożliwia przenoszenie sie procesów z jednego jail'a do drugiego. http://docs.freebsd.org/cgi/mid.cgi?200402192103.i1JL3KhF076615 ===================== Inne poprawione błędy ===================== Tim J. Robbins (tjr) zmienił narzędzie savecore(8), które używane jest do zapisywania zrzutów awaryjnych systemu, tak aby umożliwić zapis zrzutów wiekszych niż 2 GB. http://docs.freebsd.org/cgi/mid.cgi?200402201222.i1KCMqgJ004355 Bruce Evans (bde) wprowadził poprawkę dla poważnego błędu w kodzie systemu plików DOS. Błąd ten powodował zanieczyszczenie pamięci w niektórych warunkach podczas używanie systemu plików DOS. http://docs.freebsd.org/cgi/mid.cgi?200402212247.i1LMlKJ5033386 Scott Long (scottl) poprawił ostanio ujawiony błąd systemu (panic) w sterowniku aac dla kart SCSI firmy Adaptec. http://docs.freebsd.org/cgi/mid.cgi?200402210532.i1L5WfBi068177 Andrey A. Chernov (ache) zaktualizował wiele narzędzi systemowych aby używały systemowej wersji fetopt_long(), która analizuje opcje przekazywane do komend, zamiast użytych w nich ich własnych wersji tej funkcji lub wersji GNU.