update from upstream
[sfrench/cifs-2.6.git] / include / asm-generic / page.h
1 #ifndef _ASM_GENERIC_PAGE_H
2 #define _ASM_GENERIC_PAGE_H
3
4 #ifdef __KERNEL__
5 #ifndef __ASSEMBLY__
6
7 #include <linux/compiler.h>
8
9 /* Pure 2^n version of get_order */
10 static __inline__ __attribute_const__ int get_order(unsigned long size)
11 {
12         int order;
13
14         size = (size - 1) >> (PAGE_SHIFT - 1);
15         order = -1;
16         do {
17                 size >>= 1;
18                 order++;
19         } while (size);
20         return order;
21 }
22
23 #endif  /* __ASSEMBLY__ */
24 #endif  /* __KERNEL__ */
25
26 #endif  /* _ASM_GENERIC_PAGE_H */