linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* [RFC][PATCH 0/9] generic PAGE_SIZE infrastructure (v4)
@ 2006-08-30 22:16 Dave Hansen
  2006-08-30 22:16 ` [RFC][PATCH 2/9] conditionally define generic get_order() (ARCH_HAS_GET_ORDER) Dave Hansen
                   ` (9 more replies)
  0 siblings, 10 replies; 27+ messages in thread
From: Dave Hansen @ 2006-08-30 22:16 UTC (permalink / raw)
  To: linux-mm; +Cc: linux-kernel, linux-ia64, Dave Hansen

Changes from v3:
- fixed spurious delete of PTE_MASK in sh arch
- replaced ALIGN() macro with one which only evaluates the
  address a single time.  (Thanks Nikita)
- replaced ppc _ALIGN* definitions with include of align.h

Changes from v2:
- included get_order() code to make it safe to include
  generic/page.h everywhere (using ARCH_HAS_GET_ORDER)
- updated mm/Kconfig text to make it more fitting for ia64
- added patch to consolidate _ALIGN with kernel.h's ALIGN()
  The assembly one has been left alone, but I guess we could
  put it here.  However, the meaning of the two is quite different.

---

All architectures currently explicitly define their page size.  In some
cases (ppc, parisc, ia64, sparc64, mips) this size is somewhat
configurable.

There several reimplementations of ways to make sure that PAGE_SIZE
is usable in assembly code, yet still somewhat type safe for use in
C code (as a UL type).  These are all very similar.  There are also a
number of macros based off of PAGE_SIZE/SHIFT which are duplicated
across architectures.

This patch unifies all of those definitions.  It defines PAGE_SIZE in
a single header which gets its definitions from Kconfig.  The new
Kconfig options mirror what used to be done with #ifdefs and
arch-specific Kconfig options.  The new Kconfig menu eliminates
the need for parisc, ia64, and sparc64 to have their own "choice"
menus for selecting page size.  The help text has been adapted from
these three architectures, but is now more generic.

Why am I doing this?  The OpenVZ beancounter patch hooks into the
alloc_thread_info() path, but only in two architectures.  It is silly
to patch each and every architecture when they all just do the same
thing.  This is the first step to have a single place in which to
do alloc_thread_info().  Oh, and this series removes about 300 lines
of code.

  59 files changed, 217 insertions(+), 502 deletions(-)

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

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

end of thread, other threads:[~2006-10-17  7:29 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-08-30 22:16 [RFC][PATCH 0/9] generic PAGE_SIZE infrastructure (v4) Dave Hansen
2006-08-30 22:16 ` [RFC][PATCH 2/9] conditionally define generic get_order() (ARCH_HAS_GET_ORDER) Dave Hansen
2006-08-31 18:41   ` Haavard Skinnemoen
2006-08-31 19:51     ` Dave Hansen
2006-08-30 22:16 ` [RFC][PATCH 1/9] put alignment macros in align.h Dave Hansen
2006-08-30 22:16 ` [RFC][PATCH 3/9] actual generic PAGE_SIZE infrastructure Dave Hansen
2006-08-31  0:08   ` Christoph Lameter
2006-08-31 17:57     ` Dave Hansen
2006-08-31 18:06       ` Christoph Lameter
2006-08-31 20:50     ` Dave Hansen
2006-09-05 11:20   ` Martin Waitz
2006-09-05 16:47     ` Dave Hansen
2006-10-17  7:29   ` Qi Yong
2006-08-30 22:16 ` [RFC][PATCH 4/9] ia64 generic PAGE_SIZE Dave Hansen
2006-08-30 23:57   ` Christoph Lameter
2006-08-31 17:38     ` Dave Hansen
2006-08-31 17:39       ` Christoph Lameter
2006-08-30 22:16 ` [RFC][PATCH 5/9] sparc64 " Dave Hansen
2006-08-30 22:27   ` David Miller, Dave Hansen
2006-08-30 22:16 ` [RFC][PATCH 6/9] mips " Dave Hansen
2006-08-30 22:16 ` [RFC][PATCH 7/9] parisc " Dave Hansen
2006-08-30 22:40   ` Kyle McMartin
2006-08-30 22:48     ` Dave Hansen
2006-08-30 22:16 ` [RFC][PATCH 8/9] powerpc " Dave Hansen
2006-08-30 22:16 ` [RFC][PATCH 9/9] convert the "easy" architectures to " Dave Hansen
2006-08-31  0:33 ` [RFC][PATCH 0/9] generic PAGE_SIZE infrastructure (v4) Paul Mackerras
2006-08-31 21:03   ` Dave Hansen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox