diff options
author | Naoya Horiguchi <n-horiguchi@ah.jp.nec.com> | 2016-05-20 16:58:50 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2016-05-20 17:58:30 -0700 |
commit | e570f56cccd215db68e50870ee74b7d9c0022109 (patch) | |
tree | 0db14373c0f65bcc7360995920b8ed0e46a0d5de /mm/page-writeback.c | |
parent | 29b52de182acf50f85a8284ad39104d84c9bbf57 (diff) | |
download | linux-e570f56cccd215db68e50870ee74b7d9c0022109.tar.bz2 |
mm: check_new_page_bad() directly returns in __PG_HWPOISON case
Currently we check page->flags twice for "HWPoisoned" case of
check_new_page_bad(), which can cause a race with unpoisoning.
This race unnecessarily taints kernel with "BUG: Bad page state".
check_new_page_bad() is the only caller of bad_page() which is
interested in __PG_HWPOISON, so let's move the hwpoison related code in
bad_page() to it.
Link: http://lkml.kernel.org/r/20160518100949.GA17299@hori1.linux.bs1.fc.nec.co.jp
Signed-off-by: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>
Acked-by: Mel Gorman <mgorman@techsingularity.net>
Cc: Vlastimil Babka <vbabka@suse.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'mm/page-writeback.c')
0 files changed, 0 insertions, 0 deletions