From patchwork Mon Mar 26 15:08:17 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andy Whitcroft X-Patchwork-Id: 891041 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Authentication-Results: ozlabs.org; dmarc=fail (p=none dis=none) header.from=canonical.com Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) by ozlabs.org (Postfix) with ESMTP id 408yFg5LMTz9s31; Tue, 27 Mar 2018 02:08:23 +1100 (AEDT) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1f0TjQ-00041d-8m; Mon, 26 Mar 2018 15:08:20 +0000 Received: from youngberry.canonical.com ([91.189.89.112]) by huckleberry.canonical.com with esmtps (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:128) (Exim 4.86_2) (envelope-from ) id 1f0TjO-00041J-0u for kernel-team@lists.ubuntu.com; Mon, 26 Mar 2018 15:08:18 +0000 Received: from 1.general.apw.uk.vpn ([10.172.192.78] helo=localhost) by youngberry.canonical.com with esmtpsa (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.76) (envelope-from ) id 1f0TjN-00062O-OC for kernel-team@lists.ubuntu.com; Mon, 26 Mar 2018 15:08:17 +0000 Date: Mon, 26 Mar 2018 16:08:17 +0100 From: Andy Whitcroft To: Ubuntu Kernel Team Subject: [SRU xenial] LP#1758856 -- retpoline hinting support Message-ID: <20180326150817.GG4775@brain> MIME-Version: 1.0 Content-Disposition: inline User-Agent: Mutt/1.9.3 (2018-01-21) X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" We have been having horrible problems with the retpoline information as recorded in the ABI changing on every update. The below pull-request brings in some new support utilising the upstream retpoline annotations. As well as bringing in some new annotations where needed. This should in time bring us to the situation where the retpoline information for every branch is empty. Where unannotated entries remain they are in review and will be coverered off in later updates. These are not regressions. Proposing for SRU to xenial. -apw The following changes since commit fc74a5c4a98418105b4b246b935e3be90d6a635c: UBUNTU: Ubuntu-4.4.0-117.141 (2018-03-13 11:57:37 +0100) are available in the Git repository at: git://git.launchpad.net/~apw/ubuntu/+source/linux/+git/review retpoline-hints/xenial for you to fetch changes up to 91dbb39acb847daedd4de4f34308e674ce8e3f4b: UBUNTU: [Config] retpoine -- switch to new format (2018-03-26 11:48:04 +0100) ---------------------------------------------------------------- * retpoline hints: primary infrastructure and initial hints (LP: #1758856) - [Packaging] retpoline-extract: flag *0xNNN(%reg) branches - x86/speculation, objtool: Annotate indirect calls/jumps for objtool - x86/speculation, objtool: Annotate indirect calls/jumps for objtool on 32bit - x86/paravirt, objtool: Annotate indirect calls - x86/asm: Stop depending on ptrace.h in alternative.h - [Packaging] retpoline -- add safe usage hint support - [Packaging] retpoline-check -- only report additions - [Packaging] retpoline -- widen indirect call/jmp detection - [Packaging] retpoline -- elide %rip relative indirections - [Packaging] retpoline -- clear hint information from packages - SAUCE: modpost: add discard to non-allocatable whitelist - KVM: x86: Make indirect calls in emulator speculation safe - KVM: VMX: Make indirect call speculation safe - x86/boot, objtool: Annotate indirect jump in secondary_startup_64() - SAUCE: early/late -- annotate indirect calls in early/late initialisation code - SAUCE: vga_set_mode -- avoid jump tables - [Config] retpoine -- switch to new format * retpoline: ignore %cs:0xNNN constant indirections (LP: #1752655) - [Packaging] retpoline -- elide %cs:0xNNNN constants on i386 Acked-by: Stefan Bader