Kernel Traffic
Latest | Archives | People | Topics
Wine
Latest | Archives | People | Topics
GNUe
Latest | Archives | People | Topics
Czech
Home | News | RSS Feeds | Mailing Lists | Authors Info | Mirrors | Stalled Traffic
 

Kernel Traffic #177 For 2002/07/29

By Zack Brown

Translated By:  Krzysztof WilczyńskiMaja KrólikowskaPaweł Kot  and  Robert Święcki

Table Of Contents

Introduction

Wiele osób prosiło o udostępnienie Kernel Traffic w postaci RSS, więc zrobiłem to zarówno dla KT, jak i dla kuzynów. Są podłączone w belce nawigacyjnej na górze, adres RSS-a dla KT to http://kt.zork.net/kernel-traffic/rss.rdf. Dajcie mi znać, jeśli będą jakieś problemy. Jeśli mi powiecie, gdzie ich używacie, zrobię stronę z odnośnikami do tych stron.

Mailing List Stats For This Week

We looked at 1424 posts in 7240K.

There were 371 different contributors. 185 posted more than once. 172 posted last week too.

The top posters of the week were:

1. Szeregowanie grup procesów w Linuksie

16 lip 2002 - 22 lip 2002 (16 posts) Archive Link: "Szeregowanie grup procesów w linuksie"

Topics: Scheduler

People: Ingo MolnarSam MasonHubertus FrankeRichard Gooch

Ktoś spytał, czy w Linuksie jest wsparcie dla 'szeregowania grup', a jeśli tak, to jaki jest jego stan. Ingo Molnar odpowiedział:

tak - 'synchroniczne budzenie' to forma szeregowania grup. Chodzi w tym o to, aby wykorzystać rzeczywistą informację o komunikacji międzyprocesowej do zmigrowania 'związanych' ze sobą zadań na ten sam procesor. Odbywa się zatem automatycznie, nie ma potrzeby formalnego definiowania przynależności procesu do 'grupy'.

(inny rodzaj 'szeregowania grup' może być uzyskany przy pomocy dowiązywania 'macierzystego' procesu do pojedynczego procesora -- wszystkie jego potomki zostaną przypisane do tego samego procesora.)

William Lee Irwin III podał także odnośnik do Przeglądu Szeregowania Grup w formacie PDF. Ingo dodał: "Linuksowy scheduler nie umożliwia klasycznego szeregowania grup, gdzie wiele procesów jest szeregowanych 'od razu' na wielu procesorach," jednakowoż nie był pewien, czy istnieją jakieś przypadki z realnego świata, gdzie mogłoby to dać jakiekolwiek korzyści. Sam Mason odparł: "Ten mechanizm jest wykorzystywany głównie przez programy, które potrzebują dużo mocy obliczeniowej skoncentrowanej na jednym problemie, problem jest dzielony najpierw na wiele mniejszych kawałków, a potem każdy z tych kawałków jest wysyłany na inny procesor. Gdy wszystkie zostaną przetworzone, są składane i wykonywana jest reszta obliczeń. Problem polega na tym, że jeśli któryś z kawałków się opóźni, wszystkie procesory będą bezczynnie oczekiwać, aż przerwany kawałek zostanie przetworzony, zanim będą mogły przetworzyć następny zestaw kawałków." Nieco później dodał jeszcze: "Jest ważne, aby zapamiętać, że nie jest to zwykła metoda szeregowania, jest wykorzystywana w BARDZO specjalizowanym oprogramowaniu, które ma mieć (prawie) całkowitą kontrolę nad komputerem. Procesy szeregowane w grupie muszą mieć najwyższy możliwy priorytet i zostać wykonane przed jakimikolwiek innymi procesami. To działa, bo oprogramowanie wie, co robi i zakłada, że użytkownik uruchomi co najwyżej jedną instancję programu wykorzystującego szeregowanie grupowe i jeśli te wszystkie założenia są spełnione, powinno to działać poprawnie."

Hubertus Franke z IBM również odpowiedział Ingo:

