Re: [syzbot] [mm?] general protection fault in dequeue_hugetlb_folio_nodemask (2)

From: Oscar Salvador
Date: Tue Jun 11 2024 - 13:52:27 EST


On Tue, Jun 11, 2024 at 07:46:33PM +0200, Oscar Salvador wrote:
> On Tue, Jun 11, 2024 at 10:30:05AM -0700, Andrew Morton wrote:
> > On Tue, 11 Jun 2024 03:34:25 -0700 syzbot <syzbot+569ed13f4054f271087b@xxxxxxxxxxxxxxxxxxxxxxxxx> wrote:
> >
> > > Hello,
> > >
> > > syzbot found the following issue on:
> >
> > Thanks.
> >
> > > Call Trace:
> > > <TASK>
> > > alloc_hugetlb_folio_nodemask+0xae/0x3f0 mm/hugetlb.c:2603
> > > memfd_alloc_folio+0x15e/0x390 mm/memfd.c:75
> > > memfd_pin_folios+0x1066/0x1720 mm/gup.c:3864
> > > udmabuf_create+0x658/0x11c0 drivers/dma-buf/udmabuf.c:353
> > > udmabuf_ioctl_create drivers/dma-buf/udmabuf.c:420 [inline]
> > > udmabuf_ioctl+0x304/0x4f0 drivers/dma-buf/udmabuf.c:451
> > > vfs_ioctl fs/ioctl.c:51 [inline]
> > > __do_sys_ioctl fs/ioctl.c:907 [inline]
> > > __se_sys_ioctl+0xfc/0x170 fs/ioctl.c:893
> > > do_syscall_x64 arch/x86/entry/common.c:52 [inline]
> > > do_syscall_64+0xf3/0x230 arch/x86/entry/common.c:83
> > > entry_SYSCALL_64_after_hwframe+0x77/0x7f
> >
> > I think we can pretty confidently point at the series "mm/gup:
> > Introduce memfd_pin_folios() for pinning memfd folios". I'll drop the
> > v14 series.
>
> jfyi: I am trying to reproduce this locally.

Actually, should not memfd_alloc_folio() pass htlb_alloc_mask() instead
of GFP_USER to alloc_hugetlb_folio_nodemask? Or at least do
GFP_HIGHUSER.


--
Oscar Salvador
SUSE Labs