Messages in this thread | | | Date | Mon, 30 Apr 2012 16:05:20 -0700 | From | Andrew Morton <> | Subject | Re: [PATCH] THP: need is_vma_temporary_stack() when reference transparent_hugepage_enabled |
| |
On Sat, 28 Apr 2012 14:33:15 +0800 Alex Shi <alex.shi@intel.com> wrote:
> When the transparent_hugepage_enabled() used out of mm/, > is_vma_temporary_stack() need be referenced. Otherwise, it has compile > error.
This is a poor changelog - it doesn't tell us how this compilation error comes about. Is there some known build error in the mainline kernel, or did you discover this when altering the kernel, or what?
One of the several reasons for this information is to permit others to work out which kernel version(s) should be fixed.
> diff --git a/include/linux/huge_mm.h b/include/linux/huge_mm.h > index c8af7a2..10254ac 100644 > --- a/include/linux/huge_mm.h > +++ b/include/linux/huge_mm.h > @@ -59,6 +59,7 @@ extern pmd_t *page_check_address_pmd(struct page *page, > #define HPAGE_PMD_MASK HPAGE_MASK > #define HPAGE_PMD_SIZE HPAGE_SIZE > > +extern bool is_vma_temporary_stack(struct vm_area_struct *vma); > #define transparent_hugepage_enabled(__vma) \ > ((transparent_hugepage_flags & \ > (1<<TRANSPARENT_HUGEPAGE_FLAG) || \
is_vma_temporary_stack() is already declared in rmap.h. We should not declare it in two places.
include/linux/huge_mm.h doesn't include any headers at all. It is one of those files which require its user to set up the preconditions.
So, lacking any additional infomation I'd say that your mystery build breakage was caused by a failure to include rmap.h.
| |