[kmalloc] ... ne veut pas m'allouer plus de 128 ko ???

... ne veut pas m'allouer plus de 128 ko ??? [kmalloc] - C - Programmation

Marsh Posté le 14-01-2005 à 15:40:30    

Bonjour à tous. je suis en train de faire un module linux gérant une caméra usb. Pour cela, je prévois de faire passer l'image par appel de ma propre ioctl.
 
Mon souci est pour l'instant que j'aimerai allouer dans le module, une image suffisamment grande (1024*1024) ... sauf que le kmalloc renvoit NULL à partir d'une alloc de plus de 128ko (131072 octets) ...
 
... meuuu est-ce que ca veut dire que je dois forcément gérer des packets entre mon appli user et le kernel pour transférer des images de cette taille ???*
 
 
Merci d'avance à vous !


Message édité par allawos le 14-01-2005 à 15:40:46
Reply

Marsh Posté le 14-01-2005 à 15:40:30   

Reply

Marsh Posté le 14-01-2005 à 16:26:48    

30 secondes dans google  
Extrait du manuel :
"...  kmalloc ne peut allouer plus de 128ko de mémoire. Si vous ne désirez pas une zone mémoire physiquement contigue (elle le sera au niveau des adresses virtuelles => utilisation du cache moins optimale), utilisez vmalloc() / vfree().  ..."

Reply

Marsh Posté le 14-01-2005 à 17:04:12    

bah oui faut lire la doc  :)  
 
 
l'implémentation de kmalloc vise les performances avant tout (ie le cache).

Reply

Marsh Posté le 14-01-2005 à 17:07:23    

merci ! (et désolé!)


Message édité par allawos le 14-01-2005 à 17:08:59
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed