Re: lug-bg: Note:modules without a GPL compatible licence cannot use GPLONLY_symbols
- Subject: Re: lug-bg: Note:modules without a GPL compatible licence cannot use GPLONLY_symbols
- From: whitefang@xxxxxx ( )
- Date: Thu, 15 Nov 2001 01:09:09 +0200
Mda
Za System.map si prav
Predi vreme imashe diskusia na tazi tema.
System.map __NE__ okazva nikakvo vlianie na symvolite eksportirani ot kernel-a
ili moduli.
Ne se kosi da si pravish eksperimenti s CONFIG_MOD_VERSIONS.
Shte se opitam tuk nakratko da poiasnia deistvieto mu.
Ako si compilirash kernel s CONFIG_MOD_VERSIONS
za vsi4ki exportirani simvoli shte bydat generirani t.n. VERSIONED symbols.
Naprimer:
register_chrdev_R44f5bc97
e VERSIONED imeto na exportnata f-iq register_chardev()
Dobavkata kym imeto e md5sum, koito se formira ot parametrite na
exportiraniq symbol. Ako naprimer funciata chardev priema kato edinstven
parametyr ukazatel kym struktura, koiato v dve razli4ni versii na kernel-a ima
definicii koito ne sa ekvivalentni syotvetno i VERSIONED imeto na
exportiranata f-iq register_chardev() shte e razli4no.( Vij po dolu ).
VERSIONED imeto e dobra garancia za tova, 4e niama da se opitvash da polzvash
exportirana funkcia koiato v deistvitelnost ne priema takiva paramemtri
kakvito si misli 4e triabva da izpolzva modula koito izvikva vyprosnata f-iq.
Izpolzvaneto na binary modul koito ne se insmod-va zaradi unresolved
VERSIONED symbols ne e e jelatelno. Osven ako si siguren 4e izpolzvaneto na
vyprosnite strukturi s promeneni definicii e __safe__.
Obi4aina praktika e ot definiciite na strukturite da ne se premahvat
"nenujnite" poleta, a
ako se dobaviat novi takiva te da sa v kraia na definiciata. Taka, 4e binary
modul compiliran da polzva struktura
struct X {
type field1
type field2
.......
type fieldn
}
moje spokoino da si raboti sys danni s tip
structX{
type field1
type field2
..............
type fieldn
type field_new_field;
type field_new_field2;
}
Ako kernel-a ti ne e kompiliran s CONFIG_MOD_VERSIONS se polzvat normalnite
imena na symbolite. Oba4e ako modul kompiliran za dadena versia niama da se
__insmod__ -ne za kernel s druga versia. ( V tvoia sl. NVidia drivera niama
da mojesh da go polzvash s linux-2.4.11 naprimer a shte triabva da si
namerish binary modul-a NVidia compiliran za 2.4.11 ).
On Wednesday 14 November 2001 14:30, you wrote:
> Takaaaa, pyrvo iskam da blagodarq za razsledvaneto koeto napravihte, i
> ponezhe nqmam mnogo vreme si pozvolqvam edin bulk reply ala Vladimir
> Dzhuvinov :) (ako narushavam nqkakvi patentni prava na posledniq molq da me
> izvini:PPP)
> Ta zna4i stana s CONFIG_MODVERSIONS is not set (e ne misleh 4e tuka e
> pri4inata 4esno) za ext3 patched kernela i loadva modula NVdriver (nego
> naro4no ne go prekompilirah za da vidq kakvo ste stane , ama kernela go
> loadva, np ako trea posle ste go precompile). Voila .... grafi4no uskorenie
> + ext3 ... (toku sto si metnah shapkata ot balkona, ste slqza po-kusno da
> si q vzema, mislq;)
>
> On Wednesday 14 November 2001 09:56, you wrote:
> > syobshtenie za greshka:
> > /lib/modules/2.4.10patched/kernel/drivers/video/NVdriver: unresolved
> > symbol
> > register_chrdev_R44f5bc97
> > w stock kernela:
> > c012fcf0 register_chrdev_R44f5bc97
> > w patched kernela:
> > c012fda0 register_chrdev_R670da2d5
> > t.e. toq modul se probwa da se linkne kym simwol kojto go ima w stock
> > ama go nqma w patched. Zashto taka nqmam ideq.
>
> nqmah nikakvo vreme da grep-vam, 10x za razsledvaneto again.
>
> > Malko nawlizame w teritoriq koqto ne mi e poznata, no wse pak :)
> > Neshtata koito mi hrumwat:
> > 1.imash li /boot/System.map-2.4.10patched ako nqmash, imash li
> > /boot/System.map ? pyrwiq ot tezi fajlowe kojto syshtestwuwa trqbwa da e
> > wzet ot root-a na dyrwo na kompiliraniq kernel image kojto runvash w
> > momenta. Towa ne mi e mnogo qsno dali ima otnoshenie po wyprosa, no wse
> > pak :)).
>
> maj ne :) dokolkoto znam System.map e za nqkoj kuci user-space programi
> (ex: "ps" ) kojto neznaqt kak da se zdobiqt s info za kernela i tyrsqt tozi
> file (kojto kernela lubezno im e predostavil, da ne govorim 4e kernela
> predostavq cqla fs /proc ......) na 3-4 mesta v krajna smetka i v source
> tree-to na kernela...
> Kernel-space (kernela+modules nezavisimo dali sa build-nati ot kernel
> sourceto ili sa ot vunshno source , kakto v slu4aq s NVdriver) ne zavisqt
> ot tozi file ... ako gresha popravete me.
> Mezhdu drugoto v momenta za eksperiment naro4no sym s stalled System.map ,
> ext3patched kernela (CONFIG_MODVERSIONS is not set) i / mi e ext3 (stoto
> mozhe i da e ext2) i NVdriver a loadnat -> All systems go ... dokolkoto
> usestam :)
> BTW ako polzvate kernel-package za debianizirane na kernela (specialno za
> debian) nqma kak da propusnete System.map ili kakvoto i da bilo ... no tova
> e druga tema i po zhelanie ... nqkoj obi4at vse pak da stoqt blizko do
> metala dokato toj se kove :)
>
> > 2. cd /lib/modules/2.4.10patched/; rm modules.*; depmod -a; # rebuild na
> > dependency-te na modulite
>
> kato modul imam samo NVdriver , a toj ot nisto ne zavisi , v smisyl da iska
> nesto da e zaredeno predi nego 4e toj posle i t.n.... np
>
> > 3. naprawi li razarhivirane na chisto predi da patchwash i
> > prekompilirash kernela i drivera?, ako ne naprawi go.
>
> Ne "make clean" ili "make-kpkg clean" e dostaty4no , source tree-to e
> staroto i posle patch-nato , patcha e prilozhen uspeshno, nisto ne e
> othvurleno ,tova ne okazva vliqnie.
>
> > probwaj tiq tri neshta, pyk da widim.
> >
> > BR,
> > Boyan
>
> On Wednesday 14 November 2001 09:51, you wrote:
> > Ext2
> > remove_proc_entry_R14aa9c33
> >
> > Ext3
> > remove_proc_entry_R60a97c9c
> >
> > NVidia
> > remove_proc_entry_R14aa9c33
> > .....
> > .....
>
> Blagodarq oceli ... :)
>
> > êîìïèëèðàé ñè êåðíåëà, ìîäóëèòå è NVidia äðàéâåðà áåç âåðñèÿ.
> > ###CONFIG_MODVERSIONS
>
> naro4no prekompilirah samo kernela za da vidq ko ste stane i stana ...
> Ama kak izvadi diagnozata sled kato razlikata mezhdu dvete kernel src e
> edin vunzhen patch, i se okazva 4e konflikta e v kernel symbols ... demek
> tova se qvqva druga versiq na sourceto ???
>
> > nm -u /lib/modules/2.4.12/kernel/video/NVidia
> > ...
> > òåçè ñà âúíøíè, òðÿáâà äà ãè îòêðèåø â /proc/ksyms
> >
> > Óñïåõ.
>
> Óñïÿõ !
> 10x
> P.S. ako sym propusnal nesto i e vazhno po-kysno ako trea ste otgovarqm ...
===========================================================================
A mail-list of Linux Users Group - Bulgaria (bulgarian linuxers)
http://www.linux-bulgaria.org/ Hosted by Internet Group Ltd. - Stara Zagora
|