Red Hat Bugzilla – Bug 185202
Kernel build requires "High Memory Support"
Last modified: 2013-03-06 00:59:23 EST
Description of problem:
The kernel cannot be built if "High Memory Support" is disabled. If the option
is changed from the default 4GB to "off" the file arch/i386/mm/pageattr.c fails
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. Extract kernel source files from kernel SRPM as usual.
2. Rebuild kernel using the config-2.6.9-34.EL installed by the i686 RPM. Build
3. Change "High Memory Support" (I used "make menuconfig") to "off". Attempt to
rebuild kernel fails.
arch/i386/mm/pageattr.c: In function `revert_page':
arch/i386/mm/pageattr.c:100: error: `_etext' undeclared (first use in this
arch/i386/mm/pageattr.c:100: error: (Each undeclared identifier is reported only
arch/i386/mm/pageattr.c:100: error: for each function it appears in.)
arch/i386/mm/pageattr.c:104: warning: ISO C90 forbids mixed declarations and
arch/i386/mm/pageattr.c: In function `__change_page_attr':
arch/i386/mm/pageattr.c:135: error: `_etext' undeclared (first use in this
make: *** [arch/i386/mm/pageattr.o] Error 1
There should be no compilation errors.
Yes, yes, yes, I know Red Hat doesn't support custom configurations.
Nevertheless, I think you will want to know that you are unconditionally using
variables that only exist in specific configurations.
The low-memory machine I intend to run this kernel on cannot support more the
256MB of RAM. It is inefficient to enable High Memory Support on a machine that
will never be able to use those high-memory page tables.
strange. _etext is not related to highmem...this patch is also in the upstream
kernel...i'll see if i can figure this out, but its not a high priority for
Problem still exists in kernel-2.6.9-42.0.2.EL.
Look, I'll make it easy for you:
diff -Nu arch/i386/mm/pageattr.c.orig arch/i386/mm/pageattr.c
--- arch/i386/mm/pageattr.c.orig 2006-08-24 06:38:52.000000000 -0400
+++ arch/i386/mm/pageattr.c 2006-08-24 11:00:48.000000000 -0400
@@ -12,6 +12,7 @@
static spinlock_t cpa_lock = SPIN_LOCK_UNLOCKED;
static struct list_head df_list = LIST_HEAD_INIT(df_list);
This request was evaluated by Red Hat Product Management for inclusion in a Red
Hat Enterprise Linux maintenance release. Product Management has requested
further review of this request by Red Hat Engineering, for potential
inclusion in a Red Hat Enterprise Linux Update release for currently deployed
products. This request is not yet committed for inclusion in an Update
Committed in 68.21.EL . RPMS are available at http://people.redhat.com/vgoyal/rhel4/
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on therefore solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.