summaryrefslogtreecommitdiffstats
path: root/lib/bcd.c
diff options
context:
space:
mode:
authorPavel Tatashin <pasha.tatashin@oracle.com>2018-07-04 02:02:53 +0200
committerLinus Torvalds <torvalds@linux-foundation.org>2018-07-04 02:32:19 +0200
commitfc36def997cfd6cbff3eda4f82853a5c311c5466 (patch)
tree30bcbc53d846d0af57df66256968458590cb7cd7 /lib/bcd.c
parentARM: disable KCOV for trusted foundations code (diff)
downloadlinux-fc36def997cfd6cbff3eda4f82853a5c311c5466.tar.xz
linux-fc36def997cfd6cbff3eda4f82853a5c311c5466.zip
mm: teach dump_page() to correctly output poisoned struct pages
If struct page is poisoned, and uninitialized access is detected via PF_POISONED_CHECK(page) dump_page() is called to output the page. But, the dump_page() itself accesses struct page to determine how to print it, and therefore gets into a recursive loop. For example: dump_page() __dump_page() PageSlab(page) PF_POISONED_CHECK(page) VM_BUG_ON_PGFLAGS(PagePoisoned(page), page) dump_page() recursion loop. Link: http://lkml.kernel.org/r/20180702180536.2552-1-pasha.tatashin@oracle.com Fixes: f165b378bbdf ("mm: uninitialized struct page poisoning sanity checking") Signed-off-by: Pavel Tatashin <pasha.tatashin@oracle.com> Acked-by: Michal Hocko <mhocko@suse.com> Cc: <stable@vger.kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'lib/bcd.c')
0 files changed, 0 insertions, 0 deletions