Witam,
Po wczorajszym dist-upgrade, mój laptopowy Lenny zyskał nowy kernel w
wersji:
Linux horus 2.6.24-1-686 #1 SMP Mon Feb 11 14:37:45 UTC 2008 i686
GNU/Linux. I tu zaczęły się problemy ;)
Komputer z którego korzystam to Lenovo 3000 N100 (0768-31G), wyposażony
w kartę WiFi Broadcom 4312 (wg. lspci: 03:00.0 Network controller:
Broadcom Corporation BCM4312 802.11a/b/g (rev 01)). Pomimo wielu prób
nie udało mi się zmusić do pracy modułu bcm43xx, korzystałem więc z
ndiswrapper'a z wyciągniętymi z windowsa driverami. Wszystko było ok -
do wczoraj.
Po przeładowaniu systemu, start dość mocno przedłużył się (komp jakby
lekko przywieszał się, start wstrzymywał, po czym kontynuował bez błędów
jakby nigdy nic...), a po zalogowaniu pojawiały się błędy zwracane przez
b43-phy0 o braku odpowiedniego firmware.
Zainstalowałem aptem b43-fwcutter, ten zaś pobrał firmware. Network
manager (lub iwlist scan) pokazywał dostępne sieci WiFi, jednak pomimo
licznych prób nie udawało się w żaden sposób uzyskać połączenia - nie
działała również dioda led na obudowie laptopa. Jako że nie narzekam na
nadmiar czasu, postanowiłem wrócić do sprawdzonego ndiswrapper'a.
Dorzuciłem do /etc/modprobe.d/blacklist moduł b43 (po tym zabiegu
szybkość startu kompa wróciła do normy), wyrzuciłem go rmmodem, pobrałem
ndiswrapper-source, potraktowałem go module-assistantem,
przeinstalowałem sterownik - bez efektu. Zwróciłem jednak uwagę na
informację z ndiswrapper -l
bcmwl5 : driver installed
device (14E4:4312) present (alternate driver: ssb)
Usunąłem więc rmmod'em ssb, ndiswrapper po czym ponownie załadowałem
ndiswrapper.
Podziałało, dioda zamigotała - net ruszył. Dopisałem więc do blacklisty
moduł ssb.
Po restarcie ndiswrapper ponownie nie działał, a ssb był w pamięci.
Ponownie krótka zabawa rmmod'em i net ruszył.
I tu po przydługim wstępie właściwe pytanie ;) - Jak zablokować ssb
przed ładowaniem przy starcie? /etc/modprobe.d/blacklist jak widać nie
działa, pomimo iż dopisałem go przed b43 i po :) Sprawe rozwiązałem dość
brutalnie i prowizorycznie dopisując do /etc/rc.local
rmmod ssb
modprobe ndiswrapper
Ale takie rozwiązanie zdecydowanie mi się nie podoba. Jak inaczej go
ugryźć? Czy ssb jest jakimś kluczowym modułem? Skoro mimo blacklist jest
ładowany? Dodam iż po załadowaniu ndiswrappera mogę spokojnie wykonać
modprobe ssb i nie powoduje to żadnych konfliktów. Google zadowalających
odpowiedzi mi nie znalazł :/