On Wed, Feb 13, 2019 at 02:47:44PM +0000, Wei Yang wrote: > On Tue, Feb 12, 2019 at 05:51:29AM -0800, Matthew Wilcox wrote: > >That is _fine_. As you know I hope to get rid of the radix tree soon ;-) > > You mean replace radix tree in whole kernel? That would be a big effort. Already mostly done. http://git.infradead.org/users/willy/linux-dax.git/shortlog/refs/heads/xarray-conv The only remaining user of the radix tree in that tree is the IDR. So now I'm converting the IDR users over to the XArray as well. But that isn't what I was talking about. At the moment, the radix tree and the XArray use the same data structure. It has good best-case performance, but shockingly bad worst-case performance. So we're looking at replacing the data structure, which won't require changing any of the users (maybe the page cache ... that has some pretty intimate knowledge of exactly how the radix tree works). > BTW, have we compared the performance difference? It's in the noise. Sometimes the XArray does a little better because the APIs encourage the user to do things in a more efficient way. Some of the users are improved just because the original author didn't know about a more efficient way of doing what they wanted to do.