Autor: Francois-Xavier 'FiX' KOWALSKI Datum: To: Jérôme UZEL CC: Guilde liste Betreff: Re: Fichier System.map
Jérôme UZEL <jerome.uzel@???> writes:
> Jérôme KIEFFER a écrit :
> >
> > Pourtant mon system.map est 5x plus gros que /proc/ksyms ...
> >
>
> En fait, ce n'est pas tout à fait la même chose que tu
> trouveras à ces deux endroits.
>
> System.map est surtout utile pour le débugage du noyau. Il contient
> les adresses et les noms des symboles du noyau et permet de tirer
> des infos d'un "oops". Ce n'est pas très grave de ne pas avoir ce
> fichier
L'interet est effectivement le debug. Et je ne suis pas d'accord avec
le "pas important en cas de Ooops": Ca m'arrive regulierement. Sans
le Oops, LKML est impuissante!
> mais bien sur en cas de crash, tu auras moins d'informations à
> reporter. J'avoue d'ailleurs ne pas voir d'utilité à avoir un
> System.map qui ne correspond pas à un noyau qui tourne - ou qui
> tourne de temps en temps. (mais je n'ai pas tout compris dans le
> mail de francois-wavier)
L'information sur la totalite des symboles n'etant disponible qu'avec
le vmlinux lors le la compil, ya pas le choix.
Les distributions livrent souvent une version "debug" de leur noyau,
qui inclue des informations en plus dans les structures sensibles
(inodes, locks) & un vmlinux. Le resultat est consultable avec gdb
dur /proc/kcore avec vmlinux comme executable (pas de breakpoint
autorise, bien sur...).
> En ce qui concerne ksym, il liste les seuls symboles dit exportés
> (EXPORT_SYMBOL* sous include/linux/module.h) pour l'édition de lien
> lors du chargement des modules. (Du coup, il comprend également les
> symboles exportés par des modules chargés; le nom du module est
> entre crochets)
>
> Voila, ca m'a permis d'apprendre 2-3 choses ;-)
>