On Thu, May 31, 2018 at 03:37:42PM -0600, Ross Zwisler wrote: > Never mind, just saw your mail from a few weeks ago. :-/ I'll retest on my > end. Don't strain too hard; I found (and fixed) some bugs in the DAX conversion. I keep finding new bugs though -- the latest was that xas_store(xas, NULL); doesn't work properly if xas is multiindex and some of the covered entries are not NULL. And in fixing that, I noticed that xas_store(xas, not-null) doesn't handle tagged entries correctly. I'd offer to push out the current version for testing but I've pulled everything apart and nothing works right now ;-) I always think "it'll be ready tomorrow", but I don't want to make a promise I can't keep. Here's my current changelog (may have forgotten a few things; need to compare a diff once I've put together a decent patch series) - Reordered two DAX bugfixes to the head of the queue to allow them to be merged independently. - Converted apparmor secid to IDR - Fixed bug in page cache lookup conversion which could lead to returning pages which had been released from the page cache. - Fixed several bugs in DAX conversion - Re-added conversion of dax_layout_busy_page - At Ross's request, renamed dax_mk_foo() to dax_make_foo(). - Split out the radix tree test suite addition of ubsan. - Split out radix tree code deletion. - Removed __radix_tree_create from the public API - Fixed up a couple of comments in DAX - Renamed shmem_xa_replace() to shmem_replace_entry() * Undid change of xas_load() behaviour with multislot xa_state - Added xas_store_for_each() and use it in DAX - Corrected some typos in the XArray kerneldoc. - Fixed multi-index xas_store(xas, NULL) - Fixed tag handling in multi-index xas_store(xas, not-null)