linux-next.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* linux-next: "hugetlb: hugepage migration core" breaks compilation on s390
@ 2010-10-11 11:11 Heiko Carstens
  2010-10-11 14:08 ` Andi Kleen
  0 siblings, 1 reply; 4+ messages in thread
From: Heiko Carstens @ 2010-10-11 11:11 UTC (permalink / raw)
  To: Naoya Horiguchi, Andi Kleen
  Cc: linux-next, Jun'ichi Nomura, Mel Gorman, Martin Schwidefsky

"hugetlb: hugepage migration core" in linux-next breaks compilation on s390:

  CC      mm/migrate.o
mm/migrate.c: In function 'remove_migration_pte':
mm/migrate.c:143:3: error: implicit declaration of function 'pte_mkhuge'
mm/migrate.c:143:7: error: incompatible types when assigning to type 'pte_t' from type 'int'
make[1]: *** [mm/migrate.o] Error 1
make: *** [mm/migrate.o] Error 2

This is simply because a lot of CONFIG_HUGETLB_PAGE dependent code was added
to mm/migration.c which does not depend on that config option. Please fix.

Thanks.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: linux-next: "hugetlb: hugepage migration core" breaks compilation on s390
  2010-10-11 11:11 linux-next: "hugetlb: hugepage migration core" breaks compilation on s390 Heiko Carstens
@ 2010-10-11 14:08 ` Andi Kleen
  2010-10-11 14:22   ` Heiko Carstens
  0 siblings, 1 reply; 4+ messages in thread
From: Andi Kleen @ 2010-10-11 14:08 UTC (permalink / raw)
  To: Heiko Carstens
  Cc: Naoya Horiguchi, linux-next, Jun'ichi Nomura, Mel Gorman,
	Martin Schwidefsky

On Mon, Oct 11, 2010 at 01:11:31PM +0200, Heiko Carstens wrote:
> "hugetlb: hugepage migration core" in linux-next breaks compilation on s390:
> 
>   CC      mm/migrate.o
> mm/migrate.c: In function 'remove_migration_pte':
> mm/migrate.c:143:3: error: implicit declaration of function 'pte_mkhuge'
> mm/migrate.c:143:7: error: incompatible types when assigning to type 'pte_t' from type 'int'
> make[1]: *** [mm/migrate.o] Error 1
> make: *** [mm/migrate.o] Error 2
> 
> This is simply because a lot of CONFIG_HUGETLB_PAGE dependent code was added
> to mm/migration.c which does not depend on that config option. Please fix.

Most of the functions have inline dummies, just pte_mkhuge() doesn't.
Anyways the easiest fix would be a simple #ifdef. Does this patch
work for you?

-Andi

From: Andi Kleen <ak@linux.intel.com>
Subject: [PATCH] Fix migration.c compilation on s390

s390 doesn't have huge pages and failed with

> mm/migrate.c: In function 'remove_migration_pte':
> mm/migrate.c:143:3: error: implicit declaration of function 'pte_mkhuge'
> mm/migrate.c:143:7: error: incompatible types when assigning to type 'pte_t' from type 'int'

Put that code into a ifdef.

Reported by Heiko Carstens

Signed-off-by: Andi Kleen <ak@linux.intel.com>

diff --git a/mm/migrate.c b/mm/migrate.c
index 55dbc45..f8c9bcc 100644
--- a/mm/migrate.c
+++ b/mm/migrate.c
@@ -139,8 +139,10 @@ static int remove_migration_pte(struct page *new, struct vm_area_struct *vma,
 	pte = pte_mkold(mk_pte(new, vma->vm_page_prot));
 	if (is_write_migration_entry(entry))
 		pte = pte_mkwrite(pte);
+#ifdef CONFIG_HUGETLB_PAGE
 	if (PageHuge(new))
 		pte = pte_mkhuge(pte);
+#endif
 	flush_cache_page(vma, addr, pte_pfn(pte));
 	set_pte_at(mm, addr, ptep, pte);
 

^ permalink raw reply related	[flat|nested] 4+ messages in thread

* Re: linux-next: "hugetlb: hugepage migration core" breaks compilation on s390
  2010-10-11 14:08 ` Andi Kleen
@ 2010-10-11 14:22   ` Heiko Carstens
  2010-10-11 14:59     ` Andi Kleen
  0 siblings, 1 reply; 4+ messages in thread
From: Heiko Carstens @ 2010-10-11 14:22 UTC (permalink / raw)
  To: Andi Kleen
  Cc: Naoya Horiguchi, linux-next, Jun'ichi Nomura, Mel Gorman,
	Martin Schwidefsky

On Mon, Oct 11, 2010 at 04:08:34PM +0200, Andi Kleen wrote:
> On Mon, Oct 11, 2010 at 01:11:31PM +0200, Heiko Carstens wrote:
> > "hugetlb: hugepage migration core" in linux-next breaks compilation on s390:
> > 
> >   CC      mm/migrate.o
> > mm/migrate.c: In function 'remove_migration_pte':
> > mm/migrate.c:143:3: error: implicit declaration of function 'pte_mkhuge'
> > mm/migrate.c:143:7: error: incompatible types when assigning to type 'pte_t' from type 'int'
> > make[1]: *** [mm/migrate.o] Error 1
> > make: *** [mm/migrate.o] Error 2
> > 
> > This is simply because a lot of CONFIG_HUGETLB_PAGE dependent code was added
> > to mm/migration.c which does not depend on that config option. Please fix.
> 
> Most of the functions have inline dummies, just pte_mkhuge() doesn't.
> Anyways the easiest fix would be a simple #ifdef. Does this patch
> work for you?

Yes.

> From: Andi Kleen <ak@linux.intel.com>
> Subject: [PATCH] Fix migration.c compilation on s390
> 
> s390 doesn't have huge pages and failed with

s390 has huge pages only in 64 bit mode, but not in 31 bit mode.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: linux-next: "hugetlb: hugepage migration core" breaks compilation on s390
  2010-10-11 14:22   ` Heiko Carstens
@ 2010-10-11 14:59     ` Andi Kleen
  0 siblings, 0 replies; 4+ messages in thread
From: Andi Kleen @ 2010-10-11 14:59 UTC (permalink / raw)
  To: Heiko Carstens
  Cc: Naoya Horiguchi, linux-next, Jun'ichi Nomura, Mel Gorman,
	Martin Schwidefsky

> > From: Andi Kleen <ak@linux.intel.com>
> > Subject: [PATCH] Fix migration.c compilation on s390
> > 
> > s390 doesn't have huge pages and failed with
> 
> s390 has huge pages only in 64 bit mode, but not in 31 bit mode.

Ok I will fix the commit message.
-Andi

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2010-10-11 14:57 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-10-11 11:11 linux-next: "hugetlb: hugepage migration core" breaks compilation on s390 Heiko Carstens
2010-10-11 14:08 ` Andi Kleen
2010-10-11 14:22   ` Heiko Carstens
2010-10-11 14:59     ` Andi Kleen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).