Re: mmotm 2014-04-22-15-20 uploaded (uml 32- and 64-bit defconfigs)

Randy Dunlap
2014-04-23T18:20:43Z

On 04/23/14 11:16, Luiz Capitulino wrote:
> On Wed, 23 Apr 2014 10:48:27 -0700
> Randy Dunlap <rdunlap@infradead.org> wrote:
>
>> On 04/23/14 10:41, Luiz Capitulino wrote:
>>> On Wed, 23 Apr 2014 10:10:29 -0700
>>> Randy Dunlap <rdunlap@infradead.org> wrote:
>>>
>>>> On 04/22/14 15:21, akpm@linux-foundation.org wrote:
>>>>> The mm-of-the-moment snapshot 2014-04-22-15-20 has been uploaded to
>>>>>
>>>>> http://www.ozlabs.org/~akpm/mmotm/
>>>>>
>>>>> mmotm-readme.txt says
>>>>>
>>>>> README for mm-of-the-moment:
>>>>>
>>>>> http://www.ozlabs.org/~akpm/mmotm/
>>>>>
>>>>> This is a snapshot of my -mm patch queue. Uploaded at random hopefully
>>>>> more than once a week.
>>>>>
>>>>> You will need quilt to apply these patches to the latest Linus release (3.x
>>>>> or 3.x-rcY). The series file is in broken-out.tar.gz and is duplicated in
>>>>> http://ozlabs.org/~akpm/mmotm/series
>>>>>
>>>>
>>>> include/linux/hugetlb.h:468:9: error: 'HPAGE_SHIFT' undeclared (first use in this function)
>>>
>>> The patch adding HPAGE_SHIFT usage to hugetlb.h in current mmotm is this:
>>>
>>> http://www.ozlabs.org/~akpm/mmotm/broken-out/hugetlb-ensure-hugepage-access-is-denied-if-hugepages-are-not-supported.patch
>>>
>>> But I can't reproduce the issue to be sure what the problem is. Are you
>>> building the kernel on 32bits? Can you provide the output of
>>> "grep -i huge .config" or send your .config in private?
>>>
>>
>> [adding Richard to cc:]
>>
>>
>> As in $subject, if I build uml x86 32-bit or 64-bit defconfig, the build fails with
>> this error.
>
> Oh, I missed the subject info completely. Sorry about that.
>
> So, the issue really seems to be introduced by patch:
>
> hugetlb-ensure-hugepage-access-is-denied-if-hugepages-are-not-supported.patch
>
> And the problem is that UML doesn't define HPAGE_SHIFT. The following patch
> fixes it, but I'll let Nishanth decide what to do here.

Thanks for tracking it down.

> diff --git a/include/linux/hugetlb.h b/include/linux/hugetlb.h
> index 4eace5e..3aab7df 100644
> --- a/include/linux/hugetlb.h
> +++ b/include/linux/hugetlb.h
> @@ -458,6 +458,10 @@ static inline spinlock_t *huge_pte_lock(struct hstate *h,
> return ptl;
> }
>
> +#ifndef HPAGE_SHIFT
> +#define HPAGE_SHIFT 0
> +#endif
> +
> static inline bool hugepages_supported(void)
> {
> /*
>

--
~Randy