ChangeBlog  •  Archiwum  •  Kategorie  •  Artykuły  •  Galeria  •  Czytelnicy  •  Rupieciarnia
RSS wpisów  |  RSS komentarzy
Tresowane hardlinki i żyletki w ustach

Lada dzień muszę się wziąć za dokumentowanie Hiero. Zbudowałem sobie nim już chyba kilkanaście pakietów, w tym takie "drobiazgi" jak gcc czy glibc. Skrypt instalujący działa już zadowalająco, miałem okazję popatrzeć parukrotnie jak sobie radzi z instalowaniem glibc, uruchamianiem skryptów okołoinstalacyjnych, usuwaniem osieroconych plików itp. Zacząłem wyłączać niektóre "prośby o potwierdzenie", bo uznałem je za godne zaufania.

Budując glibc natknąłem się na bardzo kłopotliwego buga dotyczącego hardlinków. Jeśli miałem np. pięć hardlinków wskazujących na jeden inode, a używając sekcji [ban] wyłączyłem jeden z tych plików, to w paczce lądowały czasem cztery hardlinki wskazujące właśnie na ten piąty, wyłączony i nieobecny. O dziwo, nie było to zbyt destruktywne (prawdę mówiąc paczka się rozpakowywała zupełnie normalnie), ale nie dawało mi to spokoju. No i pojawiały się warningi przy instalowaniu paczki. Więc spędziłem pół godziny na analizowaniu mojego kodu oraz kodu tarfile.py. Zrozumiałem problem i zacząłem modyfikować swój kod, tworząc dosyć złożoną klamrę warunkową rozciągającą się na spory kawałek kodu. Gdy ją skończyłem zauważyłem możliwość optymalizacji. Spodobało mi się to, więc zauważyłem jeszcze raz ;) Okazało się, że zamiast marnować pięć minut na stukanie tej cholernej klamry mogłem po prostu wyjać z różnych kawałków kodu pięć wierszy, zredukować je do jednego i umieścić u szczytu pewnej funkcji. Ironia losu. Więc zrobiłem tak, po czym okazało się że tylko pogorszyłem sprawę. Teraz bowiem hardlinki generowane były bardzo fantazyjnie, mianowicie pierwszy w paczce wskazywał na samego siebie (takie tam zawiłości formatu tar), a pozostałe hardlinki wskazywały na niego. Odniosłem nieodparte wrażenie, że te małe hardlinki świetnie się bawią przy tym "spychaniu odpowiedzialności". W tym momencie byłem już pewien, że jeśli będę dalej modyfikował kod to szybko uzyskam hardlinki tworzące struktury pierścieniowe albo wskazujące na nieistniejące inody. Więc zacząłem dogłębnie analizować wszystko, po raz kolejny. I wtedy mnie olśniło. Prawidłowe rozwiązanie sprowadzało się w sumie do odkręcenia wszystkich zmian jakie porobiłem próbując "naprawić" całość i przesunięciu jednego wiersza o parę pozycji w górę. Oczywiście rozwaliłem przy okazji parsowanie sekcji [ban], ale to zauważyłem parę zbudowanych pakietów później; na szczęście poprawka była trywialna.

Powprowadzałem w Hiero dużo zmian, poprawek itp. Nie będę tego opisywał, to wszystko wyjdzie gdy zacznę pisać dokumentację. Wtedy też zrzucę tę nową wersję. Bo bez dokumentacji jest nieprzydatny.

Nabawiłem się jakiejś alergii. Wczoraj niespodziewanie na szyi pojawiły mi się czerwone plamy wyglądające do złudzenia jak ugryzienia komarów, by równie niespodziewanie zniknąć po pięciu minutach. Od paru dni mnie już to dręczy. Po chwili namysłu padło na pomidory, które akurat od paru dni zjadałem sobie na śniadanie/kolację. Nigdy nie miałem alergii na pomidory, ale to zdradliwe bestyjki są, więc nigdy nic nie wiadomo... A poza tym to były marketowe pomidory, diabli wiedzą czym naszprycowane. Więc odstawiłem pomidory, zobaczę czy mi się "polepszy".

Parę dni temu miałem koszmarne przeżycie przy zasypianiu. Zaplątałem się gdzieś w tej fazie pomiędzy jawą a snem i ubzdurałem sobie, że mam usta pełne żyletek. Normalnych, ostrych żyletek. I że powoli wbijają mi się w podniebienie, niektóre żyletki wyginają się i pękają, a inne po prostu rozcinają mi wszystko w ustach. Do tego to okropne uczucie rozsuwających się krawędzi rany... nie ból, raczej nienaturalne, nieznośne uczucie że fragmenty podniebienia, rozcięte aż do kości, się rozchodzą na boki, a metal żyletek je momentami rozsuwa jeszcze bardziej, jak cienki, blaszany łom. Chryste, co za okropne uczucie. Nawet teraz gdy sobie to przypomnę robi mi się zimno.W końcu miałem tego dosyć i zdecydowanym ruchem zamknąłem usta. Nawet nie będę próbował opisywać tego co wtedy poczułem, ale była to chyba jedna z najgorszych mieszanek strachu i bólu jakie mój mózg umie sobie ubzdurać. W każdym razie z łatwością mnie wybudziła, bo o to w końcu mi chodziło. Potrzebowałem chyba paru sekund zanim doszedłem do siebie. Oddychałem bardzo szybko i miałem bardzo sucho w ustach, chyba podświadomie miałem je cały czas otwarte, żeby nie naciskać na żyletki. Z ulgą przytuliłem język do podniebienia (żeby nie zostawić fizycznej przestrzeni fantazjom o kolejnych żyletkach) i po chwili zasnąłem, tym razem już normalnie. A w nocy miałem bardzo przyjemne, odprężające sny.
Czasem zdarza mi się przy zasypianiu albo przy budzeniu się wpaść w ten urokliwy stan półsnu, gdy wrażenia odbierane w tym świecie płynnie mieszają się z tymi wyśnionymi. Ale jeszcze nigdy nie spotkało mnie nic tak okropnego. Brr.

Aaaa, wiosna! Śliczną pogodę miałem przez ostatnie trzy dni, tak pomiędzy 16 a 20°C. Z szafy wyszły moje zamszowe pantofle, na grzbiet zarzuciłem lekką zamszową (i strasznie zużytą, ale bardzo ukochaną) kurtkę. Taaa... Wiosna :) Sroki chyba szykują się do godów, albo po prostu też się cieszą z ocieplenia... no bo jak wytłumaczyć czwórkę srok skaczących sobie gęsiego(!) po chodniku? I to na dodatek po torze z grubsza sinusoidalnym? Ech, w Zagłębiu Kabaretowym nawet zwierzęta są nienormalne ;)

Pozostaw dopisek: