Line data Source code
1 : #ifndef __ASM_GENERIC_GETORDER_H
2 : #define __ASM_GENERIC_GETORDER_H
3 :
4 : #ifndef __ASSEMBLY__
5 :
6 : #include <linux/compiler.h>
7 :
8 : /* Pure 2^n version of get_order */
9 : static inline __attribute_const__ int get_order(unsigned long size)
10 : {
11 : int order;
12 :
13 : size = (size - 1) >> (PAGE_SHIFT - 1);
14 : order = -1;
15 : do {
16 : size >>= 1;
17 : order++;
18 : } while (size);
19 : return order;
20 : }
21 1 :
22 1 : #endif /* __ASSEMBLY__ */
23 1 :
24 : #endif /* __ASM_GENERIC_GETORDER_H */
|