Messages in this thread | | | Subject | Re: [PATCH v10 01/17] iova: Export alloc_iova_fast() and free_iova_fast() | From | Jason Wang <> | Date | Thu, 5 Aug 2021 21:31:43 +0800 |
| |
在 2021/8/5 下午8:34, Yongji Xie 写道: >> My main point, though, is that if you've already got something else >> keeping track of the actual addresses, then the way you're using an >> iova_domain appears to be something you could do with a trivial bitmap >> allocator. That's why I don't buy the efficiency argument. The main >> design points of the IOVA allocator are to manage large address spaces >> while trying to maximise spatial locality to minimise the underlying >> pagetable usage, and allocating with a flexible limit to support >> multiple devices with different addressing capabilities in the same >> address space. If none of those aspects are relevant to the use-case - >> which AFAICS appears to be true here - then as a general-purpose >> resource allocator it's rubbish and has an unreasonably massive memory >> overhead and there are many, many better choices. >> > OK, I get your point. Actually we used the genpool allocator in the > early version. Maybe we can fall back to using it.
I think maybe you can share some perf numbers to see how much alloc_iova_fast() can help.
Thanks
>
| |