Received: by 10.223.176.46 with SMTP id f43csp2696197wra; Mon, 22 Jan 2018 01:47:19 -0800 (PST) X-Google-Smtp-Source: AH8x2268mOrMfS2nW8zdRjt9wW/aVfYznIyjuc4JWqZCEIVKkyQzTl1MvtVvgHjOnAcmpGBxAepe X-Received: by 2002:a17:902:9683:: with SMTP id n3-v6mr3062956plp.177.1516614439231; Mon, 22 Jan 2018 01:47:19 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1516614439; cv=none; d=google.com; s=arc-20160816; b=pzmX91LQ75t4HRQebFVwOm9nBF/MZw5wBroScz0C6IXux8IMYUJmcm5MS4ILmIyEAF scDJ4kXSgO4R8tGTCaNi8/6rHfSPvJxSGHuectpXqimYDAPd38QRxShCpbPs6V2qpQK5 1CE/cCt9o7DPJcec5DbIr2irabiWujiWLxSq2KuGKg0gYsGMtcdHJ0kmjULsbOGK8Orv m87QRFYyZ2Q9HSoTYqxKvFh5tI2vjpxApzzpNbiwQ5xe7XhggFQY5/wV5ghwjZntp2Vl iCWSPSMkKriOlxZEzVwNfZXwLMkLUWuf3feLpAB4mYe0IOivNZ8CJIi+oVeD+L81UiC3 BUGQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:user-agent:references :in-reply-to:message-id:date:subject:cc:to:from :arc-authentication-results; bh=oUYL8x8AFErJuoFAbeKzCs9OQxyuKZV1Y/J2FIzel3U=; b=bgJGNuarwGUg4EY81w17yOoljEbTQZAfpidoYQ5J4sTiGhGbB/2QldS89wYEC6NWdU Yoori5JhGy/dW3mqbbj/0quhNvqTZtX5KfhnlaBkGLnk1Y5q/zer4wSGyeQF5utmIvEg JSFx+HSiML3yzr+JWoHm+4bilmepmTfp2CYko4dt6xAz8qlPSVhqGVuIvQ5BckYNapLj C0qFfQnMewYsY3i7L9KWQCSu2FHuW8rhYlPC2EgfhL9XDfXbkYobGDb1irsOaagcjzlC q573Dyq8sKLn316XdkHAD0Od3eoEE37HE5T+AFDC5AwOU194WtQ+DONrRu4Io2+njxnV lyEw== ARC-Authentication-Results: i=1; mx.google.com; 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 y63si13580576pgd.540.2018.01.22.01.47.04; Mon, 22 Jan 2018 01:47:19 -0800 (PST) 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; 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 S1751313AbeAVIlP (ORCPT + 99 others); Mon, 22 Jan 2018 03:41:15 -0500 Received: from mail.linuxfoundation.org ([140.211.169.12]:58328 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751091AbeAVIlL (ORCPT ); Mon, 22 Jan 2018 03:41:11 -0500 Received: from localhost (LFbn-1-12258-90.w90-92.abo.wanadoo.fr [90.92.71.90]) by mail.linuxfoundation.org (Postfix) with ESMTPSA id A33F9EBD; Mon, 22 Jan 2018 08:41:10 +0000 (UTC) From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, David Woodhouse , Thomas Gleixner , Arjan van de Ven , Ingo Molnar , gnomes@lxorguk.ukuu.org.uk, Rik van Riel , Andi Kleen , Josh Poimboeuf , thomas.lendacky@amd.com, Peter Zijlstra , Linus Torvalds , Jiri Kosina , Andy Lutomirski , Dave Hansen , Kees Cook , Tim Chen , Paul Turner , Greg Kroah-Hartman Subject: [PATCH 4.4 15/53] x86/retpoline/hyperv: Convert assembler indirect jumps Date: Mon, 22 Jan 2018 09:40:07 +0100 Message-Id: <20180122083910.941636880@linuxfoundation.org> X-Mailer: git-send-email 2.16.0 In-Reply-To: <20180122083910.299610926@linuxfoundation.org> References: <20180122083910.299610926@linuxfoundation.org> User-Agent: quilt/0.65 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4.4-stable review patch. If anyone has any objections, please let me know. ------------------ From: David Woodhouse commit e70e5892b28c18f517f29ab6e83bd57705104b31 upstream. Convert all indirect jumps in hyperv inline asm code to use non-speculative sequences when CONFIG_RETPOLINE is enabled. Signed-off-by: David Woodhouse Signed-off-by: Thomas Gleixner Acked-by: Arjan van de Ven Acked-by: Ingo Molnar Cc: gnomes@lxorguk.ukuu.org.uk Cc: Rik van Riel Cc: Andi Kleen Cc: Josh Poimboeuf Cc: thomas.lendacky@amd.com Cc: Peter Zijlstra Cc: Linus Torvalds Cc: Jiri Kosina Cc: Andy Lutomirski Cc: Dave Hansen Cc: Kees Cook Cc: Tim Chen Cc: Greg Kroah-Hartman Cc: Paul Turner Link: https://lkml.kernel.org/r/1515707194-20531-9-git-send-email-dwmw@amazon.co.uk [ backport to 4.4, hopefully correct, not tested... - gregkh ] Signed-off-by: Greg Kroah-Hartman --- drivers/hv/hv.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) --- a/drivers/hv/hv.c +++ b/drivers/hv/hv.c @@ -31,6 +31,7 @@ #include #include #include +#include #include "hyperv_vmbus.h" /* The one and only */ @@ -103,9 +104,10 @@ static u64 do_hypercall(u64 control, voi return (u64)ULLONG_MAX; __asm__ __volatile__("mov %0, %%r8" : : "r" (output_address) : "r8"); - __asm__ __volatile__("call *%3" : "=a" (hv_status) : + __asm__ __volatile__(CALL_NOSPEC : + "=a" (hv_status) : "c" (control), "d" (input_address), - "m" (hypercall_page)); + THUNK_TARGET(hypercall_page)); return hv_status; @@ -123,11 +125,12 @@ static u64 do_hypercall(u64 control, voi if (!hypercall_page) return (u64)ULLONG_MAX; - __asm__ __volatile__ ("call *%8" : "=d"(hv_status_hi), + __asm__ __volatile__ (CALL_NOSPEC : "=d"(hv_status_hi), "=a"(hv_status_lo) : "d" (control_hi), "a" (control_lo), "b" (input_address_hi), "c" (input_address_lo), "D"(output_address_hi), - "S"(output_address_lo), "m" (hypercall_page)); + "S"(output_address_lo), + THUNK_TARGET(hypercall_page)); return hv_status_lo | ((u64)hv_status_hi << 32); #endif /* !x86_64 */