Received: by 10.223.176.5 with SMTP id f5csp651657wra; Fri, 9 Feb 2018 05:08:53 -0800 (PST) X-Google-Smtp-Source: AH8x225sfx66zvEI0teTnlra2mhv89bjColBbdQyTVFj79rQS3sqNiQJd8JY3XAtcL2JzYWanXEn X-Received: by 2002:a17:902:bb8d:: with SMTP id m13-v6mr2549861pls.49.1518181733253; Fri, 09 Feb 2018 05:08:53 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1518181733; cv=none; d=google.com; s=arc-20160816; b=ZrkgrJHuVETeKW2yWIPlQcNgYUutVuLcnHahrad6n+x0OB3icp1VkTSNg8PEeMWJyZ B04CynATDMJQ71kzN29OihrqMQF1Nzd9sIgODlEpGhDun5pOPFF1wrt4r+xgGfl3eqM1 usRnJZk6OS1OgZ/Z82t+DCtTZq55KMfOogKkvn0e0To60MlaRLdnTazAM+ioXRErh1Cc EAfrZAuq8ehvZarlyF+sXgMi5tfrfqiQKnKGQV6RAZLeIaZ655kX9urAGM4rHnrExbej A+t5rh0tOsKmSMmIQg3BrIyvWizf2piP9V4cN4/iH/ZFR4Rg48l2Au7vsAZkUeF3zt6T Simw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:content-disposition :mime-version:subject:cc:to:from:date:arc-authentication-results; bh=DkTDIymW2ROsQoyoiOLtMYmwq6ed4QmmkY8SE7htqU4=; b=Vq/fGPH3iUtzaNDAuWKUkMw9H7TsYuuTWBE3DkvijcOWUhXBpluL45vUPhqXkX7eGE 8mb70SFmN36H4OkaG0S10wVJ7drxrYwBwYgRvOsC6lMEECRGFmp1Og+DdPFJGMtBHrT/ lkzlv6pqA74kOkYHV9cow3Al+5sFLEuydU+uFPoy4nVyLm0L3ge9Try39izZh2vJgK2p gP6SGWEtoTj2Gk/maVZr9qq+S66MqTPsh/Y4sbJu5j++Ns2oorzayEOAkuKraLLKJ4rK YeKwSQROy7WrU9AMfhGD9Aeh3jKu1nzvSebT06mhbdbmrzvlBTgnF6GEd/DHs1HadLl+ LQ3A== 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=ibm.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id h18si1648907pfi.167.2018.02.09.05.08.38; Fri, 09 Feb 2018 05:08:53 -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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=ibm.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751117AbeBINHW (ORCPT + 99 others); Fri, 9 Feb 2018 08:07:22 -0500 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]:33862 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751028AbeBINHV (ORCPT ); Fri, 9 Feb 2018 08:07:21 -0500 Received: from pps.filterd (m0098413.ppops.net [127.0.0.1]) by mx0b-001b2d01.pphosted.com (8.16.0.22/8.16.0.22) with SMTP id w19D4cag035767 for ; Fri, 9 Feb 2018 08:07:20 -0500 Received: from e06smtp11.uk.ibm.com (e06smtp11.uk.ibm.com [195.75.94.107]) by mx0b-001b2d01.pphosted.com with ESMTP id 2g1brn17dj-1 (version=TLSv1.2 cipher=AES256-SHA bits=256 verify=NOT) for ; Fri, 09 Feb 2018 08:07:19 -0500 Received: from localhost by e06smtp11.uk.ibm.com with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted for from ; Fri, 9 Feb 2018 13:07:18 -0000 Received: from b06cxnps3074.portsmouth.uk.ibm.com (9.149.109.194) by e06smtp11.uk.ibm.com (192.168.101.141) with IBM ESMTP SMTP Gateway: Authorized Use Only! Violators will be prosecuted; Fri, 9 Feb 2018 13:07:15 -0000 Received: from d06av22.portsmouth.uk.ibm.com (d06av22.portsmouth.uk.ibm.com [9.149.105.58]) by b06cxnps3074.portsmouth.uk.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id w19D7Fwr66846844; Fri, 9 Feb 2018 13:07:15 GMT Received: from d06av22.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id CB04B4C05C; Fri, 9 Feb 2018 13:01:03 +0000 (GMT) Received: from d06av22.portsmouth.uk.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id A15F54C044; Fri, 9 Feb 2018 13:01:03 +0000 (GMT) Received: from osiris (unknown [9.152.212.94]) by d06av22.portsmouth.uk.ibm.com (Postfix) with ESMTPS; Fri, 9 Feb 2018 13:01:03 +0000 (GMT) Date: Fri, 9 Feb 2018 14:07:13 +0100 From: Heiko Carstens To: Linus Torvalds Cc: Martin Schwidefsky , linux-kernel@vger.kernel.org, linux-s390@vger.kernel.org Subject: [GIT PULL] s390 updates for 4.16 merge window MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline X-TM-AS-GCONF: 00 x-cbid: 18020913-0040-0000-0000-0000042E2B9E X-IBM-AV-DETECTION: SAVI=unused REMOTE=unused XFE=unused x-cbparentid: 18020913-0041-0000-0000-000020D1E57B Message-Id: <20180209130713.GA3876@osiris> X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:,, definitions=2018-02-09_07:,, signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=2 phishscore=0 bulkscore=0 spamscore=0 clxscore=1011 lowpriorityscore=0 impostorscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1709140000 definitions=main-1802090168 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hello Linus, since Martin is on vacation you get the s390 pull request from me: please pull from the 'for-linus' branch of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux.git for-linus to receive the following updates: The main thing in this merge is the defense for the Spectre vulnerabilities. But there are other updates as well, the changes in more detail: * An s390 specific implementation of the array_index_mask_nospec function to the defense against spectre v1 * Two patches to utilize the new PPA-12/PPA-13 instructions to run the kernel and/or user space with reduced branch predicton. * The s390 variant of the 'retpoline' spectre v2 defense called 'expoline'. There is no return instruction for s390, instead an indirect branch is used for function return. The s390 defense mechanism for indirect branches works by using an execute-type instruction with the indirect branch as the target of the execute. In effect that turns off the prediction for the indirect branch. * Scrub registers in entry.S that contain user controlled values to prevent the speculative use of these values. * Re-add the second parameter for the s390 specific runtime-instrumentation system call and move the header file to uapi. The second parameter will continue to do nothing but older kernel versions only accepted valid real-time signal numbers. The details will be documented in the man-page for the system call. * Corrections and improvements for the s390 specific documentation * Add a line to /proc/sysinfo to display the CPU model dependent license-internal-code identifier * A header file include fix for eadm. * An error message fix in the kprobes code. * The removal of an outdated ARCH_xxx select statement. Thanks, Heiko Cornelia Huck (3): s390/cmf: fix kerneldoc s390/docs: mention subchannel types s390/docs: reword airq section Heiko Carstens (2): s390/runtime instrumentation: provide uapi header file s390/runtime_instrumentation: re-add signum system call parameter Hendrik Brueckner (2): s390/sysinfo: add and display licensed internal code identifier s390/cpum_cf: correct counter number of LAST_HOST_TRANSLATIONS Martin Schwidefsky (6): s390: scrub registers on kernel entry and KVM exit s390: add optimized array_index_mask_nospec s390/alternative: use a copy of the facility bit mask s390: add options to change branch prediction behaviour for the kernel s390: run user space and KVM guests with modified branch prediction s390: introduce execute-trampolines for branches Masami Hiramatsu (1): s390/kprobes: Fix %p uses in error messages Sebastian Ott (2): s390/eadm: fix CONFIG_BLOCK include dependency s390/cio: fix kernel-doc usage Ulf Magnusson (1): s390/kconfig: Remove ARCH_WANTS_PROT_NUMA_PROT_NONE select Documentation/driver-api/s390-drivers.rst | 32 +++- arch/s390/Kconfig | 46 +++++- arch/s390/Makefile | 10 ++ arch/s390/include/asm/barrier.h | 24 +++ arch/s390/include/asm/eadm.h | 2 +- arch/s390/include/asm/facility.h | 18 +++ arch/s390/include/asm/lowcore.h | 9 +- arch/s390/include/asm/nospec-branch.h | 18 +++ arch/s390/include/asm/processor.h | 4 + arch/s390/include/asm/runtime_instr.h | 67 +------- arch/s390/include/asm/sysinfo.h | 3 +- arch/s390/include/asm/thread_info.h | 4 + arch/s390/include/uapi/asm/runtime_instr.h | 74 +++++++++ arch/s390/kernel/Makefile | 4 + arch/s390/kernel/alternative.c | 26 ++- arch/s390/kernel/early.c | 5 + arch/s390/kernel/entry.S | 249 ++++++++++++++++++++++++++--- arch/s390/kernel/ipl.c | 1 + arch/s390/kernel/kprobes.c | 2 +- arch/s390/kernel/module.c | 62 +++++-- arch/s390/kernel/nospec-branch.c | 100 ++++++++++++ arch/s390/kernel/perf_cpum_cf_events.c | 2 +- arch/s390/kernel/processor.c | 18 +++ arch/s390/kernel/runtime_instr.c | 10 +- arch/s390/kernel/setup.c | 8 +- arch/s390/kernel/smp.c | 7 +- arch/s390/kernel/sysinfo.c | 2 + arch/s390/kernel/vmlinux.lds.S | 14 ++ drivers/s390/char/Makefile | 2 + drivers/s390/cio/chp.c | 10 +- drivers/s390/cio/cio.c | 2 +- drivers/s390/cio/cmf.c | 15 +- drivers/s390/cio/itcw.c | 2 +- drivers/s390/cio/qdio_main.c | 4 +- drivers/s390/cio/vfio_ccw_cp.c | 2 +- 35 files changed, 725 insertions(+), 133 deletions(-) create mode 100644 arch/s390/include/asm/nospec-branch.h create mode 100644 arch/s390/include/uapi/asm/runtime_instr.h create mode 100644 arch/s390/kernel/nospec-branch.c