From: Thomas Garnier Subject: Re: [RFC 06/22] kvm: Adapt assembly for PIE support Date: Wed, 19 Jul 2017 15:44:48 -0700 Message-ID: References: <20170718223333.110371-1-thgarnie@google.com> <20170718223333.110371-7-thgarnie@google.com> <0cdd02e1-8bf2-41cd-f085-c338c2fd8e25@zytor.com> Mime-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Cc: Brian Gerst , Herbert Xu , "David S . Miller" , Thomas Gleixner , Ingo Molnar , Peter Zijlstra , Josh Poimboeuf , Arnd Bergmann , Matthias Kaehlcke , Boris Ostrovsky , Juergen Gross , Paolo Bonzini , =?UTF-8?B?UmFkaW0gS3LEjW3DocWZ?= , Joerg Roedel , Andy Lutomirski , Borislav Petkov , "Kirill A . Shutemov" , Borislav Petkov , Christian Borntraeger , "Rafael J . Wysocki" , Len Brown , Pavel Machek , Tejun Heo , Christo To: "H. Peter Anvin" Return-path: List-Post: List-Help: List-Unsubscribe: List-Subscribe: In-Reply-To: <0cdd02e1-8bf2-41cd-f085-c338c2fd8e25@zytor.com> List-Id: linux-crypto.vger.kernel.org On Wed, Jul 19, 2017 at 3:27 PM, H. Peter Anvin wrote: > On 07/19/17 08:40, Thomas Garnier wrote: >>> >>> This doesn't look right. It's accessing a per-cpu variable. The >>> per-cpu section is an absolute, zero-based section and not subject to >>> relocation. >> >> PIE does not respect the zero-based section, it tries to have >> everything relative. Patch 16/22 also adapt per-cpu to work with PIE >> (while keeping the zero absolute design by default). >> > > This is silly. The right thing is for PIE is to be explicitly absolute, > without (%rip). The use of (%rip) memory references for percpu is just > an optimization. I agree that it is odd but that's how the compiler generates code. I will re-explore PIC options with mcmodel=small or medium, as mentioned on other threads. > > -hpa > -- Thomas