Re: VM_BUG_ON in __prep_compound_gigantic_page

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 11/18/22 14:21, Aneesh Kumar K.V wrote:
> "Aneesh Kumar K.V" <aneesh.kumar@xxxxxxxxxxxxx> writes:
> 
> > Hi Mike,
> >
> > With latest upstream I am finding the below:
> >
> > [    0.246646] page dumped because: VM_BUG_ON_PAGE(1 && PageCompound(page))
> > [    0.246671] ------------[ cut here ]------------
> > [    0.246679] kernel BUG at include/linux/page-flags.h:500!
> > cpu 0x6: Vector: 700 (Program Check) at [c00000000fe5b700]
> >     pc: c0000000005e9984: __prep_compound_gigantic_page+0xd4/0x3e0
> >     lr: c0000000005e9980: __prep_compound_gigantic_page+0xd0/0x3e0
> >     sp: c00000000fe5b9a0
> >    msr: 8000000000029033
> >   current = 0xc00000000fdf9880
> >   paca    = 0xc00000001ec7f480   irqmask: 0x03   irq_happened: 0x01
> >     pid   = 1, comm = swapper/0
> > kernel BUG at e)):500!
> > Linux version 6.1.0-rc5-00518-ge0951d75adc4 (kvaneesh@ltczz75-lp2) (gcc (Ubuntu 9.4.0-1ubuntu1~20.04.1) 9.4.0, GNU ld (GNU Binutils for Ubuntu) 2.34) #395 SMP Fri Nov 18 00:44:21 CST 2022
> > enter ? for help
> > [c00000000fe5ba60] c000000001bddd74 hugetlb_init+0x60c/0xa10
> > [c00000000fe5bb60] c0000000000121c0 do_one_initcall+0xa0/0x550
> > [c00000000fe5bc40] c000000001b94b90 do_basic_setup+0x1f4/0x254
> > [c00000000fe5bd20] c000000001b94f38 kernel_init_freeable+0x2ac/0x32c
> > [c00000000fe5bda0] c000000000012cf0 kernel_init+0x44/0x184
> > [c00000000fe5be10] c00000000000cdec ret_from_kernel_thread+0x5c/0x64
> > 6:mon> 
> >
> >
> > IIUC that is because we are doing __SetPageHead() before doing
> > __ClearPageReserved(). The original commit that added compound head
> > check in set/clear page reserved did have the change to take care of
> > this.
> >
> 
> Adding the correct commit details
> commit de09d31dd38a ("page-flags: define PG_reserved behavior on compound pages")

Thanks Aneesh!

This was caused by shuffling of code in  my commit 2b21624fc2327 ("hugetlb:
freeze allocated pages before creating hugetlb pages").  My bad for not
running with CONFIG_DEBUG_VM_PGFLAGS.

Will send a fix shortly.
-- 
Mike Kravetz




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux