2.6.38.4 -ck3 + bfs401

I’ve recently move from vanilla kernel to -ck kernel flavor.  What is -ck ? This is set of patches by Con Kolivas that improves desktop performance. By default -ck patches includes Brain Fuck Scheduler (bfs also by Con Kolivas); this scheduler is designed to improve system interactivity and responsiveness in small system, where “small” means less then 16 cpu’s/cores/threads.

Few days ago the new version of vanilla kernel (2.6.38.4) was released, two or three days before the new version of bfs (401) was also released. Unfortunately -ck patches didn’t get an update, so I’ve decided to play a little bit with it.

First of all I’ve spotted that -ck apples bfs as a first patch, so second step wast to find out where bfs patch ends … this was a really easy task. With this knowledge I could easily extract old version of bfs from -ck3. Then both patches can be contacted and applied on vanilla 2.6.38.4. First compilation shows that function above_background_load was removed from bfs401, fortunately it was used only once 😉

I’m using this kernel (2.6.38.4-ck3-bfs401) for two days without any problems so it seams that my combination of those patches doesn’t brake anything. If you want to try this on your own, here is 2.6.38.4-ck3-bfs401.patch

pommed-1.25 suspend on lid

Pommed jest deamon’em umożliwiającym korzytanie z mac’owych klawiszy funkcyjnych (tych od ściszania czy rozjaśniania ekranu lub też od manipulacji głośnością) obsługuje również wbudowane czujniki oraz zmianę intensywności podświetlenia klawiatury … oraz potrafi przyciemnić ekran kiedy się odłączy zasilanie … właśnie ta funkcjonalność wzbudziła moje zainteresowanie …

Dlaczego, skoro już obsługiwanie jest zdarzenie odłączenia od zasilania, nie obsługiwane jest zdarzenie zamknięcia klapki (tzw. LID). IMHO przejście w stan uśpienia było by najrozsądniejszym rozwiązaniem reakcji na zamknięcie przez użytkownika wieka laptopa.

Chwila grzebania w kodzie programu ujawniła, że takie rozwiązanie nie jest intuicyjne dla autora aplikacji, lub z jakiś powodów zostało odrzucone w procesie developmentu … domyślnie pommed w wersji 1.25 w reakcji na zamknięcie klapki … wyłączy podświetlenie klawiatury, oczywiście jeżeli takowe jest obecne w tam modelu mac’a. W przypadku kiedy nie posiadamy podświetlanej klawiatury zdarzenia LID są  ignorowane … szkoda bo można to wykorzystać w inny sposób.

Tutaj dostępny jest patch dodający możliwość konfiguracji zdarzenia LID. Domyślnie po opuszczeniu klapki zostanie wykonana komenda pm-suspend. W gruncie rzeczy może to być dowolna komenda która piszemy w pliku konfiguracyjnym … to chyba na tyle.

Ten sam patch wysłałem również do autora aplikacji … może poprawi moje błędy (bo w C nie pisałem już od wieków ;>) i jakoś dodatkowo rozwinie ta funkcjonalność.

Linux 2.6.26 i MacBook3.1

Parę dni temu ukazała się nowa wersja kernela Linux’a oznaczona numerkiem 2.6.26; dziś jest dostępny ebuild dla architektóry ~amd64. O najciekawszych zmianach można przeczytać tu (swoją droga polecam polskojęzyczny serwis heise Open Source ;))

Jeżeli chodzi zaś o współprace jądra Linux’a z MacBookiem3.1 (którego posiadam ;>) to z wydania na wydanie jest coraz lepiej. W 2.6.25 zaczął działać suspend, w obecnej wersji suspend dalej działa, dodatkowo nie jest już potrzebny zewnętrzny moduł linux-uvc, gdyż trafił on do głównej gałęzi jądra (właśnie dzięki temu modułowi oraz programowi isight-firmware-tool – do wycinania firmware z OS X’owych sterowników; działa wbudowana kamera iSight), również touchpad działa poprawnie (bez mactel patches).

Z brakujących rzeczy (dostępnych w mactel patches do wersji 2.6.25) mogę wymienić:

  • brak obsługi disk protect (oraz też pewnie czujników ruchu/położenia)
  • brak możliwości usunięcia debug’ujących komunikatów z applesmc oraz opcji retry

cóż, trzeba poczekać na mactel patches do 2.6.26

Jest jeszcze jedna rzecz której mi brakuje … otwartego sterownika oraz firmware (bo i takie powstaje) Board Corp. BC4328 … czyli karty wlan 😉

Trzeba czekać i uzbroić się w cierpliwość 😉