I think you are talking about the issue when there are a lot of reservations and
unreservations of big buffer and the memory is getting fragmented and it is not
possible to allocate more big buffers.
if so, I don't think it is a bug. The thing is because of the algorithm used for
reserve memory is optimized to satisfy the memory requested as soon as possible,
so this algorithm is good where there are too much reservation of memory and
for small buffers, because the algorithm get rid of big free chucks of memory
soon.
so that issue, can be fixed just chaning the algorithm without changing the array implementation
in dmm.c.
with iommu migration patches, hopefully next week.
Regards,
Fernando.
--