Byłem zaangażowany w implementację szeregowania grupowego w klastrze SP2 składającym się z IBM 340 w Lawrence Livermore National Lab. Niezależnie od implementacji, można pokazać, że można zwiększyć całkowite wykorzystanie systemu z ~60% do ~90% w przypadku, gdy użyjemy szeregowania grupowego, zamiast szeregowania FIFO, które zostało by użyte w przeciwnym wypadku na dedykowanej maszynie. Uzykaliśmy tony prac na ten temat.

Wygląda na to, że wystarczy zatrzymać aplikacje na większej ziarnistości i zrobić to przy pomocy demona w przestrzeni użytkownika. Scheduler jądra będzie szeregował działające wątki, których, przy ustalonym U-Sched, zawsze będzie ograniczona liczba.

To zabrzmiało sensownie dla Ingo i obaj zaczęli rozmawiać o implementacji, gdy Richard Gooch wtrącił: "Rozwiązanie wykonane całkowicie w przestrzeni użytkownika może mieć kilka wad, takich jak opóźnienia przy przeszeregowywaniu (zakładając, że jakiś demon będzie przechodził po liście procesów). Być może dałoby się dodać mały trick w schedulerze polegający na tym, że gdy zadanie ma zostać wywłaszczone, można wysłać sygnał do odpowiedniego pid. Podobnie, gdy przydzielimy procesowi procesor, możemy wysłać inny sygnał. Aplikacja, której potrzebne by było szeregowanie grupowe, mogłaby skorzystać z tego, by zatrzymywać lub wznawiać wątki. " Hubertus odparł:

Cieszę się, że podniosłeś ten problem. Chciałbym mieć ogólne wywołanie zwrotne na to. AIX miał/ma funkcję obsługi zmiany procesu, która jest wołana na początku/przy wyjściu.

Ten pomysł w Linuksie mogłby zostać zrealizowany przez ogólną funkcję określaną przez pewien moduł... to powinno wystarczyć i nie zepsuć obsługi innych rzeczy. Na przykład w przypadku wystąpienia szybkiej komunikacji na poziomie użytkownika (na przykład czasem aktualny proces mógłby być zaznaczany przez to, co obsługuje komunikację).

Nie było odpowiedzi.

2. Dyskusja na temat terminu wydania 2.6

19 lip 2002 - 21 lip 2002 (14 posts) Archive Link: "Re: [2.6] Koniec łączenia najprawdopodobniej przed Halloween ... LISTA]"

Topics: Release Scheduling

People: Hans ReiserAndreas DilgerRik van Riel

W trakcie dyskusji Hans Reiser zapytał:

Czy Halloween jest ostatecznym terminem przesyłania łatek, czy ostatecznym terminem ich włączania? Jeśli prześlę reiser4 w dniu Halloween, zgodnie z jakąś strefą czasową ;-), to czy zmieszczę się w terminie i zostanie to włączone do 2.6, nawet jeśli moje łatki poczekają kilka miesięcy w kolejce wszystkich łat wysłanych w Halloween?

Rozumiem, że im wcześniej, tym lepiej i jeśli będę mógł to wyślę je wcześniej, ale nawet jeśli będziemy mieć rdzeń reiser4 (który będzie robił wszystko to, co V3, ale szybciej i będzie wmontowany w infrastrukturę wtyczek) przed Halloween, to niewątpliwie dodamy parę rzeczy i poprawek już po jego przygotowaniu i będziemy chcieli je przesłać w ostatniej chwili.

Andreas Dilger odparł:

rozumiem to tak, że jeśli pewne istotne zmiany nie będą włączone do jądra przed Halloween, nie zostaną już zaakceptowane aż do 2.7. Ten ostateczny termin ogłoszono tak wcześnie w nadziei, że ludzie będą mieli sporo czasu by przesłać rzeczy, które są gotowe do włączenia, w przeciwieństwie do sytuacji, w której spieszyliby się z wysyłaniem wszystkiego w chwili, w której ogłoszone zostałoby ,,zamrożenie''.

Jeśli (a wszyscy mamy taką nadzieję) ważne rzeczy będą w ciągu najbliższysch kilku miesięcy dodawane stopniowo do jądra rozwojowego, może nie wszystkie użycia i testy, które mają obecnie miejsce zostaną zagubione, gdy całe jądro zostanie całkowicie zmienione ze względu na ogromny ciężar gatunkowy łatek.

To może nawet oznaczać, że nie będzie dodatkowego roku, w którym rozmaite cechy (i błędy) będą dodawane do ,,zamrożonego'' jądra i będziemy mogli wcześniej zacząć pracę nad 2.7.

Tak jak zawsze, wyobrażam sobie, że tak długo jak masz pewne istotne zmiany 2.5 przed zamrożeniem, to nie będzie niemożliwe dodanie osobnych rzeczy, takich jak systemy plików czy sterowniki, także po zamrożeniu.

Hans odpowiedział:

Z całym moim egocentryzmem, sądzę, że bardziej sensowne byłoby ustalenie ostatecznego terminu podsyłania łat, niż ich akceptacji, bo dzięki temu wszystko byłoby bardziej przewidywalne dla osób podsyłających łatki i pozwoliłoby uniknąć niezamierzonego niezauważenia dobrych łatek od mało widocznych persons ze względu na natłok łatek w październiku.

Wcześniejsze ogłoszenie ostatecznego terminu jest dobre, ale ustalenie, że jest to ostateczny termin dla czegoś, nad czym panują osoby podsyłające łatki (czas wysłania, a nie czas akceptacji), byłoby nawet lepsze.

W odpowiedzi Andreas napisał:

Zgodziłbym się, z wyjątkiem tego, że to nie nakłada żadnej odpowiedzialności na podsyłających łatki, by przesyłali swoje dzieła wcześniej i powoduje ten sam problem, który pojawia się przy nieogłaszaniu tych terminów: nawał łatek w jednym momencie.

Zauważ, że ,,zaakceptowane'' może się okazać błędnym terminem - nie umiem stwierdzić, czy to oznacza, że Linus otrzymał daną łatkę, czy oznacza to, że jest ona już w drzewie jądra.

Zwróć też uwagę, że nie było mnie na kernel summit, więc wszystko to co piszę usłyszałem od innych.

Rik van Riel wtrącił się do wymiany zdań:

Chodzi o obie rzeczy. Wszyscy wiemy, że Linus nie ma czasu pilnować przenoszenia na coraz nowsze wersje setek naszych łatek, może jedynie włączać tylko te łatki, które dają się nałożyć na dokładnie takie jądro, jakie ma właśnie danego dnia.

To (oraz fakt, że Linus dostaje dużo za dużo listów i łatek, by patrzeć na stare rzeczy) jest ograniczniem na to, żeby Halloween było ostatecznym terminem zarówno dla przesyłania, jak i dla akceptacji łatek.

Taką mam nadzieję.

Parę listów później dodał:

Mam nadzieję, że zamrożenie planowane na Halloween będzie prawdziwym zamrożeniem dla nowości. Nic nie jest bardziej frustrujące niż posiadanie ,,stabilnego jądra'', którego co druga wersja jest zepsuta przez kolejne elementy.

Jeśli się wszyscy powstrzymamy, to 2.6 będzie wkrótce stabilne, a 2.7 ruszy krótko po tym. Przeniesienie ,,istotnych'' cech z 2.7 na _stabilne_ 2.6 będzie znacznie łatwiejsze niż próby stabilizowania 2.6-pre, które jest pełne po brzegi niezupełnie jeszcze stabilnych elementów.

3. Nowy porucznik podsystemu pamięci wirtualnej

20 lip 2002 - 22 lip 2002 (14 posts) Archive Link: "[PATCH][1/2] wartości zwracane przez shrink_dcache_memory itp"

Topics: Maintainership, Virtual Memory

People: Rik van RielLinus TorvaldsAndrew MortonWilliam Lee Irwin III

Rik van Riel ogłosił:

ta łatka, na najnowsze 2.5.27, zbudowana jest na łacie, która pozwala funkcji kmem_cache_shrink zwracać liczbę zwolnionych stron. Wartość ta jest używana jako wartość zwracana przez funkcję shrink_dcache_memory i inne takie.

