Received: by 2002:a25:6193:0:0:0:0:0 with SMTP id v141csp1431788ybb; Thu, 2 Apr 2020 00:11:32 -0700 (PDT) X-Google-Smtp-Source: APiQypI4u8mD7I8P4nx20CFwFBGTBkN5zdARG6+A1V/9R/Z+dyyN9OR/kzovfb541yPsPTn+azTX X-Received: by 2002:a9d:7488:: with SMTP id t8mr1254403otk.219.1585811492133; Thu, 02 Apr 2020 00:11:32 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1585811492; cv=none; d=google.com; s=arc-20160816; b=fSJHI5FHFETpgTUbv7wowD35TEv/xoHM1bID+6PkIA+Nso9LhdaBORtIK1LBf2COhJ 1HtW2CUBexSA8QLIyJvZRZavLPybp7wEq0O01oDJlCTpD80l1zUXkQ9Nt0z9obqDpJL5 WVnIVr99nu2uie3dvgWgl3Vx/zWqE7ssODLFD9ScIkwcbPOWgkBvrIpILjQIX+3dsrkq x6e7Hhf8ktas46gJcLpqnUFazp72EhoztI0+eGKyiSZK1iAZtWj/BMoPydRxQL3WbrdZ OqURE54kyLkOiw3PuAlbRUhALb1/NKh38M7vo5qeO/4hMVxeuywuHA9q5/LXs7DY9nXy NF+g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :message-id:date:references:in-reply-to:cc:to:from:subject; bh=BSec/jnLXm3IYSambFxg+exr629Ye0mMMmOW9QLLbzM=; b=kOI/ngKv0gyJXp0QyVt/MDBeAhKfMprJmsv0hL7VOYs08Q/gBg/yltkw0bDppZ5PSy rw5wb3zNbojLWzQRY2CAdejnB0kFWHCHiL/CleLcvZDpgx/5IviQ/BrTCXont2pFJvRT sF47jLfKsIOgSa20hXsB1YmhXxtR7MqL5mmEEY6tKbsCtC3tFKdgGyNapseYi8WAgwAn fFDitJ4xeYhYXV0zqhkSB2J6KYPLAFYfcIogcQi9FgAn3m//KIaI54+6bR9+6VAprDSV jKHlikEN+RW39224TNi+rZ+2LBYgWHijGJJrgz3xGQxlIvD2OO0TJPgN7eKtJnGtm80Q tJXA== 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 s139si1975400oih.7.2020.04.02.00.11.19; Thu, 02 Apr 2020 00:11:31 -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; 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 S2387592AbgDBHKk (ORCPT + 99 others); Thu, 2 Apr 2020 03:10:40 -0400 Received: from mx0b-001b2d01.pphosted.com ([148.163.158.5]:35090 "EHLO mx0a-001b2d01.pphosted.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1728234AbgDBHKj (ORCPT ); Thu, 2 Apr 2020 03:10:39 -0400 Received: from pps.filterd (m0098416.ppops.net [127.0.0.1]) by mx0b-001b2d01.pphosted.com (8.16.0.42/8.16.0.42) with SMTP id 03273VSE148098; Thu, 2 Apr 2020 03:09:56 -0400 Received: from pps.reinject (localhost [127.0.0.1]) by mx0b-001b2d01.pphosted.com with ESMTP id 3020715xpt-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 02 Apr 2020 03:09:56 -0400 Received: from m0098416.ppops.net (m0098416.ppops.net [127.0.0.1]) by pps.reinject (8.16.0.36/8.16.0.36) with SMTP id 03274hHb151966; Thu, 2 Apr 2020 03:09:55 -0400 Received: from ppma04wdc.us.ibm.com (1a.90.2fa9.ip4.static.sl-reverse.com [169.47.144.26]) by mx0b-001b2d01.pphosted.com with ESMTP id 3020715xpf-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 02 Apr 2020 03:09:55 -0400 Received: from pps.filterd (ppma04wdc.us.ibm.com [127.0.0.1]) by ppma04wdc.us.ibm.com (8.16.0.27/8.16.0.27) with SMTP id 03276bJC025443; Thu, 2 Apr 2020 07:09:55 GMT Received: from b01cxnp22033.gho.pok.ibm.com (b01cxnp22033.gho.pok.ibm.com [9.57.198.23]) by ppma04wdc.us.ibm.com with ESMTP id 301x76y1p5-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 02 Apr 2020 07:09:55 +0000 Received: from b01ledav004.gho.pok.ibm.com (b01ledav004.gho.pok.ibm.com [9.57.199.109]) by b01cxnp22033.gho.pok.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 03279sVb34931104 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 2 Apr 2020 07:09:54 GMT Received: from b01ledav004.gho.pok.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id B0193112062; Thu, 2 Apr 2020 07:09:54 +0000 (GMT) Received: from b01ledav004.gho.pok.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 8C769112063; Thu, 2 Apr 2020 07:09:53 +0000 (GMT) Received: from [9.70.82.143] (unknown [9.70.82.143]) by b01ledav004.gho.pok.ibm.com (Postfix) with ESMTP; Thu, 2 Apr 2020 07:09:53 +0000 (GMT) Subject: [PATCH v10 02/14] powerpc/vas: Define nx_fault_stamp in coprocessor_request_block From: Haren Myneni To: mpe@ellerman.id.au Cc: mikey@neuling.org, srikar@linux.vnet.ibm.com, frederic.barrat@fr.ibm.com, ajd@linux.ibm.com, linux-kernel@vger.kernel.org, npiggin@gmail.com, hch@infradead.org, oohall@gmail.com, clg@kaod.org, sukadev@linux.vnet.ibm.com, linuxppc-dev@lists.ozlabs.org, herbert@gondor.apana.org.au In-Reply-To: <1585810846.2275.23.camel@hbabu-laptop> References: <1585810846.2275.23.camel@hbabu-laptop> Content-Type: text/plain; charset="UTF-8" Date: Thu, 02 Apr 2020 00:09:52 -0700 Message-ID: <1585811392.2275.36.camel@hbabu-laptop> Mime-Version: 1.0 X-Mailer: Evolution 2.28.3 Content-Transfer-Encoding: 7bit X-TM-AS-GCONF: 00 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:6.0.138,18.0.676 definitions=2020-04-01_04:2020-03-31,2020-04-01 signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 clxscore=1015 malwarescore=0 spamscore=0 lowpriorityscore=0 adultscore=0 mlxlogscore=868 suspectscore=1 bulkscore=0 phishscore=0 priorityscore=1501 mlxscore=0 impostorscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2003020000 definitions=main-2004020060 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Kernel sets fault address and status in CRB for NX page fault on user space address after processing page fault. User space gets the signal and handles the fault mentioned in CRB by bringing the page in to memory and send NX request again. Signed-off-by: Sukadev Bhattiprolu Signed-off-by: Haren Myneni --- arch/powerpc/include/asm/icswx.h | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/arch/powerpc/include/asm/icswx.h b/arch/powerpc/include/asm/icswx.h index 9872f85..965b1f3 100644 --- a/arch/powerpc/include/asm/icswx.h +++ b/arch/powerpc/include/asm/icswx.h @@ -108,6 +108,17 @@ struct data_descriptor_entry { __be64 address; } __packed __aligned(DDE_ALIGN); +/* 4.3.2 NX-stamped Fault CRB */ + +#define NX_STAMP_ALIGN (0x10) + +struct nx_fault_stamp { + __be64 fault_storage_addr; + __be16 reserved; + __u8 flags; + __u8 fault_status; + __be32 pswid; +} __packed __aligned(NX_STAMP_ALIGN); /* Chapter 6.5.2 Coprocessor-Request Block (CRB) */ @@ -135,10 +146,15 @@ struct coprocessor_request_block { struct coprocessor_completion_block ccb; - u8 reserved[48]; + union { + struct nx_fault_stamp nx; + u8 reserved[16]; + } stamp; + + u8 reserved[32]; struct coprocessor_status_block csb; -} __packed __aligned(CRB_ALIGN); +} __packed; /* RFC02167 Initiate Coprocessor Instructions document -- 1.8.3.1