Re: [PATCH V5 2/6] mm: don't assume anonymous pages have SwapBacked flag
From: Michal Hocko <mhocko@kernel.org>
Date: 2017-02-27 16:43:43
Also in:
lkml
On Mon 27-02-17 08:10:24, Shaohua Li wrote:
On Mon, Feb 27, 2017 at 03:35:34PM +0100, Michal Hocko wrote:quoted
On Fri 24-02-17 13:31:45, Shaohua Li wrote:quoted
There are a few places the code assumes anonymous pages should have SwapBacked flag set. MADV_FREE pages are anonymous pages but we are going to add them to LRU_INACTIVE_FILE list and clear SwapBacked flag for them. The assumption doesn't hold any more, so fix them. Cc: Michal Hocko <mhocko@suse.com> Cc: Minchan Kim <minchan@kernel.org> Cc: Hugh Dickins <hughd@google.com> Cc: Rik van Riel <redacted> Cc: Mel Gorman <redacted> Cc: Andrew Morton <akpm@linux-foundation.org> Acked-by: Johannes Weiner <hannes@cmpxchg.org> Signed-off-by: Shaohua Li <redacted>
Anyway, feel free to add Acked-by: Michal Hocko <mhocko@suse.com>
quoted
Looks good to me. [...]quoted
index 96eb85c..c621088 100644--- a/mm/rmap.c +++ b/mm/rmap.c@@ -1416,7 +1416,8 @@ static int try_to_unmap_one(struct page *page, struct vm_area_struct *vma, * Store the swap location in the pte. * See handle_pte_fault() ... */ - VM_BUG_ON_PAGE(!PageSwapCache(page), page); + VM_BUG_ON_PAGE(!PageSwapCache(page) && PageSwapBacked(page), + page);just this part makes me scratch my head. I really do not understand what kind of problem it tries to prevent from, maybe I am missing something obvoious...Just check a page which isn't lazyfree but wrongly enters here without swap entry. Or maybe you suggest we delete this statement?
Ohh, I figured out when seeing later patch in the series, I then wanted to get back to this one but forgot... This on its own didn't really tell me much. Maybe a comment would be helpful or even drop the VM_BUG_ON altogether. -- Michal Hocko SUSE Labs -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>