Jest to użyteczne, nie tylko po prostu ze względu na dokładniejsze wykrywanie OOM, ale także jako przygotowanie do wstawienia tych stron na listę LRU. Pierwszym autorem tej zmiany jest Ed Tomlinson.

Linus Torvalds odpowiedział:

Nie zgadzam się z całym tym podejściem, w którym shrink_cache() zwraca liczbę zwolnionych stron.

Ta liczba nie ma żadnego znaczenia, bo nie jest nijak związana z faktycznymi strefami pamięci, które są wymuszane (obecnie, strefy pamięci są prawie zawsze ZONE_NOMRAL, co jest poprawne, ale jest to raczej czyste szczęście niż coś, co można zakładać).

Dużo bardziej interesowałoby mnie podejście typu ,,włóż strony cache na listę zabrudzonych stron tak, by wymuszanie pamięci wypchnęło je w porządku LRU''. Ktoś już miał takie wstępne łatki.

To pozwala _pozbyć_ się dcache_shrink() i tym podobnych, zamiast sprawiać, że zwracają one liczby, które nic nie znaczą.

Rik napisał, że spróbuje przenieść kod Eda z 2.4 na 2.5, a Linus dodał:

Uwaga na boku: sądzę oczywiście, że to jest właśnie to, co należy zrobić, ale jest dużo bardziej ,,interesująca'' zmiana do zrobienia. Co z tego wynika, bardziej podobałoby mi się, gdyby to przeszło odpowiednimi kanałami (najprawdopodobniej przez Andrew) i zostało szerzej przetestowane, przynajmniej w formie CFT na linux-kernel.

[ A może to już było w 2.4.x w którymś z głównych drzew? (W tym przypadku rozluźniam mój argument o potrzebie testowania, potrzebne jest ono tylko do sprawdzenia, czy przeniesienie na nowe wersje działa). ]

Rik zgodził się, że szersze testy byłyby dobrą rzeczą, dodając, że tego kodu nie było w żadnym z głównych drzew 2.4. Andrew Morton także odpowiedział Linusowi:

Propoponowałbym unikanie dodatkowych zmian w VM aż do chwili, w której będziemy mieć rozwiązania następujących rzeczy:

2: Zadziała z pte-highmem (Bill Irwin się do tego zgłosił)

4: pte_chains przesunięte też do highmem (chyba Bill)

6: być może GC we wracających stronach w pte_chain. (Wydaje się, że nie da się tego uniknąć. Rik?)

Szczególnie pte_chains w highmem. Fakt, że nie udaje się tego naprawić hamuje użycie rmap na dużych maszynach z ia32, co powoduje, że jej w ogóle nie ma.

Jeśli możemy mieć coś w zamian, co działa w sposób możliwy do zaakceptowania na maszynach Martina Bligha i przekonamy się, że zyski ze stosowania rmap (jakiekolwiek by nie były ;)) są ważniejsze od problemów, które nie zostały jeszcze zakodowane, to działajmy z tym dalej. Ale do tego momentu dodawanie nowych rzeczy do VM powoduje tylko, że trudniej jest zrobić 'patch -R'.

William Lee Irwin III odparł: "Prześlę Ci uaktualnienie mojego rozwiązania problemu (6), którego początkową wersję posłałem dziś wcześniej, w oddzielnym liście. highpte_chain obsłuży (2) i równocześnie (4), ale trzeba to zdebugować." Andrew mu podziękował, ale dodał: "W porządku. Dodajesz jednak trochę nietrywialnego kodu tylko po to, żeby odwrotne mapowanie działało równie niezawodnie jak virtual scan. Zawsze jednak będziemy mieć dodatkowe wymagania dotyczące przechowywania danych rmap. W pewnym momencie będziemy musieli zadecydować czy warto tego używać. Obecnie nie mamy nawet informacji o zaletach takiego rozwiązania. To jest niepokojące. " On, Rik i Martin J. Bligh prowadzili jeszcze dyskusję na temat implementacji, a potem wątek wygasł.

4. Restrykcyjna alokacja pamięci wirtualnej; Komentarze w źródłach

20 lip 2002 (13 posts) Archive Link: "[PATCH] Restrykcyjna alokacja pamięci wirtualnej"

Topics: Virtual Memory, Source Tree

People: Robert LoveAlan CoxLinus Torvalds

Robert Love ogłosił:

Łatka ta implementuje restrykcyjną alokację pamięci wirtualnej dla rmap. Restrykcyjna alokacja łączy rejestrację przestrzeni adresowej z zasadą restrykcyjnego wykonania, aby mieć pewność, że cała przyznana pamięć zostanie zwrócona, co w konsekwencji wyeliminuje błędy braku pamięci (OOM). Wszystkie błędy obsługi pamięci powinny być przeniesione do procedur alokacji - dostęp do strony pamięci nie powinien nigdy prowadzić do unicestwienia procesu.

Nowa polityka restrykcyjnej alokacji pamięci została zaimplementowana za pomocą sysctl.

Ma ona niewielki wpływ na resztę kodu i nie zmienia zachowania systemu z domyślną polityką alokacji. Rik wyraził swoje poparcie w tej sprawie.

Łata oparta jest na rozwiązaniach Alana Coxa dla 2.4-ac z pewnymi przeróbkami i nowym trybem alokacji pamięci dla ,,bezswappowych'' maszyn. High Dickins dostarczył także małe poprawki dla shmfs.

Łatka jest przeznaczona dla 2.5.27

Alan Cox ostro skrytykował łatkę mówiąc, że różni się ona w znacznym stopniu od jego rozwiązań i jest ,,wadliwa'' w wielu miejscach. Dodał także: "Zadałem sobie trud wykonania pomiarów i testowania łatki na rzeczywistych konfiguracjach. Proszę nie igrać z tym, dopóki nie wykonacie wiarygodnego zestawu testów. " Zarekomendował nieaplikowanie łatki, lub też użycie jego poprzednich rozwiązań

Robert odpowiedział, iż powiadmomił Alana w pierwszej kolejności o tych zmianach i chciałby wiedzieć dlaczego właśnie teraz Alan się do tego przyczepił. Alan zaprzeczył, jakoby otrzymał jakąkolwiek wiadomość na ten temat ale Robert zaproponował dostarczenie wiadomości razem z odpowiedzią Alana. Alan powiedział wtedy: " Ok, przypominam sobie, niestety nie utkwiło to na tyle w mojej głowie, by to zapamiętać." Po tym zaczęto dyskutować nad szczegółami implementacji.

W innym miejscu Alan zaapelował:

