On Tue, Jan 14, 2025 at 11:52 AM <devel-request(a)lists.crash-utility.osci.io>
wrote:
 Date: Thu, 9 Jan 2025 12:01:29 +1300
 From: Tao Liu <ltao(a)redhat.com>
 Subject: [Crash-utility] Re: [PATCH] kmem: fix the determination of
         slab page due to invalid page_type
 To: qiwu.chen(a)transsion.com
 Cc: devel(a)lists.crash-utility.osci.io
 Message-ID:
         <
 CAO7dBbW-ab1TxUZKWtDqPitR7vj_s4UMy9BzsyxyCr26zY1ORQ(a)mail.gmail.com>
 Content-Type: text/plain; charset="UTF-8"
 Hi qiwu,
 Thanks for the fix, LGTM, so ack.
 
Applied:
https://github.com/crash-utility/crash/commit/a713368a3474a5f0a322d0c503e...
Thanks
Lianbo
 Thanks,
 Tao Liu
 On Wed, Jan 8, 2025 at 10:57 PM <qiwu.chen(a)transsion.com> wrote:
 >
 > There is fail when excute "kmem -i" on ARM64+kernel-5.10 vmcore:
 >
 > crash> kmem -i
 > kmem: invalid kernel virtual address: ffffffff0be00030  type: "page_type"
 >
 > The slab page is determined by the PG_slab bit of page flag on this
 vmcore,
 > when traverse the pages of sparse memory, page_slab() fails to readmem
 > page_type for a invalid page. Fix this by enhance the determination of
 slab page.
 >
 > Signed-off-by: qiwu.chen <qiwu.chen(a)transsion.com>
 > ---
 >  memory.c | 2 ++
 >  1 file changed, 2 insertions(+)
 >
 > diff --git a/memory.c b/memory.c
 > index 8c01ed0..e4a058a 100644
 > --- a/memory.c
 > +++ b/memory.c
 > @@ -374,6 +374,8 @@ static bool page_slab(ulong page, ulong flags)
 >         if (vt->flags & SLAB_PAGEFLAGS) {
 >                 if ((flags >> vt->PG_slab) & 1)
 >                         return TRUE;
 > +               else
 > +                       return FALSE;
 >         }
 >
 >         if (VALID_MEMBER(page_page_type)) {
 > --
 > 2.25.1