From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mx0a-001b2d01.pphosted.com (mx0a-001b2d01.pphosted.com [148.163.156.1]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 553FA4071F1 for ; Sun, 7 Jun 2026 13:47:03 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=148.163.156.1 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780840024; cv=none; b=Vur+Kqkm/qJ5ujWzXTuq8OfRgmBWXLu/6z5EU/mWluty6suRb22DIWEcMh2BBvh0WyLNBhhuuUuexQr9S6recdeSldS1XdeRbmvTo7jjLI9k5JSYH4AkCx39I/pQ11Gyx8o656l7Pe/yTaRD8bfODbgVBQ4UHtLrhp8TaDwp7FE= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1780840024; c=relaxed/simple; bh=gzro46QiNAFQBTiOzrK8YQrpxPiCUR2lUW4mk4ALY2U=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=TdBFz6j/b6u3r6NIHUgb/JlFLGlsNyh4wVkRRaLGQthBFprlsus5syj6IldzNRsVR+zOlCI8XLswUtAgkFmRSbQtCa+XsJ/4p3NLT4kQG03WcOK/0Be8KnNPJGsSCAqhkwEk9+JebnGzqml8SCFQeCR5hnf6J2hdiCfA8QOkBLk= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.ibm.com; spf=pass smtp.mailfrom=linux.ibm.com; dkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com header.b=DVY6eeqM; arc=none smtp.client-ip=148.163.156.1 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.ibm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.ibm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=ibm.com header.i=@ibm.com header.b="DVY6eeqM" Received: from pps.filterd (m0356517.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 657Bpf1L1785952; Sun, 7 Jun 2026 13:46:49 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ibm.com; h=cc :content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=pp1; bh=OLg+b4 qM1sGc3N2vtA/7AvKX2jAg/14y5mNZXDK4KvY=; b=DVY6eeqMd052hOULNjraUQ w501FLosqfSUhd71f7Hl4kjmdv+TOPVkffP+e7pMsSmkq+qUp3wZosrNyTvnQsbC j3jKZ00ctBIUvnf4AfvGPQ3AzZXnZJXu+HS1DOL0Kvfy86tf0AiOEQ4Ua5gr9nG7 z6Fwv5vgemZ7SEvKk50P2UibngDAre6th4cRRI86DWLAeN64ZoJeIEaMBmp65b7f pw/lD9Jo8wB3XoSVl/TduUxNoZe2rDQl7KO1B5gEKFM2bQX+W1nfvXIJ+bIoAY9D 8HdIpFZ1hqVrR8oTISsNVajnC+FxcQ1v4loVE1zqBCxGRrjvF6nIhlphqG9jc2/g == Received: from ppma23.wdc07v.mail.ibm.com (5d.69.3da9.ip4.static.sl-reverse.com [169.61.105.93]) by mx0a-001b2d01.pphosted.com (PPS) with ESMTPS id 4emb953tte-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Sun, 07 Jun 2026 13:46:48 +0000 (GMT) Received: from pps.filterd (ppma23.wdc07v.mail.ibm.com [127.0.0.1]) by ppma23.wdc07v.mail.ibm.com (8.18.1.7/8.18.1.7) with ESMTP id 657DYbn6025571; Sun, 7 Jun 2026 13:46:47 GMT Received: from smtprelay02.fra02v.mail.ibm.com ([9.218.2.226]) by ppma23.wdc07v.mail.ibm.com (PPS) with ESMTPS id 4emycgsjc5-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Sun, 07 Jun 2026 13:46:47 +0000 (GMT) Received: from smtpav04.fra02v.mail.ibm.com (smtpav04.fra02v.mail.ibm.com [10.20.54.103]) by smtprelay02.fra02v.mail.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id 657DkhvQ51446218 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Sun, 7 Jun 2026 13:46:43 GMT Received: from smtpav04.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id A8BF820040; Sun, 7 Jun 2026 13:46:43 +0000 (GMT) Received: from smtpav04.fra02v.mail.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 9106520043; Sun, 7 Jun 2026 13:46:38 +0000 (GMT) Received: from [9.39.26.1] (unknown [9.39.26.1]) by smtpav04.fra02v.mail.ibm.com (Postfix) with ESMTP; Sun, 7 Jun 2026 13:46:38 +0000 (GMT) Message-ID: <6e1ec392-ad56-4625-9b44-2def6065bbc1@linux.ibm.com> Date: Sun, 7 Jun 2026 19:16:37 +0530 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v2 5/5] powerpc/powernv: Map EEH error types to OPAL error injection types To: Narayana Murty N , mahesh@linux.ibm.com, maddy@linux.ibm.com, mpe@ellerman.id.au, christophe.leroy@csgroup.eu, gregkh@linuxfoundation.org, oohall@gmail.com, npiggin@gmail.com Cc: linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org, tyreld@linux.ibm.com, vaibhav@linux.ibm.com, sbhat@linux.ibm.com, ganeshgr@linux.ibm.com, haren@linux.ibm.com, thuth@redhat.com References: <20260527072433.94510-1-nnmlinux@linux.ibm.com> <20260527072433.94510-6-nnmlinux@linux.ibm.com> Content-Language: en-US From: Sourabh Jain In-Reply-To: <20260527072433.94510-6-nnmlinux@linux.ibm.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-TM-AS-GCONF: 00 X-Proofpoint-Reinject: loops=2 maxloops=12 X-Authority-Analysis: v=2.4 cv=N4UZ0W9B c=1 sm=1 tr=0 ts=6a257649 cx=c_pps a=3Bg1Hr4SwmMryq2xdFQyZA==:117 a=3Bg1Hr4SwmMryq2xdFQyZA==:17 a=IkcTkHD0fZMA:10 a=FelO9ux0wxsA:10 a=VkNPw1HP01LnGYTKEx00:22 a=RnoormkPH1_aCDwRdu11:22 a=U7nrCbtTmkRpXpFmAIza:22 a=VnNF1IyMAAAA:8 a=EPVWBmRQiJyani0nr4UA:9 a=QEXdDO2ut3YA:10 X-Proofpoint-ORIG-GUID: F0qKY5h9FcnMDBbbEfmxaXTznR_Y_jnV X-Proofpoint-GUID: uDqlPqAIoAJ2DyVXD1iSW8OG1fHUgwlk X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwNjA3MDEzNSBTYWx0ZWRfX2XNee3Ecr3AM 0mBbj8y0lrcmrZuEeeGzAlXpL/+8og38/cQN6a530j0cqUIvOSm/9o4rTYPBqnxZ8vccHiGHx04 7lC8HHNKD/w2l5ryhgXmiF0jhubWDbbmnhSO9MHYOQr6m8aIu8Lf2i/G0MdiBtXKCA84u97L0Zx pDKuZjaceGcsW8MWcvRo7aKderRtUI94Sgxw8PCIqx7nN2NTKMGD/9Lvq7tQ+RMc1x1m4ZTDhNl gAMWOOUCrHFoKN9rS3e5DP/tbrcwIFkJxVF+eGBaC4yRdbdHk8E9wL3eLaaJVNoofuoyqi2eLXz EgsLv8O9+xsKPPAl+eVigOcMwt/9iRNsCl4bOhaa5ZqVb+zEJS+j9AUya1TJaSvWRPS7ghWe2Br rwJ+jXE1MJXE9D4Eo57ufxU/PHlD79r+YPlOXgPFqViC5dBvnpAmaKQ9eOpwZ9r/u+m7kY3SBXb y8gDKlMsz3BvQ6BzVow== X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.125,FMLib:17.12.100.49 definitions=2026-06-07_03,2026-06-05_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 bulkscore=0 malwarescore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 phishscore=0 impostorscore=0 adultscore=0 priorityscore=1501 suspectscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2605210000 definitions=main-2606070135 With the cover letter, this patch series seems to be about RTAS/pseries. I am not able to understand why powernv changes are part of this patch series. Could you please explain why they are included here? On 27/05/26 12:54, Narayana Murty N wrote: > Add a mapping layer in pnv_eeh_err_inject() to translate generic EEH > error types to OPAL-specific error injection types. This decouples the > VFIO error injection interface from OPAL implementation details. > > Map EEH_ERR_TYPE_32 to OPAL_ERR_INJECT_TYPE_IOA_BUS_ERR and > EEH_ERR_TYPE_64 to OPAL_ERR_INJECT_TYPE_IOA_BUS_ERR64. Return -EINVAL > for unsupported error types. > > This provides better abstraction between the generic EEH layer and > platform-specific implementation. > > Signed-off-by: Narayana Murty N > --- > arch/powerpc/include/uapi/asm/eeh.h | 20 ++++++++++++++++++-- > arch/powerpc/platforms/powernv/eeh-powernv.c | 11 +++++++++-- > 2 files changed, 27 insertions(+), 4 deletions(-) > > diff --git a/arch/powerpc/include/uapi/asm/eeh.h b/arch/powerpc/include/uapi/asm/eeh.h > index 86645cab2827..d88d82796905 100644 > --- a/arch/powerpc/include/uapi/asm/eeh.h > +++ b/arch/powerpc/include/uapi/asm/eeh.h > @@ -16,8 +16,24 @@ > #define EEH_PE_STATE_UNAVAIL 5 /* Unavailable */ > > /* EEH error types and functions */ > -#define EEH_ERR_TYPE_32 0 /* 32-bits error */ > -#define EEH_ERR_TYPE_64 1 /* 64-bits error */ > +#define EEH_ERR_TYPE_FATAL 0x1 /* Fatal error */ > +#define EEH_ERR_TYPE_RECOVERED_RANDOM 0x2 /* Recovered random event */ > +#define EEH_ERR_TYPE_RECOVERED_SPECIAL 0x3 /* Recovered special event */ > +#define EEH_ERR_TYPE_CORRUPTED_PAGE 0x4 /* Corrupted page */ > +#define EEH_ERR_TYPE_CORRUPTED_SLB 0x5 /* Corrupted SLB */ > +#define EEH_ERR_TYPE_TRANSLATOR_FAILURE 0x6 /* Translator failure */ > +#define EEH_ERR_TYPE_32 0x7 /* 32-bit IOA bus error */ > +#define EEH_ERR_TYPE_PLATFORM_SPECIFIC 0x8 /* Platform specific */ > +#define EEH_ERR_TYPE_CORRUPTED_DCACHE_START 0x9 /* Corrupted D-cache start */ > +#define EEH_ERR_TYPE_CORRUPTED_DCACHE_END 0xA /* Corrupted D-cache end */ > +#define EEH_ERR_TYPE_CORRUPTED_ICACHE_START 0xB /* Corrupted I-cache start */ > +#define EEH_ERR_TYPE_CORRUPTED_ICACHE_END 0xC /* Corrupted I-cache end */ > +#define EEH_ERR_TYPE_CORRUPTED_TLB_START 0xD /* Corrupted TLB start */ > +#define EEH_ERR_TYPE_CORRUPTED_TLB_END 0xE /* Corrupted TLB end */ > +#define EEH_ERR_TYPE_64 0xF /* 64-bit IOA bus error */ > +#define EEH_ERR_TYPE_UPSTREAM_IO_ERROR 0x10 /* Upstream IO error */ > + > +/* EEH supported function types */ > #define EEH_ERR_FUNC_MIN 0 > #define EEH_ERR_FUNC_LD_MEM_ADDR 0 /* Memory load */ > #define EEH_ERR_FUNC_LD_MEM_DATA 1 > diff --git a/arch/powerpc/platforms/powernv/eeh-powernv.c b/arch/powerpc/platforms/powernv/eeh-powernv.c > index db3370d1673c..ee156d397e93 100644 > --- a/arch/powerpc/platforms/powernv/eeh-powernv.c > +++ b/arch/powerpc/platforms/powernv/eeh-powernv.c > @@ -1169,8 +1169,15 @@ static int pnv_eeh_err_inject(struct eeh_pe *pe, int type, int func, > struct pnv_phb *phb = hose->private_data; > s64 rc; > > - if (type != OPAL_ERR_INJECT_TYPE_IOA_BUS_ERR && > - type != OPAL_ERR_INJECT_TYPE_IOA_BUS_ERR64) { > + /* Map generic EEH Type to OPAL Type */ > + switch (type) { > + case EEH_ERR_TYPE_32: > + type = OPAL_ERR_INJECT_TYPE_IOA_BUS_ERR; > + break; > + case EEH_ERR_TYPE_64: > + type = OPAL_ERR_INJECT_TYPE_IOA_BUS_ERR64; > + break; > + default: > pr_warn("%s: Invalid error type %d\n", > __func__, type); > return -ERANGE;