Wobec zmian w plikach, zmiana nagłówków mm/*.c w celu załączenia deklaracji GPL jest częścią mojej łatki. Kod podesłany przez Red Hat jest na licencji GPL i nie ma żadnej gwarancji, że poszczególne jego części nadają się do użycia. Gdy im odpowiadacie, proszę, załączcie dodane przeze mnie nagłówki GPL albo pisemną deklarację, że bierzecie całą odpowiedzialność za błędne działanie i tym podobne. Jeżeli zmieniłeś coś w kodzie, dodaj siebie także do listy **zasłużonych** (ang. credits).

Klauzule GPL o braku jakichkolwiek gwarancji zostały dodane bezpośrednio do pliku, ponieważ jest to właściwe dla nich miejsce.

Ale Linus Torvalds dołączył się do dyskusji, mówiąc:

To jest ewidentna nadmiarowość. One _NIE_ powinny były się tam znaleźć.

Jeżeli potrzebujesz prawnych deklaracji itp., to umieszczaj je w plikach, których jesteś 100% właścicielem, a nie do tych, którymi opiekują się inne osoby. Albo dodaj je na końcu pliku, gdzie nie są zbytnio widoczne. Możesz też dodać formułkę: ,,przeczytaj licencję GPL w pliku COPYING'' ale nie dodawaj ton śmieci do ważnych plików jądra.

Nie ma korzyści z bycia prawnikiem w plikach .c.

Alan odpowiedział: "To mi pasuje. Po prostu użyłem standardowej procedury, lecz odnośnik do pliku COPYING jest także dobrym pomysłem." Linus stwierdził:

Dobrze. Nie znoszę sytuacji w których tak wielu ludzi sądzi, że dodanie 15-to linijkowej informacji o prawach autorskich do pliku uczyni ten plik ,,bardziej poprawnym''. Jedyne, co to zmienia, to fakt nadania prawnikom poszczególnych korporacji ,,punktu zaczepienia'' oraz wyeksponowania tego w ,,cennym'' miejscu zaraz po otwarciu pliku, zamiast informacji o przeznaczeniu źródeł (oraz informacji o autorach/twórcach/opiekunach).

Trochę off-topic, ale ciągle o tym samym: Nie znoszę również ton historii zmian które już nie mają związku ze źródłami (ponieważ zmiany już je _zastąpiły_, heh!). Listy zmian w źródłach są użyteczne jako źródło informacji o tym, kto pracował nad kodem, lecz wydaje się, że niektórzy ludzie zaczynają właśnie od nich na początku swej ,,Wielkiej Powieści''.

Mam nadzieję, że jedną z rzeczy do której przyczynił się BK jest mniejsze zaangażowanie w tworzenie historii zmian w plikach C i większy wkład w wyjaśnianie mi ich przeznaczenia w e-mailach, w których je dostaję. W jakim zakresie są one w formacie dzięki któremu możesz ujrzeć obraz ,,teraz i potem'', a nie mieć odczucie, iż ,,to wyglądało przedtem inaczej''? - no cóż, HMM!

Rik zasugerował dwulinijkowe opisy na początku każdego pliku źródłowego. Stwierdził też, że łatka je implementująca byłaby mile widziana, ale nie było odpowiedzi i wątek się zakończył.

5. Stan sterowników dla Bluetooth PC Card w 2.5

21 lip 2002 - 23 lip 2002 (8 posts) Archive Link: "[PATCH] Sterowniki PC Card dla podsystemu Bluetooth w 2.5.27"

Topics: Source Tree

People: Alan CoxDave Jones

Marcel Holtmann podesłał łatkę aktualizującą sterowniki PC Card dla podsystemu Bluetooth w jądrze 2.5.27. Ktoś zwrócił uwagę, że Marcel użył EXPORT_NO_SYMBOLS, co jest niewskazane w jądrach 2.5. Alan Cox odpowiedział: "W 2.4 chcesz tego używać gdzie tylko możliwe, a plik nie eksportuje żadnych symboli. W 2.5 EXPORT_NO_SYMBOLS jest automatycznie domyślnym zachowaniem, więc możesz usunąć tę linijkę." Marcel podesłał zauktualizowaną łatkę, a Ingo Molnar zapytał dlaczego usunięcie tego było tak ważne. Pierwsza osoba, która odpowiedziała Marcelowi napisała, że ponieważ stało się to teraz standardem, wszystkie nadmiarowe wystąpienia powinny w pewnym momencie zostać usunięte. Ale Dave Jones odpowiedział: "Całkowite usunięcie tych elementów oznacza, że opiekunowie sterowników będą musieli trzymać oddzielne wersje swoich sterowników dla 2.4/2.6. Dodatkowe EXPORT_NO_SYMBOLS jest nieszkodliwe i dopuszcza jedno źródło oraz wersje sterownika dla wielu jąder." Koniec wątku.

6. Ostrzeżenie: Poważny problem z obsługą IDE w 2.5

22 lip 2002 - 24 lip 2002 (35 posts) Archive Link: "Proszę nie uruchamiać 2.5.27 z IDE!"

Topics: Disks

People: Andries BrouwerBartlomiej ZolnierkiewiczMarcin Dalecki

Bartłomiej Żołnierkiewicz napisał, że kod IDE 99, wprowadzony w 2.5.27, zawiera błąd, który może prowadzić do blokad systemu oraz przekłamań danych. Poradził, by nie używać tego kodu. Andries Brouwer odpowiedział, nawiązując do wątku BROKEN KCREF: "Z drugiej strony, dzięki Jensowi, używam 2.5.27 z 2.4 IDE już od dwóch dni, bez żadnych problemów dotyczących IDE."

Brad Littlejohn wskazał, że w liście zmian jądra 2.5.17 było odniesienie do łatki IDE 99 oraz IDE 100, co sugeruje, że łatka IDE 100 zastąpiła łatkę IDE 99. Ktoś inny przypomniał Bradowi, że błąd wprowadzony w 99 mógł nie zostać naprawiony w 100. Bartłomiej potwierdził, że to nie zostało naprawione, dodając: "IDE 100 jest zwykłym uporządkowaniem kodu + inicjalizatory itp."

Gdzie indziej, Morten Helgesen poprosił o wytłumaczenie, co jest właściwie nie tak z kodem. Marcin Dalecki, kilka listów później, odpowiedział: "Problem ma dosyć ogólną naturę. Wiele z urządzeń blokowych *potrzebuje* mechanizmu do asynchronicznego wykonywania poleceń. Preferowaną metodą jest użycie dostępnej kolejki zapytań. Jednakże warstwa obsługi standardowej kolejki nie dostarcza właściwie żadnego mechanizmu do dołączania zapytań ze sterownika i nie zachowuje się zbyt dobrze w granicznych przypadkach, gdy kolejka jest prawie pełna." Wysłał tymczasową poprawkę, dodając, że właściwa poprawka zostanie stworzona na podstawie zmian w kodzie SCSI lub za pomocą unifikacji tych dwu warstw. Bartłomiej w tym momencie powiedział, że ,,szybka poprawka'' Marcina jest niczym innym, jak przywróceniem domyślnego zachowania sprzed wprowadzenia IDE 99 i oskarżył Marcina o ukrywanie faktów. Powiedział: " To Ty WPROWADZIŁEŚ błąd i teraz próbujesz wmówić wszystkim, że to już wcześniej było popsute. Przed 2.5.27 kod miał tę samą funkcjonalność co wersja scsi. Tak, będzie użytecznym przeniesienie tego do warstwy blokowej." Marcin zaprotestował przeciw takiemu przedstawieniu sprawy, mówiąc: "Oczywiście, że to był mój błąd. Patrzyłem w złym kierunku. Patrzyłem na kod ide-tcq, ponieważ nie lubię sytuacji, kiedy przekazujemy wskaźnik do struktury na dole lokalnego stosu. (To zapobiega zgubnej nadziei, na uczynienie tego wszystkiego asynchronicznym bez względu na położenie.) Rzeczywiście, na początku powinienem był przyjrzeć się kodowi SCSI." Tu wyczerpała się argumentacja i chłopaki przeszli do dyskusji nad różnymi szczegółami implementacji.

7. Nowa bramka między BitKeeperem, a CVS-em

24 lip 2002 (1 post) Archive Link: "OGŁOSZENIE: bramka między bitkeeperem a CVS-em"

Topics: Source Control

People: Pavel Machek

Pavel Machek ogłosił:

Przygotowałem skrypty, które mogą być użyteczne jako bramka między bitkeeperem a cvs-em. Używam ich obecnie na nl.linux.org (jak to możecie zobaczyć, przyglądając się bliżej). Jeszcze nie ustaliłem jak pokazywać światu uzyskane w ten sposób repozytorium CVS.

[Skrypty są w CVS-ie pod adresem: www.sf.net/projects/linux25.]

Mam nadzieję, że się komuś przydadzą...

Nie było odpowiedzi.

 

 

 

 

 

 

Sharon And Joy
 

Kernel Traffic is grateful to be developed on a computer donated by Professor Greg Benson and Professor Allan Cruse in the Department of Computer Science at the University of San Francisco. This is the same department that invented FlashMob Computing. Kernel Traffic is hosted by the generous folks at kernel.org. All pages on this site are copyright their original authors, and distributed under the terms of the GNU General Public License version 2.0.

Mirror provided by HKMirror. Sponsored by Porno Verzameling and webcamsex