[PATCH 11/15] purgatory: Core purgatory functionality
H. Peter Anvin
hpa at zytor.com
Mon Aug 11 10:51:10 PDT 2014
On 08/11/2014 10:40 AM, Shaun Ruffell wrote:
> FYI, it looks like the following patch (committed in
> 8fc5b4d4121c95482b2583) adds a new requirement to use at least gcc
> 4.4 to build the kernel?
Well, to build the kernel with that particular new functionality
> The above "-mcmodel=large" compiler flag produces the following output on GCC 4.1.2.
> $ make modules_prepare ; gcc --version
> CHK include/config/kernel.release
> CHK include/generated/uapi/linux/version.h
> CHK include/generated/utsrelease.h
> CC arch/x86/purgatory/purgatory.o
> arch/x86/purgatory/purgatory.c:1: sorry, unimplemented: code model ‘large’ not supported yet
> make: *** [arch/x86/purgatory/purgatory.o] Error 1
> make: *** [archprepare] Error 2
> gcc (GCC) 4.1.2 20080704 (Red Hat 4.1.2-54)
> Copyright (C) 2006 Free Software Foundation, Inc.
> This is free software; see the source for copying conditions. There is NO
> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
> I did a quick search for a discussion the indicates this compiler is now
> officially too old to build the kernel but did not find one.
> If this is required, maybe Documentation/Changes needs to be updated
> with the new minimum required version?
... I'm having a very, very hard time to picture a reason why the
"large" model would be necessary or even desirable for the purgatory
code. The "small PIC" model seem to fit much better...
More information about the kexec