Yang Shi 504e070dc0 mm: thp: replace DEBUG_VM BUG with VM_WARN when unmap fails for split
When debugging the bug reported by Wang Yugui [1], try_to_unmap() may
fail, but the first VM_BUG_ON_PAGE() just checks page_mapcount() however
it may miss the failure when head page is unmapped but other subpage is
mapped.  Then the second DEBUG_VM BUG() that check total mapcount would
catch it.  This may incur some confusion.

As this is not a fatal issue, so consolidate the two DEBUG_VM checks
into one VM_WARN_ON_ONCE_PAGE().

[1] https://lore.kernel.org/linux-mm/20210412180659.B9E3.409509F4@e16-tech.com/

Link: https://lkml.kernel.org/r/d0f0db68-98b8-ebfb-16dc-f29df24cf012@google.com
Signed-off-by: Yang Shi <shy828301@gmail.com>
Reviewed-by: Zi Yan <ziy@nvidia.com>
Acked-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
Signed-off-by: Hugh Dickins <hughd@google.com>
Cc: Alistair Popple <apopple@nvidia.com>
Cc: Jan Kara <jack@suse.cz>
Cc: Jue Wang <juew@google.com>
Cc: "Matthew Wilcox (Oracle)" <willy@infradead.org>
Cc: Miaohe Lin <linmiaohe@huawei.com>
Cc: Minchan Kim <minchan@kernel.org>
Cc: Naoya Horiguchi <naoya.horiguchi@nec.com>
Cc: Oscar Salvador <osalvador@suse.de>
Cc: Peter Xu <peterx@redhat.com>
Cc: Ralph Campbell <rcampbell@nvidia.com>
Cc: Shakeel Butt <shakeelb@google.com>
Cc: Wang Yugui <wangyugui@e16-tech.com>
Cc: <stable@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2021-06-16 09:24:42 -07:00
..
2021-06-05 08:58:11 -07:00
2021-05-07 00:26:35 -07:00
2021-05-05 11:27:24 -07:00
2021-05-05 11:27:24 -07:00
2021-05-07 00:26:35 -07:00
2021-02-24 13:38:27 -08:00
2021-05-07 00:26:35 -07:00
2021-05-07 00:26:35 -07:00
2021-05-14 19:41:32 -07:00
2021-05-07 00:26:35 -07:00
2021-04-30 11:20:36 -07:00
2021-05-07 00:26:35 -07:00
2021-05-07 00:26:35 -07:00
2021-05-07 00:26:35 -07:00
2021-05-05 11:27:27 -07:00
2021-05-07 00:26:35 -07:00
2021-05-07 00:26:35 -07:00
2021-05-07 00:26:35 -07:00
2021-05-07 00:26:34 -07:00
2021-05-07 00:26:35 -07:00
2021-03-02 17:25:46 -07:00
2021-05-07 00:26:35 -07:00
2021-05-07 00:26:35 -07:00
2021-05-07 00:26:35 -07:00
2021-05-07 00:26:35 -07:00
2021-05-07 00:26:35 -07:00
2021-04-16 16:10:37 -07:00
2021-05-07 00:26:35 -07:00
2021-06-16 09:24:42 -07:00
2021-05-05 11:27:27 -07:00
2021-05-07 00:26:35 -07:00
2021-05-05 11:27:25 -07:00
2021-05-07 00:26:35 -07:00
2021-05-05 11:27:27 -07:00
2021-05-07 00:26:35 -07:00
2021-05-07 00:26:35 -07:00
2021-05-07 00:26:35 -07:00