Эх сурвалжийг харах

Fix build error with !CONFIG_MIGRATION

migrate_huge_page_move_mapping() is declared as "extern int ..."
in include/linux/migrate.h for !CONFIG_MIGRATION,
which causes the build error like below:

  mm/mprotect.o: In function `migrate_huge_page_move_mapping':
  mprotect.c:(.text+0x0): multiple definition of `migrate_huge_page_move_mapping'
  mm/shmem.o:shmem.c:(.text+0x0): first defined here
  mm/rmap.o: In function `migrate_huge_page_move_mapping':
  rmap.c:(.text+0x0): multiple definition of `migrate_huge_page_move_mapping'
  mm/shmem.o:shmem.c:(.text+0x0): first defined here

Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>
Signed-off-by: Andi Kleen <ak@linux.intel.com>
Naoya Horiguchi 14 жил өмнө
parent
commit
6f39ce056a

+ 1 - 1
include/linux/migrate.h

@@ -50,7 +50,7 @@ static inline int migrate_vmas(struct mm_struct *mm,
 static inline void migrate_page_copy(struct page *newpage,
 static inline void migrate_page_copy(struct page *newpage,
 				     struct page *page) {}
 				     struct page *page) {}
 
 
-extern int migrate_huge_page_move_mapping(struct address_space *mapping,
+static inline int migrate_huge_page_move_mapping(struct address_space *mapping,
 				  struct page *newpage, struct page *page)
 				  struct page *newpage, struct page *page)
 {
 {
 	return -ENOSYS;
 	return -ENOSYS;