During page migrations UBIFS gets confused. We triggered this by using CMA on two different targets. It turned out that fallback_migrate_page() is not suitable for UBIFS as it does not copy the PagePrivate flag. Non-trivial block based filesystems do not notice since they can use buffer_migrate_page(). UBIFS is using this flag among with PageChecked to account free space. In order to address this issue implement a convenient ->migratepage() function for UBIFS and disable the automatic assignment of fallback_migrate_page(). Filesystems maintains should decide themselves whether they have to implement ->migratepage() or can use the generic function. Another interesting topic is testing ->migratepage(). So far the only reliable test to trigger the UBIFS issue we have is real hardware and CMA. I was able to trigger it a few times in KVM using the migrate_pages() system call. But not reliable at all. Thanks, //richard [PATCH 1/3] mm: Don't blindly assign fallback_migrate_page() [PATCH 2/3] mm: Export migrate_page_move_mapping and [PATCH 3/3] UBIFS: Implement ->migratepage() -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html