saq: SPECS kernel.spec SOURCES kernel-ltmodem.patch

Paweł Sakowski pawel w sakowski.eu.org
Nie, 22 Paź 2000, 22:57:13 CEST


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

> > Niestety, program jest binary-only. Inaczej sie nie da.
> 
> Nie można napisać do autorów żeby to poprawili ?

Są raczej anonimowi (pytałem na liście linmodems, nikt się nie przyznał
do znajomości ich namiarów).

Może wyjaśnię bliżej, skąd się wzięło rozwiązanie "kernelowe" ltmodemu.
ltmodem jest modułem do jądra udostępniającym urządzenie /dev/ttyS14 do
obsługi modemów na układach Lucent. Został skompilowany na 2.2.12 (jeśli
dobrze pamiętam). Natomiast w 2.2.15 do struktury tty_struct (z
<linux/tty.h>) zostały wprowadzone dwa nowe pola, m.in. poll_wait, który
został umieszczony w środku struktury. I teraz jest problem, bo
wszystkie pola za tą połową zmieniły swój adres (+4), a ltmodem odwołuje
się to nich według starego adresu. Patch, który umieściłem po prostu
przesuwa to pole na koniec struktury, przez co wszystkie odwołania
pozostają prawidłowe.

W zasadzie skłamałem: _jest_ inne rozwiązanie -- wystarczy zdeasemblować
ltmodem.o, znaleźć tam odwołania do zmiennych typu tty_struct* (typ
zmiennej określając na intuicję) i zmieniając adresy odpowiednich pól o
+4. Są jacyś masochiści? ;-)

Zgadzam się, że do jądra dystrybucyjnego należy wstawiać jak najmniej
zmian, ale uznałem, że na tą można sobie pozwolić -- rozwiązuje jeden
problem, a praktycznie nie sprawia innych; Jedyne, co może zepsuć, to
funkcjonalność jakiegoś innego modułu binary-only odwołującego się do
tty_struct. Więc może jednak można dodać kernel-ltmodem.patch?

-- 
	Paweł Sakowski <pawel w sakowski.eu.org>
	PGP ID: 0xA95391BD
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.3 (GNU/Linux)
Comment: Weitere Infos: siehe http://www.gnupg.org
Filter: gpg4pine 4.2 (http://azzie.robotics.net)

iD8DBQE581S4NJmavqlTkb0RAmTCAJ0a42N0A4Nff0O0RW/y1CF3xxz2UwCg1X/x
NyIhYY9MaMC+pxm08EJpy/I=
=eeIR
-----END PGP SIGNATURE-----



Więcej informacji o liście dyskusyjnej pld-devel-pl