From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753499AbaHKSDK (ORCPT ); Mon, 11 Aug 2014 14:03:10 -0400 Received: from mx1.redhat.com ([209.132.183.28]:3918 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752717AbaHKSDJ (ORCPT ); Mon, 11 Aug 2014 14:03:09 -0400 Date: Mon, 11 Aug 2014 14:02:14 -0400 From: Vivek Goyal To: "H. Peter Anvin" Cc: Shaun Ruffell , linux-kernel@vger.kernel.org, kexec@lists.infradead.org, ebiederm@xmission.com, mjg59@srcf.ucam.org, greg@kroah.com, bp@alien8.de, dyoung@redhat.com, chaowang@redhat.com, bhe@redhat.com, akpm@linux-foundation.org Subject: Re: [PATCH 11/15] purgatory: Core purgatory functionality Message-ID: <20140811180213.GC1863@redhat.com> References: <1403814824-7587-1-git-send-email-vgoyal@redhat.com> <1403814824-7587-12-git-send-email-vgoyal@redhat.com> <20140811174017.GD12610@digium.com> <53E9028E.2070709@zytor.com> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <53E9028E.2070709@zytor.com> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, Aug 11, 2014 at 10:51:10AM -0700, H. Peter Anvin wrote: > 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 > enabled, yes. > > However... > > > 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[1]: *** [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... Hi hpa, I took it because kexec-tools uses it and in one of the committs Eric gave following reasoning. On x86_64 use -mcmodel=large so that the code is built without any 32bit assumptions. -mcmodel=medium and -mcmodel=small result int code that has 32bit relocations against variables that can live anywhere in the address space We do want to load purgatory anywhere in the address space. But if there are other ways to achieve the same thing, I will do that change. So when you say "small PIC", I need to use -mcmodel=small and -fPIC? I can give that a try. Thanks Vivek From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from mx1.redhat.com ([209.132.183.28]) by bombadil.infradead.org with esmtps (Exim 4.80.1 #2 (Red Hat Linux)) id 1XGtw1-0000B6-Ep for kexec@lists.infradead.org; Mon, 11 Aug 2014 18:03:05 +0000 Date: Mon, 11 Aug 2014 14:02:14 -0400 From: Vivek Goyal Subject: Re: [PATCH 11/15] purgatory: Core purgatory functionality Message-ID: <20140811180213.GC1863@redhat.com> References: <1403814824-7587-1-git-send-email-vgoyal@redhat.com> <1403814824-7587-12-git-send-email-vgoyal@redhat.com> <20140811174017.GD12610@digium.com> <53E9028E.2070709@zytor.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: <53E9028E.2070709@zytor.com> List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "kexec" Errors-To: kexec-bounces+dwmw2=infradead.org@lists.infradead.org To: "H. Peter Anvin" Cc: mjg59@srcf.ucam.org, bhe@redhat.com, greg@kroah.com, kexec@lists.infradead.org, linux-kernel@vger.kernel.org, Shaun Ruffell , bp@alien8.de, ebiederm@xmission.com, akpm@linux-foundation.org, dyoung@redhat.com, chaowang@redhat.com T24gTW9uLCBBdWcgMTEsIDIwMTQgYXQgMTA6NTE6MTBBTSAtMDcwMCwgSC4gUGV0ZXIgQW52aW4g d3JvdGU6Cj4gT24gMDgvMTEvMjAxNCAxMDo0MCBBTSwgU2hhdW4gUnVmZmVsbCB3cm90ZToKPiA+ IEZZSSwgaXQgbG9va3MgbGlrZSB0aGUgZm9sbG93aW5nIHBhdGNoIChjb21taXR0ZWQgaW4KPiA+ IDhmYzViNGQ0MTIxYzk1NDgyYjI1ODMpIGFkZHMgYSBuZXcgcmVxdWlyZW1lbnQgdG8gdXNlIGF0 IGxlYXN0IGdjYwo+ID4gNC40IHRvIGJ1aWxkIHRoZSBrZXJuZWw/Cj4gCj4gV2VsbCwgdG8gYnVp bGQgdGhlIGtlcm5lbCB3aXRoIHRoYXQgcGFydGljdWxhciBuZXcgZnVuY3Rpb25hbGl0eQo+IGVu YWJsZWQsIHllcy4KPiAKPiBIb3dldmVyLi4uCj4gCj4gPiBUaGUgYWJvdmUgIi1tY21vZGVsPWxh cmdlIiBjb21waWxlciBmbGFnIHByb2R1Y2VzIHRoZSBmb2xsb3dpbmcgb3V0cHV0IG9uIEdDQyA0 LjEuMi4KPiA+IAo+ID4gICAkIG1ha2UgbW9kdWxlc19wcmVwYXJlIDsgZ2NjIC0tdmVyc2lvbgo+ ID4gICAgIENISyAgICAgaW5jbHVkZS9jb25maWcva2VybmVsLnJlbGVhc2UKPiA+ICAgICBDSEsg ICAgIGluY2x1ZGUvZ2VuZXJhdGVkL3VhcGkvbGludXgvdmVyc2lvbi5oCj4gPiAgICAgQ0hLICAg ICBpbmNsdWRlL2dlbmVyYXRlZC91dHNyZWxlYXNlLmgKPiA+ICAgICBDQyAgICAgIGFyY2gveDg2 L3B1cmdhdG9yeS9wdXJnYXRvcnkubwo+ID4gICBhcmNoL3g4Ni9wdXJnYXRvcnkvcHVyZ2F0b3J5 LmM6MTogc29ycnksIHVuaW1wbGVtZW50ZWQ6IGNvZGUgbW9kZWwg4oCYbGFyZ2XigJkgbm90IHN1 cHBvcnRlZCB5ZXQKPiA+ICAgbWFrZVsxXTogKioqIFthcmNoL3g4Ni9wdXJnYXRvcnkvcHVyZ2F0 b3J5Lm9dIEVycm9yIDEKPiA+ICAgbWFrZTogKioqIFthcmNocHJlcGFyZV0gRXJyb3IgMgo+ID4g ICBnY2MgKEdDQykgNC4xLjIgMjAwODA3MDQgKFJlZCBIYXQgNC4xLjItNTQpCj4gPiAgIENvcHly aWdodCAoQykgMjAwNiBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIEluYy4KPiA+ICAgVGhpcyBp cyBmcmVlIHNvZnR3YXJlOyBzZWUgdGhlIHNvdXJjZSBmb3IgY29weWluZyBjb25kaXRpb25zLiAg VGhlcmUgaXMgTk8KPiA+ICAgd2FycmFudHk7IG5vdCBldmVuIGZvciBNRVJDSEFOVEFCSUxJVFkg b3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuCj4gPiAKPiA+IEkgZGlkIGEgcXVp Y2sgc2VhcmNoIGZvciBhIGRpc2N1c3Npb24gdGhlIGluZGljYXRlcyB0aGlzIGNvbXBpbGVyIGlz IG5vdwo+ID4gb2ZmaWNpYWxseSB0b28gb2xkIHRvIGJ1aWxkIHRoZSBrZXJuZWwgYnV0IGRpZCBu b3QgZmluZCBvbmUuCj4gPiAKPiA+IElmIHRoaXMgaXMgcmVxdWlyZWQsIG1heWJlIERvY3VtZW50 YXRpb24vQ2hhbmdlcyBuZWVkcyB0byBiZSB1cGRhdGVkCj4gPiB3aXRoIHRoZSBuZXcgbWluaW11 bSByZXF1aXJlZCB2ZXJzaW9uPwo+IAo+IC4uLiBJJ20gaGF2aW5nIGEgdmVyeSwgdmVyeSBoYXJk IHRpbWUgdG8gcGljdHVyZSBhIHJlYXNvbiB3aHkgdGhlCj4gImxhcmdlIiBtb2RlbCB3b3VsZCBi ZSBuZWNlc3Nhcnkgb3IgZXZlbiBkZXNpcmFibGUgZm9yIHRoZSBwdXJnYXRvcnkKPiBjb2RlLiAg VGhlICJzbWFsbCBQSUMiIG1vZGVsIHNlZW0gdG8gZml0IG11Y2ggYmV0dGVyLi4uCgpIaSBocGEs CgpJIHRvb2sgaXQgYmVjYXVzZSBrZXhlYy10b29scyB1c2VzIGl0IGFuZCBpbiBvbmUgb2YgdGhl IGNvbW1pdHRzIEVyaWMKZ2F2ZSBmb2xsb3dpbmcgcmVhc29uaW5nLgoKICAgIE9uIHg4Nl82NCB1 c2UgLW1jbW9kZWw9bGFyZ2Ugc28gdGhhdCB0aGUgY29kZSBpcyBidWlsdCB3aXRob3V0CiAgICBh bnkgMzJiaXQgYXNzdW1wdGlvbnMuICAtbWNtb2RlbD1tZWRpdW0gYW5kIC1tY21vZGVsPXNtYWxs CiAgICByZXN1bHQgaW50IGNvZGUgdGhhdCBoYXMgMzJiaXQgcmVsb2NhdGlvbnMgYWdhaW5zdCB2 YXJpYWJsZXMKICAgIHRoYXQgY2FuIGxpdmUgYW55d2hlcmUgaW4gdGhlIGFkZHJlc3Mgc3BhY2UK CldlIGRvIHdhbnQgdG8gbG9hZCBwdXJnYXRvcnkgYW55d2hlcmUgaW4gdGhlIGFkZHJlc3Mgc3Bh Y2UuIAoKQnV0IGlmIHRoZXJlIGFyZSBvdGhlciB3YXlzIHRvIGFjaGlldmUgdGhlIHNhbWUgdGhp bmcsIEkgd2lsbCBkbyB0aGF0CmNoYW5nZS4KClNvIHdoZW4geW91IHNheSAic21hbGwgUElDIiwg SSBuZWVkIHRvIHVzZSAtbWNtb2RlbD1zbWFsbCBhbmQgLWZQSUM/CgpJIGNhbiBnaXZlIHRoYXQg YSB0cnkuCgpUaGFua3MKVml2ZWsKCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fCmtleGVjIG1haWxpbmcgbGlzdAprZXhlY0BsaXN0cy5pbmZyYWRlYWQub3Jn Cmh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8va2V4ZWMK