When compiling the 2.6.38 kernel, the following error occurs:
ARCH/x86/kernel/entry_32.s: assembler messages:
ARCH/x86/kernel/entry_32.s: 1422: Error:. Size expression for apf_page_fault does not evaluate to a constant
Make [2]: *** [ARCH/x86/kernel/entry_32.o] Error 1
Make [1]: *** [ARCH/x86/kernel] Error 2
Make: *** [ARCH/x86] Error 2
Solution:
This is related to a kernel bug. Someone has submitted the patch.
You can also change the two parts in arch/x86/kernel/entry_32.s to compile again. For details, refer to the link:
Https://lkml.org/lkml/2011/3/20/49
This fixes the problem. The file does not have a maintainer listed, so
I don't know where else to send it than to the lkml. Please correct
Me or redirect as needed.
---- Entry_32.s.original 08:21:51. 000000000-0400
++ Entry_32.s 10:37:00. 000000000-0400
@-343,7 + 343,7 @@
# Int/exception return?
JNE work_pending
JMP restore_all
--End (ret_from_exception)
+ End (resume_userspace)
# Ifdef config_preempt
Entry (resume_kernel)
@-1413,7 + 1413,7 @@
Cfi_adjust_cfa_offset 4
JMP error_code
Cfi_endproc
--End (apf_page_fault)
+ End (async_page_fault)
Reference URL:
Http://bbs.chinaunix.net/thread-3602662-1-1.html