On Thu, Feb 21, 2013 at 12:25:40AM -0800, Hugh Dickins wrote: > Before establishing that KSM page migration was the cause of my > WARN_ON_ONCE(page_mapped(page))s, I suspected that they came from the > lack of a ksm_might_need_to_copy() in swapoff's unuse_pte() - which > in many respects is equivalent to faulting in a page. > > In fact I've never caught that as the cause: but in theory it does > at least need the KSM_RUN_UNMERGE check in ksm_might_need_to_copy(), > to avoid bringing a KSM page back in when it's not supposed to be. Maybe I am mistaken, maybe it was just too obvious to you to mention, but the main reason for me would be that this can break eviction, migration, etc. of that page when there is no rmap_item representing the vma->anon_vma (the cross-anon_vma merge case), no? > I intended to copy how it's done in do_swap_page(), but have a strong > aversion to how "swapcache" ends up being used there: rework it with > "page != swapcache". > > Signed-off-by: Hugh Dickins <hughd@xxxxxxxxxx> Acked-by: Johannes Weiner <hannes@xxxxxxxxxxx> -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>