On Thu, Feb 18, 2021 at 12:32 PM Peter Xu <[email protected]> wrote:
>
> On Thu, Feb 18, 2021 at 10:32:00AM -0800, Axel Rasmussen wrote:
> > > @@ -1448,6 +1449,9 @@ static int userfaultfd_register(struct 
> > > userfaultfd_ctx *ctx,
> > >                 vma->vm_flags = new_flags;
> > >                 vma->vm_userfaultfd_ctx.ctx = ctx;
> > >
> > > +               if (is_vm_hugetlb_page(vma) && 
> > > uffd_disable_huge_pmd_share(vma))
> > > +                       hugetlb_unshare_all_pmds(vma);
> >
> > This line yields the following error, if building with:
> > # CONFIG_CMA is not set
> >
> > ./fs/userfaultfd.c:1459: undefined reference to `hugetlb_unshare_all_pmds'
>
> Ouch..  Axel, you mean CONFIG_HUGETLBFS rather than CONFIG_CMA, am I right?

Surprisingly no, there's a "#ifdef CONFIG_CMA" line ~100 lines above
where hugetlb_unshare_all_pmds is defined in hugetlb.c which causes
this. My guess is that putting the function inside that block was
accidental and it can just be moved.

>
> --
> Peter Xu
>

Reply via email to