Green shading in the line number column means the source is part of the translation unit, red means it is conditionally excluded. Highlighted line numbers link to the translation unit page. Highlighted macros link to the macro page.
1: #ifndef _ASM_X86_SPARSEMEM_H 2: #define _ASM_X86_SPARSEMEM_H 3: 4: #ifdef CONFIG_SPARSEMEM 5: /* 6: * generic non-linear memory support: 7: * 8: * 1) we will not split memory into more chunks than will fit into the flags 9: * field of the struct page 10: * 11: * SECTION_SIZE_BITS 2^n: size of each section 12: * MAX_PHYSADDR_BITS 2^n: max size of physical address space 13: * MAX_PHYSMEM_BITS 2^n: how much memory we can have in that space 14: * 15: */ 16: 17: #ifdef CONFIG_X86_32 18: # ifdef CONFIG_X86_PAE 19: # define SECTION_SIZE_BITS 29 20: # define MAX_PHYSADDR_BITS 36 21: # define MAX_PHYSMEM_BITS 36 22: # else 23: # define SECTION_SIZE_BITS 26 24: # define MAX_PHYSADDR_BITS 32 25: # define MAX_PHYSMEM_BITS 32 26: # endif 27: #else /* CONFIG_X86_32 */ 28: # define SECTION_SIZE_BITS 27 /* matt - 128 is convenient right now */ 29: # define MAX_PHYSADDR_BITS 44 30: # define MAX_PHYSMEM_BITS 46 31: #endif 32: 33: #endif /* CONFIG_SPARSEMEM */ 34: #endif /* _ASM_X86_SPARSEMEM_H */ 35: