[SOS] Problème decompréhension

d2 david.decotigny at free.fr
Sam 18 Déc 20:57:37 CET 2004


Bonsoir,

Je reponds au pdf envoye par Cyril il y a... plus d'un mois.

Question 1 : de-referencement des pages de first_slab_of_caches = elles 
sont demappees ?
Reponse : non, elles restent mappees. Voir la fin de la section 3.5 de 
l'article 4.

La suite : le code est bien resume, je pense que le fonctionnement est 
bien compris. Tu bloques sur le meme probleme que ci-dessus. Et tu te 
permets d'insister la-dessus en conclusion. Je me permets d'insister sur 
la fin de la section 3.5 de l'article 4 ;)

Concernant la difference OFF_SLAB/ON_SLAB... comment on decide ? C'est 
surtout affaire de "gout" (on aurait pu rendre la decision automatique 
sur la base d'un ratio de gaspillage maximal mais on ne l'a pas fait 
pour elleger un peu le code). Un truc tout bete : si on veut un cache 
d'objets de 4k, il serait idiot d'allouer les struct sos_kslab en 
ON_SLAB, parce que ca prendrait 4k+qqs octets, avec qqs octets < 4ko. 
Autrement dit, on perdrait beaucoup de memoire parce qu'on ne peut 
allouer que par page de 4k. Dans ce cas, mieux vaut allouer les struct 
sos_kslab dans un cache a part, prevu a cet effet (=> OFF_SLAB). 
Inversement, si on veut des caches d'objets de 42 octets, ca peut etre 
interessant de stocker les struct sos_kslab en ON_SLAB, car ca ne mange 
pas trop d'objets qui auraient pu etre alloues a la place des struct 
sos_kslab.

Bonne soiree,

--
d2, du 91


Plus d'informations sur la liste de diffusion Sos