Podsumowanie FreeBSD cvs-src od 23/02/04 do 29/02/02 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 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 w FreeBSD-CURRENT przez przefiltrowanie potoku danych z listy dyskusyjnej CVS do łatwej (mamy nadzieję) do przeczytania postaci. Sprawozdanie to wykonano przy użyciu reStructuredText_, wiec każda nietypowa interpunkcja jest prawdopodobnie przewidziana dla reST. .. _reStructuredText: http://docutils.sourceforge.net/rst.html Podsumowania z poprzednich tygodniu i ich wersje HTML znajdziesz pod adresem http://www.xl0.org/FreeBSD (wersja angielska), lub http://mocart.pinco.pl/FreeBSD (polskie tlumaczenie). Wszelkie komentarze wysyłaj do Marka Johnstona (mart at xl0.org). Komentarze dotyczące tłumaczenia wyślij do Łukasza Dudka (mocart at pinco.pl) i Szymona Roczniaka (simon at dischaos.com). .. contents:: ========== Nowe Cechy ========== Zaimportowany PF, filtr pakietów z OpenBSD ------------------------------------------ Max Laier (mlaier) zaimportował znany z OpenBSD filtr pakietów PF w wersji z OpenBSD 3.4. PF, pierwotnie napisany przez Daniela Harmeiera pierwszy raz pojawił sie w OpenBSD 3.0 i jest dostępny w portach od stycznia 2003. Max dodał pochodzące z portu dla FreeBSD łatki, które porawiają różnice w API oraz wprowadzają blokowanie tak, że PF pracuje bez blokowania całego systemu przez Giant. Kod jest już w CVS ale nie został jeszcze dodany do systemu podstawowego. Import tego kodu wywołał ogromną dyskusję, poniższy_ link zawiera jego (całkiem długie) podsumowanie. Jeżeli chcesz poznać więcej szczególów dotyczących PFa oraz korzyści jakie on oferuję przeczytaj `PF User's Guide`_. .. _poniższy: `import filtra pakietów z OpenBSD`_ .. _`PF User's Guide`: http://www.openbsd.org/faq/pf/index.html Kod w jądrze: http://docs.freebsd.org/cgi/mid.cgi?200402260204.i1Q24S8F007564 Kod z przestrzeni użytkownika: http://docs.freebsd.org/cgi/mid.cgi?200402281652.i1SGqkWG070550 Szkielet ALTQ: http://docs.freebsd.org/cgi/mid.cgi?200402282150.i1SLooYg046952 Zaimportowane OpenSSH 3.8p1 --------------------------- Dag-Erling Smorgrav (des) zaimportował OpenSSH w wersji 3.8p1 (przenośne wydanie 3.8) zastępując wersję 3.7.1p2. Warty uwagi jest fakt iż zmiana ta wyłącza wersje pierwszą protokołu SSH w standardowej konfiguracji serwera. Jeżeli używasz takiej wersji ssh upewnij się że odpowiednio dostosowałeś plik /etc/ssh/sshd_config do swoich potrzeb. http://docs.freebsd.org/cgi/mid.cgi?200402261038.i1QAcsVa037628 Wyszukiwanie w DNS bardziej świadome wątków ------------------------------------------- Brian Feldman (green) wprowadził zmiany do kodu odpowiedzialnego za wyszukiwanie w systemie DNS aby uczynić go bardziej świadomym wątków (thread-safe). Blokowanie zostało znacznie zredukowane i wraz z tymi zmianami programy ktore dokonuja zapytań w DNS w wątkach mogą wykonywać wiele wyszukiwań naraz. Kod ten naprawia problem z przeglądarką Mozilla która może teraz otwierać naraz wiele paneli, zamiast uruchamiać je jeden po drugi. Aplikacje wielo-wątkowe które używaja "_res" do ustanowienia wyszukiwań, muszą zostać zrekompilowane. Należą do nich między innymi Mozilla, Evolution i gnomevfs. http://docs.freebsd.org/cgi/mid.cgi?200402252103.i1PL3kkh030016 ACPICA zaktualizowane do wersji 20040220 ---------------------------------------- Nate Lawson (njl) zaimportował ACPI-CA (Advanced Configuration and Power Interface - Component Architecture) w wersji 20040220. Kod ten zajmuje się kodem ACPI zawartym w BIOSIE komputera, umożliwiając w nowszych płytach głównych i laptopach prawidłowy routing *!* przerwań i zarządzanie energią. Nate nałożył także kilka specyficznych dla FreeBSD łatek. http://docs.freebsd.org/cgi/mid.cgi?200402282023.i1SKNZNi020682 Zaimportowany nowy routed ------------------------- Bruce M. Simpson (bms) zaimportował pochodzący od rhyolite routed w wersji 2.27. Poprzednio używana była wersja 2.22 z kilkoma właściwymi dla FreeBSD łatkami, które także zostały przeniesione do wersji obecnej. Nowa wersja 2.27 wprowadza zmiany w obsłudze autentyfikacji MD5, dzięki czemu routed staje się kompatybilny z routerami Cisco i implementacją Sun. Nie jest ona jednak kompatybilna wstecz z routed w wersji 2.26. Jeżeli chcesz dowiedzieć się wiecej na ten temat przeczytaj `Stronę z wolnym opgrogramowaniem Rhyolite`_. .. _`Stronę z wolnym opgrogramowaniem Rhyolite`: http://www.rhyolite.com/src/ http://docs.freebsd.org/cgi/mid.cgi?200402252320.i1PNKNY2062940 Zaimportowano nową biblioteke wyrażeń regularnych GNU ----------------------------------------------------- Andrew A. Chernov zaimportował nową wersje pochodzącej od GNU biblioteki wyrażeń regularnych, która rozprowadzana jest z GNU grepem w wersji 2.4.2. http://docs.freebsd.org/cgi/mid.cgi?200402250227.i1P2Rpca040890 Usprawnienia w watchdog ------------------------ Poul-Henning Kamp (phk) dodał rdzenną obsługę watchdog, tak aby wszystkie implementacje watchdog mogły być kontrolowane z jednego miejsca. Zadoptował on także obsługę programowego watchdog tak aby korzystała z tego interfejsu i zminił nazwe opcji jądra z WATCHDOG do SW_WATCHDOG - jeżeli używasz WATCHDOG upewnij sie że poprawiłeś plik konfiguracyjny jądra. Pózniej wprowadził wsparcie dla sprzętowej obsługi watchdog z układu Geode SC1100, który można spotkać w systemach osadzonych jak np. Soekris net4801. wprowadzenie: http://docs.freebsd.org/cgi/mid.cgi?200402282056.i1SKuZTe034073 dodatek dla Geode: http://docs.freebsd.org/cgi/mid.cgi?200402282233.i1SMXSXI058464 duże włączenie kodu USB do -STABLE ---------------------------------- Julian Elischer (julian) wprowadził dużą aktualizacje kodu USB do wersji 4.x, upodobniając go do kodu -CURRENT. Ta aktualizacja pozwoli wydaniu 4.10 wspierać USB 2 i ułatwi odpluskwianie kodu. http://docs.freebsd.org/cgi/mid.cgi?200403010007.i2107QbD056747 usprawnienia w Netgraph włączone z -CURRENT -------------------------------------------- Ruslan Ermilov (ru) wprowadził wiele mniejszych zmian usprawniających Netgraph, modułowy system umożliwiający łączenie funksji obsługi sieci, do -STABLE. Zmiany wprowadziły nowe API funkcji i naprawiły wycieki pamięci. W tym samym czasie Ruslan wprowadził kod umożliwiający natychmiastową zmianę buforów dla gniazd (socket), poprez sysctl. Netgraph MFC: http://docs.freebsd.org/cgi/mid.cgi?200402231123.i1NBNCpj040938 sysctl'e buforów dla gniazd: http://docs.freebsd.org/cgi/mid.cgi?200402231017.i1NAHXMj024334 =============== Tematy dyskusji =============== import filtra pakietów z OpenBSD -------------------------------- To był długi i skomplikowany wątek, i próbowałem podsumować każdy wiekszy zwrot w dyskusji. To jest ważne zagadnienie, wiec sugeruje abyście przeczytali cały wątek rozpoczynając od linku poniżej. Jak nadmienino powyżej_, Max Laier wprowadził filtr pakietów PF z OpenBSD do systemu. Steve Kargl zapytał gdzie i kiedy toczyła się dyskusja przed importem. Bruce M. Simpson (bms) wyjaśnił że dyskusja toczyła sie pomiedzy wieloma osobami zaangażowanymi w rozwuj sieci, włączając w to core@. Bruce także wspomniał że ma pewne plany w stosunku do PF, jak np. przepuszczanie IPSEC NAT, wyrzszy poziom fitrowania Kazy i tym podobnych, i prawdopodobnie usprawnienia dla połączeń z rożnymi scieżkami wysyłania i odbierania np. Internet przez Satelitę. Pózniejsze komentarze wyjaśniały ze nie ma żadnych planów co do usunięcia ipfw/ipfw2 czy IPFiltra. Luigi Rizzo (luigi) wtrącił sie, zauważając że reguły oparte na mikrokodzie w ipfw2 są łatwiejsze do rozszerzenia, i że idealna ściana ogniowa powinna mieć reguły oparte na mikrokodzie ipfw2 i NAT wewnątrz jądra oparty na PF. Sam Leffler (sam) zgodził się z powyższym stwierdzeniem. Toczyła sie pewna dyskusja nad konwersja ipfw2 do korzystania z nowego API PFIL_HOOKS do filtrowania pakietów. Dag-Erling Smorgrav (des) zasygerował że konwersja całego podsystemu sieci do netgraph, byłaby idealna, tak aby filtrowanie mogło być prowadzone w dowolnym momencie. Wielu ludzi nie zgodziło się z tą opinia, z powodów wydajności takiego rozwiązania i problemów z implementacją Andre Oppermann (andre) zasugerował że jeżeli jaki kolwiek filtr pakietów miał by zostać usunięty to powinien to być IPFilter jako że PF go zastępuje. Jacques Vidrine (nectar) zauważył że IPFilter jest jedynym filtrem pakietów dostępnym rownież na komercyjne systemy UNIX jak Solaris i IRIX. Tim Kientzle (kientzle) napisał że chętnie widział by usprawnienie pozwalające w locie zmieniac zestawy adresów, bez zmieniania reguł. Wielu zauważyło że jest to możliwe w przypadku PF odrazu. .. _powyżej: `Zaimportowany PF, filtr pakietów z OpenBSD`_ http://docs.freebsd.org/cgi/mid.cgi?200402260234.i1Q2YDx1014240 Jak poważne są efekty zmian w libkvm? ------------------------------------- Andre Opperman (andre) wprowadził kod, który przeniósł kolejkę rozkładającą TCP do UMA. Spowodowało to zmiany w libkvm wymagające rekompilacji wszystkich programów korzystających z tej biblioteki. Kris Kennaway (kris) wskazał, że libkvm używana jest nie tylko przez programy z systemu podstawowego ale także niektóre porty. Andre poprosił o więcej szczegółów i Kris dostarczył listę 80 portów używających tej biblioteki. Andre wyjasnił, że tylko porty korzystające ze struktury TCP powinny zostać przekompilowane. Kod Andre: http://docs.freebsd.org/cgi/mid.cgi?200402241527.i1OFRgdm072232 Lista portów Krisa: http://docs.freebsd.org/cgi/mid.cgi?20040224223404.GA55257 Nie robią już takich jak dawniej -------------------------------- Poul-Henning Kamp (phk) wprowadził poprawkę do strony podręcznika man fdcontrol, programu obsługującego napęd dyskietek, dodającą przykład dla dyskietek 8". Wilko Bulte (wilko) zaoferował dyskietkę tego rodzaju, rozpoczynając tym wątek o starych nośnikach i urządzeniach. Opowiedział też historie starego, zasilanego prądem zmiennym napędu, który bez problemu pracował wypełniony piaskiem i cementem. Kevin Oberman porównał dyskietki 8" ze starym, niezniszczalmy systemem taśm DEC'a. Do poprawek Poul-Henning'a przyczyniła się jego praca w nowym, duńskim muzeum komputerów. Poul-Henning poszukuje kopii lub skanu instrukcji obsługi 8 calowego napędu Y-E Data Yd174. Powiadom go, prosze, jeżeli posiadasz taką kopię. Początek wątku: http://docs.freebsd.org/cgi/mid.cgi?200402251355.i1PDtu6Y018589 Wiecej informacji o muzeum: http://docs.freebsd.org/cgi/mid.cgi?27174.1077734003 ========================== Ważniejsze poprawki błędów ========================== FreeBSD-SA-04:03 - Przemieszczające się uwięzione procesy --------------------------------------------------------- W ostatnim tygodniu Jacques Vidrine (nectar) wprowadził `poprawkę`_ zapobiegającą możliwości przemieszczania się procesów między jailami. Od tamtego czasu zostało wydane oficjalne powiadomienie 'FreeBSD-SA-04:03'_, więc wspominam o tym ponownie. .. _`poprawkę`: http://excel.xl0.org/FreeBSD/22-02-04.html#jailed-processes-moving-around-corrected .. _`FreeBSD-SA-04:03`: ftp://ftp.freebsd.org/pub/FreeBSD/CERT/advisories/FreeBSD-SA-04:03.mail.asc Poprawki w tworzeniu plików/katalogów SMB przeniesione z -CURRENT ----------------------------------------------------------------- Tim J. Robbins (tjr) przeniósł `wspomniane dwa tygodnie temu`_ poprawki do -STABLE. Błąd mógł spowodować problemy w przypadku gdy plik był zamieniany na katalog o tej samej nazwie, lub odwrotnie. .. _`wspomniane dwa tygodnie temu`: http://excel.xl0.org/FreeBSD/15-02-04.html#problem-with-creating-directories-under-smbfs-corrected http://docs.freebsd.org/cgi/mid.cgi?200402261112.i1QBChxE047414 ==================== Inne poprawki błędów ==================== Kirk McKusick (mckusick) poprawił błąd występujący w UFSie, który powodował zakleszczenia i zawieszenia się systemu. http://docs.freebsd.org/cgi/mid.cgi?200402230640.i1N6eHcs064986 Jeffrey Hsu (hsu) poprawił warunek w kodzie TCP, który mógł w pewnych okolicznościach doprowadzić do błędu systemu (panic) podczas zamykania połączenia. http://docs.freebsd.org/cgi/mid.cgi?200402250853.i1P8rIK5041945