dma_alloc_coherent fragmentation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Forwarding on behalf of Nishanth Menon:

-----Original Message-----
From: Menon, Nishanth 
Sent: Tuesday, March 17, 2009 8:17 AM
To: 'linux-arm-kernel@xxxxxxxxxxxxxxxxxxxxxx'
Cc: Gupta, Ramesh; Kevin Hilman; linux-omap@xxxxxxxxxxxxxxx; Ramirez Luna, Omar; Kanigeri, Hari; Ameya Palande; Guzman Lugo, Fernando; Ameya Palande
Subject: dma_alloc_coherent fragmentation

Looping in linux-arm ML:

Discussion Ref: [1](linux-omap mailing list)
While working with Linux OMAP kernel[2] we found that on allocating 4 meg chunks using dma_alloc_coherent and de-allocating with dma_free_coherent in a loop using a test driver[7], the memory is getting fragmented as shown by Ameya's observation [3] finally resulting in dump_stack due to lack of pages.

Searching through previous archives, found [4] which seem to imply that allocating chunks greater than 1 page could cause fragmentation.

I wonder why we see this even if we allocate and free the memory in sequence as in [5]. This seems to happen on 2.6.28 and 2.6.29 but not on the 2.6.27 based kernel[6].

Regards,
Nishanth Menon

Ref:
[1] http://marc.info/?t=123719779100002&r=1&w=2
[2] http://git.kernel.org/?p=linux/kernel/git/tmlind/linux-omap-2.6.git
[3] http://marc.info/?l=linux-omap&m=123722460022336&w=2
[4] http://lkml.indiana.edu/hypermail/linux/kernel/0706.0/0370.html 
[5] http://marc.info/?l=linux-omap&m=123719772811746&w=2
[6] http://git.omapzoom.com/?p=repo/omapkernel.git;
[7] http://marc.info/?l=linux-omap&m=123719772811746&q=p3 
��.n��������+%������w��{.n�����{�������ܨ}���Ơz�j:+v�����w����ޙ��&�)ߡ�a����z�ޗ���ݢj��w�f


[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux