Received: by 10.213.65.68 with SMTP id h4csp953509imn; Wed, 14 Mar 2018 05:25:42 -0700 (PDT) X-Google-Smtp-Source: AG47ELtPy7h6M9qCKit7n3rtW6ml1ED1kD6Mwr2B77+1JDNkWaqbpEDMNAEyslFJ4OVzwHOL1RcI X-Received: by 10.98.80.15 with SMTP id e15mr4057165pfb.90.1521030342677; Wed, 14 Mar 2018 05:25:42 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1521030342; cv=none; d=google.com; s=arc-20160816; b=L7F2j87jZT6XCSukWJ+FjkYmztpfAP6TwEqoWqF5JR+mV/bDmtpK67NvvcGcuRSaYL y6JrwUKZiksFhLej2jyVYMOoTea6o5Qhlyge+xHEpQoL9TYeUJmWh4sL5rjkxm2joXMx I/FoycQWmca6n8C/jdZ7XK3Qer4VgesgZs71UHAmsapdX6ikijUFv06ZPkqZrYPb7IaS k5F71VL+0mQdebqNZuV11PkhZv0QrXegWDkPgEqitVMrQTAhZy75BKrc5gXl12ESB+3M 9jH7vBmv8fSmodCEDmJkRmxjaMJVlvkxw0JF71I+TSdhLxy/UMpJNsjPwQSDZ7hzPwHG WiHA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:dkim-signature:arc-authentication-results; bh=yolqyrI25y0V9Fhi4NTsBP6APvYF1xOFj1Fbem9k5to=; b=AVI0Mf6Xc/tZRt0sc2vZj8PPxvO9cKY/hijibgEheOhbUkg9socQnKINsy9TFYkrYJ OHU3GYTs1KwWOANNydlBt47A6vjCENdFXAMgupuAD1YnHRP2TJiPTar80E5jvkXSAkuX vOcxBFA0tvN7ENL6o9jSxFidTU4LsSwafSimLfkoS61XHnU/yE6uRg6NpAOt/66/I554 TsuokVdiuqwtH7HeFoVR/EuNTMCeyE1p7c58drH7kL/sAHlAurW2aQjgtI9HVoZFPcry If5Kp7dKSpJ+KANXEjpaRJHJIlrCS/R0KjkDn2gBsJketsoFi8/Gu3RwVmRd2aAknPjg WQbA== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@gmail.com header.s=20161025 header.b=pRIlZETY; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id i2si1774048pgs.639.2018.03.14.05.25.27; Wed, 14 Mar 2018 05:25:42 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=fail header.i=@gmail.com header.s=20161025 header.b=pRIlZETY; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751964AbeCNMYL (ORCPT + 99 others); Wed, 14 Mar 2018 08:24:11 -0400 Received: from mail-wm0-f67.google.com ([74.125.82.67]:40068 "EHLO mail-wm0-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751015AbeCNMYK (ORCPT ); Wed, 14 Mar 2018 08:24:10 -0400 Received: by mail-wm0-f67.google.com with SMTP id t6so3675791wmt.5 for ; Wed, 14 Mar 2018 05:24:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=yolqyrI25y0V9Fhi4NTsBP6APvYF1xOFj1Fbem9k5to=; b=pRIlZETYic/EI+wI71L8aGhKa8zAooZ0dr3GA133vpkHPDgSGla1+opmFObQmBPMfM zbVOpDw+kXFL+AUVWnGan9XoWj25pmSRcpL10THlpn0DDsuMbefhO38xxrdGxvvE7uLI W7YHYo0i8DaNuwVr2q3E3qQ3RhIzlb69Qm0r3tUuwW09jwPecbjWgmdIG52qdTIVZ/97 if6IwLFuY4quWyOQu1YzwI2UHsP1FdvNiDzcUmJY2kY8TEQ6WpGlK/T8ilsxzMdPT1V4 FucE6QfWDszvaZH8RvZuQ1DZiRqlb5XoJCerJT3caqVs60K/VkQUBA+MryTsBV12BcKV LjwA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:date:from:to:cc:subject:message-id :references:mime-version:content-disposition:in-reply-to:user-agent; bh=yolqyrI25y0V9Fhi4NTsBP6APvYF1xOFj1Fbem9k5to=; b=HRau6ACV4cbh0P/RNmsBcOoQcTqkuy3MXBC/PUd3otDzU5D0elOqzzV81KqwCEqlZM Gen+IRb+L2gaLH3QIFszbY73NThHfVOXeai3tk44BEKz61VoRL+RlJbIKG0Ojdj2vVHZ PzzCfkNdBpZIgTROj0iY7oBlevo42fheTzmYgC5biJdb9YOk1i691jgnoBRtIt4plnFv 24/EM+3Fmm2sMeAdhn9spadUaB1R2TNfz774zpM8ZA9Abr4SFFjPZfJ83sjc5Gr/5s/J 90RWdLSYe9C3WQp00AS5plf7OSyFfBC4dI1D2RTJHD+xXy6RlP94wQQqatoRyeMh6j1o lf7A== X-Gm-Message-State: AElRT7G3gc8L66WhWfoF579d4VfIGaT6Wlb/LVK2298irfUFZqN94cLL Om8F0TNNO0VKcMCJ+ljnJEM= X-Received: by 10.28.210.85 with SMTP id j82mr1484917wmg.64.1521030249153; Wed, 14 Mar 2018 05:24:09 -0700 (PDT) Received: from gmail.com (2E8B0CD5.catv.pool.telekom.hu. [46.139.12.213]) by smtp.gmail.com with ESMTPSA id q21sm1705598wmd.40.2018.03.14.05.24.07 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Wed, 14 Mar 2018 05:24:08 -0700 (PDT) Date: Wed, 14 Mar 2018 13:24:06 +0100 From: Ingo Molnar To: Peter Zijlstra Cc: Andy Whitcroft , Thomas Gleixner , Ingo Molnar , David Woodhouse , "H. Peter Anvin" , x86@kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 1/1] x86/speculation, objtool: Annotate indirect calls/jumps for objtool on 32bit Message-ID: <20180314122405.g5mxuzr5wd4p4xr3@gmail.com> References: <20180314112427.22351-1-apw@canonical.com> <20180314115125.GS4043@hirez.programming.kicks-ass.net> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20180314115125.GS4043@hirez.programming.kicks-ass.net> User-Agent: NeoMutt/20170609 (1.8.3) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org * Peter Zijlstra wrote: > On Wed, Mar 14, 2018 at 11:24:27AM +0000, Andy Whitcroft wrote: > > In 9e0e3c5130e9 ("x86/speculation, objtool: Annotate indirect calls/jumps > > for objtool") we added annotations for CALL_NOSPEC/JMP_NOSPEC on x86 64bit. > > We did not annotate the 32bit path. Annotate it similarly. > > > > Signed-off-by: Andy Whitcroft > > --- > > arch/x86/include/asm/nospec-branch.h | 5 ++++- > > 1 file changed, 4 insertions(+), 1 deletion(-) > > > > While reviewing indirect calls in our builds I noted that the > > i386 retpoline CALL_NOSPEC is not annotated safe even though > > its amd64 equivalent is. I cannot see any reason this is not > > also inherantly safe. Peter was there a reason that you did > > not annotate this one too? Anyhow, on the assumption this was > > just missed, this patch annotates it. > > Yeah, just an oversight aided by the fact that I (obviously) never build > 32bit kernels. > > > diff --git a/arch/x86/include/asm/nospec-branch.h b/arch/x86/include/asm/nospec-branch.h > > index d0dabeae0505..07886162bdf8 100644 > > --- a/arch/x86/include/asm/nospec-branch.h > > +++ b/arch/x86/include/asm/nospec-branch.h > > @@ -183,7 +183,10 @@ > > * otherwise we'll run out of registers. We don't care about CET > > * here, anyway. > > */ > > -# define CALL_NOSPEC ALTERNATIVE("call *%[thunk_target]\n", \ > > +# define CALL_NOSPEC \ > > + ALTERNATIVE( \ > > + ANNOTATE_RETPOLINE_SAFE \ > > + "call *%[thunk_target]\n", \ > > " jmp 904f;\n" \ > > " .align 16\n" \ > > "901: call 903f;\n" \ > > Acked-by: Peter Zijlstra (Intel) Applied, thanks guys! Ingo