From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wj0-f197.google.com (mail-wj0-f197.google.com [209.85.210.197]) by kanga.kvack.org (Postfix) with ESMTP id E12C96B0069 for ; Fri, 25 Nov 2016 07:59:03 -0500 (EST) Received: by mail-wj0-f197.google.com with SMTP id o3so10141378wjo.1 for ; Fri, 25 Nov 2016 04:59:03 -0800 (PST) Received: from mx2.suse.de (mx2.suse.de. [195.135.220.15]) by mx.google.com with ESMTPS id y84si13660996wmg.11.2016.11.25.04.59.02 for (version=TLS1 cipher=AES128-SHA bits=128/128); Fri, 25 Nov 2016 04:59:02 -0800 (PST) Subject: Re: mm: BUG in pgtable_pmd_page_dtor References: <296bdd6b-5c9e-0fbc-8aa1-4e95d0aff031@suse.cz> From: Vlastimil Babka Message-ID: <2ff6eee6-8828-821a-7dde-c2f68da697a5@suse.cz> Date: Fri, 25 Nov 2016 13:58:57 +0100 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Sender: owner-linux-mm@kvack.org List-ID: To: Andrey Ryabinin , Dmitry Vyukov , Andrew Morton Cc: "Kirill A. Shutemov" , Michal Hocko , Ingo Molnar , Joonsoo Kim , "linux-mm@kvack.org" , LKML , syzkaller On 11/25/2016 12:41 PM, Andrey Ryabinin wrote: > > > On 11/25/2016 11:42 AM, Vlastimil Babka wrote: > >> pr_emerg("page:%p count:%d mapcount:%d mapping:%p index:%#lx", >> page, page_ref_count(page), mapcount, >> @@ -59,6 +61,21 @@ void __dump_page(struct page *page, const char *reason) >> >> pr_emerg("flags: %#lx(%pGp)\n", page->flags, &page->flags); >> >> + pr_alert("raw struct page data:"); >> + for (i = 0; i < sizeof(struct page) / sizeof(unsigned long); i++) { >> + unsigned long *word_ptr; >> + >> + word_ptr = ((unsigned long *) page) + i; >> + >> + if ((i % words_per_line) == 0) { >> + pr_cont("\n"); >> + pr_alert(" %016lx", *word_ptr); >> + } else { >> + pr_cont(" %016lx", *word_ptr); >> + } >> + } >> + pr_cont("\n"); >> + > > Single call to print_hex_dump() could replace this loop. Ah, didn't know about that one, thanks! This also addresses Kirill's comment: -----8<-----