The patch titled Subject: ipc/ipc_sysctl.c:put_pages_list(): reinitialise the page list has been added to the -mm tree. Its filename is hitting-bug_on-trap-in-read_pages-mm-optimise-put_pages_list.patch This patch should soon appear at https://ozlabs.org/~akpm/mmots/broken-out/hitting-bug_on-trap-in-read_pages-mm-optimise-put_pages_list.patch and later at https://ozlabs.org/~akpm/mmotm/broken-out/hitting-bug_on-trap-in-read_pages-mm-optimise-put_pages_list.patch Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next and is updated there every 3-4 working days ------------------------------------------------------ From: Matthew Wilcox <willy@xxxxxxxxxxxxx> Subject: ipc/ipc_sysctl.c:put_pages_list(): reinitialise the page list While free_unref_page_list() puts pages onto the CPU local LRU list, it does not remove them from the list they were passed in on. That makes the list_head appear to be non-empty, and would lead to various corruption problems if we didn't have an assertion that the list was empty. Reinitialise the list after calling free_unref_page_list() to avoid this problem. Link: https://lkml.kernel.org/r/YYp40A2lNrxaZji8@xxxxxxxxxxxxxxxxxxxx Fixes: 988c69f1bc23 ("mm: optimise put_pages_list()") Signed-off-by: Matthew Wilcox (Oracle) <willy@xxxxxxxxxxxxx> Reported-by: Namjae Jeon <linkinjeon@xxxxxxxxxx> Tested-by: Namjae Jeon <linkinjeon@xxxxxxxxxx> Cc: Steve French <smfrench@xxxxxxxxx> Cc: Hyeoncheol Lee <hyc.lee@xxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- mm/swap.c | 1 + 1 file changed, 1 insertion(+) --- a/mm/swap.c~hitting-bug_on-trap-in-read_pages-mm-optimise-put_pages_list +++ a/mm/swap.c @@ -155,6 +155,7 @@ void put_pages_list(struct list_head *pa } free_unref_page_list(pages); + INIT_LIST_HEAD(pages); } EXPORT_SYMBOL(put_pages_list); _ Patches currently in -mm which might be from willy@xxxxxxxxxxxxx are mm-move-kvmalloc-related-functions-to-slabh.patch kasan-fix-tag-for-large-allocations-when-using-config_slab.patch mm-remove-bogus-vm_bug_on.patch mm-optimise-put_pages_list.patch hitting-bug_on-trap-in-read_pages-mm-optimise-put_pages_list.patch