From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755435AbdCJPFd (ORCPT ); Fri, 10 Mar 2017 10:05:33 -0500 Received: from mx1.redhat.com ([209.132.183.28]:45650 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755378AbdCJPFc (ORCPT ); Fri, 10 Mar 2017 10:05:32 -0500 Date: Fri, 10 Mar 2017 10:05:30 -0500 From: Vivek Goyal To: Thomas Gleixner Cc: Mike Galbraith , Borislav Petkov , "Tobin C. Harding" , LKML , Nicholas Mc Guire , x86@kernel.org, Dave Young , Baoquan He Subject: Re: kexec, x86/purgatory: Cleanup the unholy mess Message-ID: <20170310150530.GB20954@redhat.com> References: <1489153665.4410.4.camel@gmx.de> <20170310142418.GA20954@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.7.1 (2016-10-04) X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.29]); Fri, 10 Mar 2017 15:05:32 +0000 (UTC) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Mar 10, 2017 at 03:58:20PM +0100, Thomas Gleixner wrote: > On Fri, 10 Mar 2017, Vivek Goyal wrote: > > I think we probably will have to initialize these global variables in > > purgatory itself and that puts them in .data section and relocation > > works. > > > > That's how the code was intially. I initialized value of > > purgatory_sha256_digest in the code and then did "readelf -a purgatory.o" > > and symbol section index changed from COM to 3. > > > > 13: 0000000000000000 32 OBJECT GLOBAL DEFAULT 3 > > purgatory_sha256_digest > > > > [ 3] .data PROGBITS 0000000000000000 00000120 > > 0000000000000020 0000000000000000 WA 0 0 32 > > Yeah, and then instead of doing it proper you relied on compiler/link magic > which is unreliable, undocumented and uncomprehensible. But that's just > compatible to the rest of kexec. Works for me is never a good engineering > principle. Agreed. That was not a very good idea. Thanks for fixing this. Vivek