The header file <linux/pfn.h> doesn't exist in userspace and probably shouldn't -- but it's used unconditionally in <asm-i386/setup.h>. Protect it with #ifdef __KERNEL__ and move setup.h from $(header-y) to $(unifdef-y) in Kbuild accordingly.
Unified · Split
| @@ -1,5 +1,5 @@ | |||
| 1 | include include/asm-generic/Kbuild.asm | 1 | include include/asm-generic/Kbuild.asm |
| 2 | 2 | ||
| 3 | header-y += boot.h debugreg.h ldt.h setup.h ucontext.h | 3 | header-y += boot.h debugreg.h ldt.h ucontext.h |
| 4 | 4 | ||
| 5 | unifdef-y += mtrr.h vm86.h | 5 | unifdef-y += mtrr.h setup.h vm86.h |
| @@ -6,6 +6,7 @@ · 5 unmodified lines | |||
| 6 | #ifndef _i386_SETUP_H | 6 | #ifndef _i386_SETUP_H |
| 7 | #define _i386_SETUP_H | 7 | #define _i386_SETUP_H |
| 8 | 8 | ||
| 9 | #ifdef __KERNEL__ | ||
| 9 | #include <linux/pfn.h> | 10 | #include <linux/pfn.h> |
| 10 | 11 | ||
| 11 | /* | 12 | /* |
| @@ -13,6 +14,7 @@ · 1 unmodified line | |||
| 13 | */ | 14 | */ |
| 14 | #define MAXMEM_PFN PFN_DOWN(MAXMEM) | 15 | #define MAXMEM_PFN PFN_DOWN(MAXMEM) |
| 15 | #define MAX_NONPAE_PFN (1 << 20) | 16 | #define MAX_NONPAE_PFN (1 << 20) |
| 17 | #endif | ||
| 16 | 18 | ||
| 17 | #define PARAM_SIZE 4096 | 19 | #define PARAM_SIZE 4096 |
| 18 | #define COMMAND_LINE_SIZE 256 | 20 | #define COMMAND_LINE_SIZE 256 |