sparc64: Define WANT_PAGE_VIRTUAL
authorDavid S. Miller <davem@davemloft.net>
Fri, 12 Sep 2008 06:36:32 +0000 (23:36 -0700)
committerDavid S. Miller <davem@davemloft.net>
Fri, 12 Sep 2008 06:36:32 +0000 (23:36 -0700)
As sparse warns, without this struct page pointer subtraction is
extremely expensive, and this is a pretty common operation in
fast paths.

With this define struct page becomes 64 bytes which makes for a
simple subtract and shift, instead of a costly divide or reciprocol
multiply.

Signed-off-by: David S. Miller <davem@davemloft.net>
arch/sparc/include/asm/page_64.h

index b579b910ef5123b24c1fc02fc92c1d4520e6ea9e..4274ed13ddb2d6209fdc914db7d51f939ad4b06c 100644 (file)
@@ -38,6 +38,8 @@
 
 #ifndef __ASSEMBLY__
 
+#define WANT_PAGE_VIRTUAL
+
 extern void _clear_page(void *page);
 #define clear_page(X)  _clear_page((void *)(X))
 struct page;