aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-x86_64
diff options
context:
space:
mode:
authorStephen Rothwell <sfr@canb.auug.org.au>2005-09-03 18:54:30 -0400
committerLinus Torvalds <torvalds@evo.osdl.org>2005-09-05 03:05:39 -0400
commitfd4fd5aac1282825195c6816ed40a2a6d42db5bf (patch)
tree5908cf4c88a7c9d69ea7bdc1c354d51b6ff47f86 /include/asm-x86_64
parent28ae55c98e4d16eac9a05a8a259d7763ef3aeb18 (diff)
[PATCH] mm: consolidate get_order
Someone mentioned that almost all the architectures used basically the same implementation of get_order. This patch consolidates them into asm-generic/page.h and includes that in the appropriate places. The exceptions are ia64 and ppc which have their own (presumably optimised) versions. Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include/asm-x86_64')
-rw-r--r--include/asm-x86_64/page.h16
1 files changed, 2 insertions, 14 deletions
diff --git a/include/asm-x86_64/page.h b/include/asm-x86_64/page.h
index 431318764af6..fcf890aa8c81 100644
--- a/include/asm-x86_64/page.h
+++ b/include/asm-x86_64/page.h
@@ -92,20 +92,6 @@ typedef struct { unsigned long pgprot; } pgprot_t;
92 92
93#include <asm/bug.h> 93#include <asm/bug.h>
94 94
95/* Pure 2^n version of get_order */
96extern __inline__ int get_order(unsigned long size)
97{
98 int order;
99
100 size = (size-1) >> (PAGE_SHIFT-1);
101 order = -1;
102 do {
103 size >>= 1;
104 order++;
105 } while (size);
106 return order;
107}
108
109#endif /* __ASSEMBLY__ */ 95#endif /* __ASSEMBLY__ */
110 96
111#define PAGE_OFFSET ((unsigned long)__PAGE_OFFSET) 97#define PAGE_OFFSET ((unsigned long)__PAGE_OFFSET)
@@ -141,4 +127,6 @@ extern __inline__ int get_order(unsigned long size)
141 127
142#endif /* __KERNEL__ */ 128#endif /* __KERNEL__ */
143 129
130#include <asm-generic/page.h>
131
144#endif /* _X86_64_PAGE_H */ 132#endif /* _X86_64_PAGE_H */