[lkml]   [2002]   [Feb]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectMaze of include files, all producing errors...
In 2.5.5 (Changeset 1.359.2.3), the highmem.h and pgalloc.h includes were

Previous kernels had linux/highmem.h including asm/pgalloc.h. Placing
the architecture cache handling functions worked well in asm/pgalloc.h,
allowing highmem.h to find them; highmem.h uses flush_dcache_page() and
friends in inline functions.

In this changeset, highmem.h no longer includes pgalloc.h, but instead
pgalloc.h includes highmem.h. This, unfortunately, tends to break things
in a major way since the cache functions are no longer available to

Looking at x86, the (no-op) cache functions live in pgtable.h. However,
trying to put the ARM cache handling into pgtable.h doesn't work because
we need things like PG_arch_1 and struct page. pgtable.h is included by
linux/mm.h before linux/mm.h declares PG_arch_1 and struct page. So
obviously this can't work.

Has anyone encountered this, and has anyone found a magic working

For now, I'm going to reverse the include changes in this changeset so
things build again.

Russell King ( The developer of ARM Linux

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
More majordomo info at
Please read the FAQ at

 \ /
  Last update: 2005-03-22 13:20    [W:0.058 / U:0.688 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site