On 2010-10-19 12.22, Gilles Chanteperdrix wrote:
> Daniel Jacques (Alten) wrote:
>> Hi,
>>
>> I noticed some allocation failure using kmalloc in case of GFP_DMA32 with 
>> big size, even if I modified the CONFIG_FORCE_MAX_ZONEORDER to be coherent 
>> with my max size (32MB).
>> I don't know the reason of this failure. I am interesting by any idea about 
>> this point ...
>> Meanwhile, to avoid this trouble I performed the following additional patch 
>> in ksrc/nucleus/heap.c to force using of __get_free_pages instead of kmalloc 
>> in case of GFP_DMA32 flag.
>> Jacques
> 
> At this point, the problem seems to be in linux code. So, there should
> be no need to modify xenomai code. Are you sure that kmalloc does not
> fail due to fragmentation?
I have some vague recollection that dmaable allocations larger than 2MB should
be done by pci_alloc_consistent and similar (see Documentation/DMA-mapping.txt
or Documentation/DMA-API-HOWTO.txt in newer kernels)

/Anders

-- 
Anders Blomdell                  Email: [email protected]
Department of Automatic Control
Lund University                  Phone:    +46 46 222 4625
P.O. Box 118                     Fax:      +46 46 138118
SE-221 00 Lund, Sweden

_______________________________________________
Xenomai-help mailing list
[email protected]
https://mail.gna.org/listinfo/xenomai-help

Reply via email to