From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id A49E8C27C4F for ; Fri, 21 Jun 2024 19:02:36 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:Content-Type: Content-Transfer-Encoding:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:In-Reply-To:MIME-Version:References:Message-ID: Subject:Cc:To:From:Date:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=7mzz4txJ3H/I2DZyImF+EadJ/HlWhPeSeW/vEpc9voU=; b=fvjBe+qU0rAI3EYh00Q7pk6D1L Pmye9Nbkz+o3mnHGqHk/mxvlWafmKC5cVWDtYa0Q6F6T8YiZbEkTK00ag5cItHalQ06Qo786Eck26 QGMwqPBkRL0NxfFu9a4fb2ok1puMZGlrUfvZroPOlNjOLy+yycrNfvGSreIGWrXQl9Fqy4f7ZYv52 i+xbX777bCHpXp3FEqXqGO/2T0FnhSz7X+oVhWuEJz7vDzVeakCI40dgvEF1h7RFFfsXdEh393OgY AhdTiMEkOPLx87CLIBSJtrqKOM4RHfdpzELf3YS9qb4rQqTW5tZhETNUrrCfKy47gEiXrJOTICAGR qO5Fylag==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1sKjWp-0000000AJ2X-0vWt; Fri, 21 Jun 2024 19:02:31 +0000 Received: from mail-pl1-x62a.google.com ([2607:f8b0:4864:20::62a]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1sKjWl-0000000AJ1a-0dnJ for linux-riscv@lists.infradead.org; Fri, 21 Jun 2024 19:02:29 +0000 Received: by mail-pl1-x62a.google.com with SMTP id d9443c01a7336-1f9de13d6baso14134765ad.2 for ; Fri, 21 Jun 2024 12:02:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rivosinc-com.20230601.gappssmtp.com; s=20230601; t=1718996544; x=1719601344; darn=lists.infradead.org; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date:from:to :cc:subject:date:message-id:reply-to; bh=2ejfWjZZ+2p6n8C/uYSvX+3GJZETSO2UUSX42MmnXY0=; b=iZsgTIXvjh+jPOWsUQSBBsHFXdfE2X1Tvz6kFh1zbWpcToNF1hn14Dvk0q9VO/dqO9 qx2lp+riUtOMklysf/+nEvgnhl0JHtWm12zwAYkvSmOyu1Y4ND+a2A96LzFjaPrlQcJ0 vYbw6nXq2UidrfnNCyRJonXyxGQ93g0nb+MpFEdwQk7IJHXTvHanHC4Td3NvYoZbIDIc dkBbxhYtE4jH9Y+2CPVdzv4uybj/zJKlODSzqYf6kX8kpMVxEJL3UglqRQOecCjWKIbp ZNcse6vKFJHlQP3AUuHHo8IE+ZCg3C/FGE4kU6SEQSWqPyAXdaGkPE7xoRAoQsT0sv/h bXQQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1718996544; x=1719601344; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=2ejfWjZZ+2p6n8C/uYSvX+3GJZETSO2UUSX42MmnXY0=; b=HOKM/FYLGHgDz1sRt1WAiMbkIME0LRdfyaYKmZNDFMbQ8dXOB5aSA/EE1hJ+pyfsOz My9ceQ4Dc8dHquoDmyQg7GruqdzSeXO0ih4ayLCmHAZnZgvxLyDvzfkO+1HagdSAc0uh 6d7JhDlNKcpib003J1E44RT3rzqQ49F80hxtDXUJkHTn5EhcBnqiU0t0Am0Jsd4+cuJt Abe02lpGhrJac4oPJxzhqt3aSWYDRE/99qwNBWtMN87Wc3Z5P6BYbLmsbTGs3BPyO1Ev ffse9GRnWn8OYbspl/qzE844/wA8Y28GpB2akOKubUM3fkoI9S+LGuOwVFilDB8hFoNW MSMQ== X-Forwarded-Encrypted: i=1; AJvYcCWardLpV6YZLERu4Qowfrd+KriytdjLohiTTJAmxkuuSlcEHsROD++W4dqEfFCeyFxvXDEA+RrS25x1W/7hHrRrmSar90OiZRuBI0jtZDea X-Gm-Message-State: AOJu0YynNyTmKPwSCRD/vkMwtfyffppdee8sjoPgRU/NhWEEBrtxhxo4 l4FDF3kJ4dmbJZg0ZJyj92XN1Xu4ahR0irPe5jOWohL03zem4o+RaUfYN8Byc7Y= X-Google-Smtp-Source: AGHT+IHNesJtO0UqquNF67ECCx6rJvGVvWqByp4IpDMUVIaiuwlaYkut+gD3Q7guqC20bvpJVZvxbQ== X-Received: by 2002:a17:902:da91:b0:1f9:c289:7378 with SMTP id d9443c01a7336-1f9c2897606mr82016305ad.33.1718996543540; Fri, 21 Jun 2024 12:02:23 -0700 (PDT) Received: from debug.ba.rivosinc.com ([64.71.180.162]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-1f9eb2f051bsm17459975ad.51.2024.06.21.12.02.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 21 Jun 2024 12:02:23 -0700 (PDT) Date: Fri, 21 Jun 2024 12:02:21 -0700 From: Deepak Gupta To: Jisheng Zhang Cc: =?iso-8859-1?Q?Cl=E9ment_L=E9ger?= , Cyril Bur , Paul Walmsley , Palmer Dabbelt , Albert Ou , Samuel Holland , linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 3/6] riscv: convert bottom half of exception handling to C Message-ID: References: <20240616170553.2832-1-jszhang@kernel.org> <20240616170553.2832-4-jszhang@kernel.org> <95a081a9-2307-4e5b-8ae2-082be16b327e@rivosinc.com> MIME-Version: 1.0 Content-Disposition: inline In-Reply-To: X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240621_120227_222110_491C1CC9 X-CRM114-Status: GOOD ( 22.06 ) X-BeenThere: linux-riscv@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="utf-8"; Format="flowed" Sender: "linux-riscv" Errors-To: linux-riscv-bounces+linux-riscv=archiver.kernel.org@lists.infradead.org T24gRnJpLCBKdW4gMjEsIDIwMjQgYXQgMDc6NTY6NTZBTSArMDgwMCwgSmlzaGVuZyBaaGFuZyB3 cm90ZToKPk9uIFRodSwgSnVuIDIwLCAyMDI0IGF0IDEwOjA2OjE1QU0gKzAyMDAsIENsw6ltZW50 IEzDqWdlciB3cm90ZToKPj4KPj4KPj4gT24gMjAvMDYvMjAyNCAwMjowMiwgQ3lyaWwgQnVyIHdy b3RlOgo+PiA+IE9uIFRodSwgSnVuIDIwLCAyMDI0IGF0IDM6MDTigK9BTSBEZWVwYWsgR3VwdGEg PGRlYnVnQHJpdm9zaW5jLmNvbT4gd3JvdGU6Cj4+ID4+Cj4+ID4+IE9uIE1vbiwgSnVuIDE3LCAy MDI0IGF0IDAxOjA1OjUwQU0gKzA4MDAsIEppc2hlbmcgWmhhbmcgd3JvdGU6Cj4+ID4+PiBGb3Ig cmVhZGFiaWxpdHksIG1haW50YWluYWJpbGl0eSBhbmQgZnV0dXJlIHNjYWxhYmlsaXR5LCBjb252 ZXJ0IHRoZQo+PiA+Pj4gYm90dG9tIGhhbGYgb2YgdGhlIGV4Y2VwdGlvbiBoYW5kbGluZyB0byBD Lgo+PiA+Pj4KPj4gPj4+IE1vc3RseSB0aGUgYXNzZW1ibHkgY29kZSBpcyBjb252ZXJ0ZWQgdG8g QyBpbiBhIHJlbGF0aXZlbHkKPj4gPj4+IHN0cmFpZ2h0Zm9yd2FyZCBtYW5uZXIuCj4+ID4+Pgo+ PiA+Pj4gSG93ZXZlciwgdGhlcmUgYXJlIHR3byBtb2RpZmljYXRpb25zIEkgbmVlZCB0byBtZW50 aW9uOgo+PiA+Pj4KPj4gPj4+IDEuIHRoZSBDU1JfQ0FVU0UgcmVnIHJlYWRpbmcgYW5kIHNhdmlu ZyBpcyBtb3ZlZCB0byB0aGUgQyBjb2RlCj4+ID4+PiBiZWNhdXNlIHdlIG5lZWQgdGhlIGNhdXNl IHRvIGRpc3BhdGNoIHRoZSBleGNlcHRpb24gaGFuZGxpbmcsCj4+ID4+PiBpZiB3ZSBrZWVwIHRo ZSBjYXVzZSByZWFkaW5nIGFuZCBzYXZpbmcsIHdlIGVpdGhlciBwYXNzIGl0IHRvCj4+ID4+PiBk b190cmFwcygpIHZpYS4gMm5kIHBhcmFtIG9yIGdldCBpdCBmcm9tIHB0X3JlZ3Mgd2hpY2ggYW4g ZXh0cmEKPj4gPj4+IG1lbW9yeSBsb2FkIGlzIG5lZWRlZCwgSSBkb24ndCBsaWtlIGFueSBvZiB0 aGUgdHdvIHNvbHV0aW9ucyBiZWNhc2UKPj4gPj4+IHRoZSBleGNlcHRpb24gaGFuZGxpbmcgc2l0 cyBpbiBob3QgY29kZSBwYXRoLCBldmVyeSBpbnN0cnVjdGlvbgo+PiA+Pj4gbWF0dGVycy4KPj4g Pj4KPj4gPj4gQ0M6IENsZW1lbnQuCj4+ID4+Cj4+ID4+IEkgdGhpbmsgaXRzIGJldHRlciB0byBz YXZlIGF3YXkgY2F1c2UgaW4gcHRfcmVncyBwcmlvciB0byBjYWxsaW5nCj4+ID4+IGBkb190cmFw c2AuIE9uY2UgY29udHJvbCBpcyB0cmFuc2ZlcnJlZCB0byBDIGNvZGUgaW4gYGRvX3RyYXBzYCwK Pj4gPj4gYW5vdGhlciB0cmFwIGNhbiBoYXBwZW4uIEl0J3MgYSBwcm9ibGVtIGFueXdheXMgdG9k YXkgd2l0aG91dCBDUFUgc3VwcG9ydC4KPj4gPj4KPj4gPj4gQWx0aG91Z2ggd2l0aCBTc2RibHRy cCBbMV0gZXh0ZW5zaW9uIGFuZCBpdCBrZXJuZWwgc3VwcG9ydCBbMl0gZm9yIGl0LAo+PiA+PiBJ IGV4cGVjdCBhc20gY29kZSB3b3VsZCBjbGVhciB1cCBgU0RUYCBiaXQgaW4gbXN0YXR1cy4gV2hl bmV2ZXIgYFNzZGJsdHJwYCBsYW5kcywKPgo+SGkgRGVlcGFrLCBDbMOpbWVudCwKPgo+Q3VycmVu dGx5LCBTUl9JRSBiaXQgaXMgaXMgc2V0KHNldHRpbmcgbWVhbnMgZW5hYmxlIGlycSkgaW4gYywg Y291bGQgdGhlCj4nU0RUJyBiaXQgYmUgY2xlYXJlZCBpbiBjIGFzIHdlbGwgd2hlbiBTc2RibHRy cCBsYW5kcz8KClNEVCBpcyBwbGFjZWQgaW4gc3N0YXR1cyBDU1IuIFNvIHllcyBpdHMgcG9zc2li bGUgdG8gY2xlYXIgaXQgaW4gQyBpbiBgZG9fdHJhcHNgLgpBbHRob3VnaCB0aGVuIHlvdSAoYW5k IGFueSBmdXR1cmUgZGV2ZWxvcGVyKSB3aWxsIGhhdmUgdG8gcGF5IGV4dHJhIGF0dGVudGlvbiB0 byB0aGlzCmZ1bmN0aW9uIGJlY2F1c2UgdGhpcyBmdW5jdGlvbiBjYW4gYmUgbmVzdGVkIGRlcGVu ZGluZyBvbiB3aGVuIFNEVCBpcyBjbGVhcmVkIG9yIG5vdC4KTWFpbnRhaW5lbmNlIChhbmQgaW50 cm9kdWN0aW9ucyBvZiBlcnJvcikgd2lzZSBpdCBkb2Vzbid0IGxvb2sgaWRlYWwuCgpJZiB3ZSBr ZWVwIHJlYWQgb2YgYGNhdXNlYCBpbiBhc20gY29kZSBhbmQgcGFzcyBpdCBhcyBwYXJhbWV0ZXIg dG8gYGRvX3RyYXBzYCwgaXQKY2xlYW5seSBkZWZpbmVzIHRoZSBib3VuZGFyeSBvZiB3aGljaCBm dW5jdGlvbnMgY2FuIGJlIG5lc3RlZCBhbmQgd2hpY2ggY2FuJ3QuIEl0CmhlbHBzIGZlYXR1cmVz IGxpa2UgU1NFIFsxLCAyXSAod2hpY2ggZXhwZWN0IG5lc3Rpbmcgb2YgZXZlbnRzIGFuZCBoYWQg dG8gYmUgY3JlYXRpdmUpCnRvIGltcGxlbWVudCBjbGVhbmVyIGxvZ2ljLgoKWzFdIGh0dHBzOi8v bGlzdHMucmlzY3Yub3JnL2cvdGVjaC1wcnMvbWVzc2FnZS81MTUKWzJdIGh0dHBzOi8vbHBjLmV2 ZW50cy9ldmVudC8xNy9jb250cmlidXRpb25zLzE0NzkvYXR0YWNobWVudHMvMTI0My8yNTI2L1NT RV9QbHVtYmVycy5wZGYKCj4KPlRoYW5rcwo+PiA+PiBJIHRoaW5rIGBkb190cmFwc2Agc2hvdWxk IGV4cGVjdCBuZXN0aW5nIG9mIHRyYXBzIGFuZCB0aHVzIGNhdXNlIHNob3VsZCBiZSBzYXZlZAo+ PiA+PiBhd2F5IGJlZm9yZSBpdCBnZXRzIGNvbnRyb2wgc28gdGhhdCBzYWZlbHkgdHJhcHMgY2Fu IGJlIG5lc3RlZC4KPj4KPj4gSGksCj4+Cj4+IEluZGVlZCwgZXZlcnkgcmVnaXN0ZXIgdGhhdCBp cyAidW5pcXVlIiB0byBhIHRyYXAgYW5kIHRoYW4gY2FuIGJlCj4+IG92ZXJ3cml0dGVuIGJ5IGEg c2Vjb25kIHRyYXAgc2hvdWxkIGJlIHNhdmVkIGJlZm9yZSByZWVuYWJsaW5nIHRoZW0gd2hlbgo+ PiB1c2luZyBTc2RibHRycC4gU28gdGhhdCB3b3VsZCBiZSBuaWNlIHRvIHByZXNlcnZlIHRoYXQu Cj4+Cj4+ID4+Cj4+ID4KPj4gPiBJcyBhIHBvc3NpYmxlIHNvbHV0aW9uIHRvIGRvIGJvdGggb3B0 aW9ucyBKaXNoZW5nIHN1Z2dlc3RlZD8gU2F2ZSB0aGUKPj4gPiBjYXVzZSBiZWZvcmUKPj4gPiBj YWxsaW5nIGRvX3RyYXBzIGJ1dCBhbHNvIHBhc3MgaXQgdmlhIHNlY29uZCBwYXJhbT8KPj4KPj4g SSBndWVzcyBzbyBpZiBpdCBmaXRzIHlvdXIgcGVyZm9ybWFuY2UgcmVxdWlyZW1lbnRzLgo+Pgo+ PiBUaGFua3MsCj4+Cj4+IENsw6ltZW50Cj4+Cj4+ID4KPj4gPj4gWzFdIC0gaHR0cHM6Ly9naXRo dWIuY29tL3Jpc2N2L3Jpc2N2LWRvdWJsZS10cmFwL3JlbGVhc2VzL2Rvd25sb2FkL3YxLjAtcmMx L3Jpc2N2LWRvdWJsZS10cmFwLnBkZgo+PiA+PiBbMl0gLSBodHRwczovL2xvcmUua2VybmVsLm9y Zy9hbGwvMjAyNDA0MTgxMzM5MTYuMTQ0MjQ3MS0xLWNsZWdlckByaXZvc2luYy5jb20vCj4+ID4+ Cj4+ID4+Pgo+PiA+Pj4gMi5UbyBjb3BlIHdpdGggU0lGSVZFX0NJUF80NTMgZXJyYXRhLCBpdCBs b29rcyBsaWtlIHdlIGRvbid0IG5lZWQKPj4gPj4+IGFsdGVybmF0aXZlIG1lY2hhbmlzbSBhbnkg bW9yZSBhZnRlciB0aGUgYXNtLT5jIGNvbnZlcnRpb24uIEp1c3QKPj4gPj4+IHJlcGxhY2UgdGhl IGV4Y3BfdmVjdF90YWJsZSB0d28gZW50cmllcy4KPj4gPj4+Cj4+ID4+PiBTaWduZWQtb2ZmLWJ5 OiBKaXNoZW5nIFpoYW5nIDxqc3poYW5nQGtlcm5lbC5vcmc+Cj4+ID4+Cj4+ID4+IF9fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4+ID4+IGxpbnV4LXJpc2N2 IG1haWxpbmcgbGlzdAo+PiA+PiBsaW51eC1yaXNjdkBsaXN0cy5pbmZyYWRlYWQub3JnCj4+ID4+ IGh0dHA6Ly9saXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtcmlzY3YK Cl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmxpbnV4LXJp c2N2IG1haWxpbmcgbGlzdApsaW51eC1yaXNjdkBsaXN0cy5pbmZyYWRlYWQub3JnCmh0dHA6Ly9s aXN0cy5pbmZyYWRlYWQub3JnL21haWxtYW4vbGlzdGluZm8vbGludXgtcmlzY3YK From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pl1-f180.google.com (mail-pl1-f180.google.com [209.85.214.180]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 875534644C for ; Fri, 21 Jun 2024 19:02:24 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.180 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718996547; cv=none; b=b0gTEsjD8ME6hm8+3ast3S+QmKKmvRBM519qOv35nP0aI0MhNkHpOmNbqdbiDm+9gnxiwMVlpfTW2u4hq3ED92vcijNp532LOOoxvTQVs0Yup5z2NeAmVS676PiadV6/pCpfmDPPms2LRgt5OALPErEO2QMX+iNDjj1sSDFnAvw= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1718996547; c=relaxed/simple; bh=2ejfWjZZ+2p6n8C/uYSvX+3GJZETSO2UUSX42MmnXY0=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=dObjQ38enlb3DZ4k9eZrkIV8v5K2f728M/8k5egbIhRAx1Hg96n5VHfX9lpgz3dyJXO9in8dzWmFzEShQ1VUKz1f13Fw95+mZxfkZvG/PM7ON6IwLARyXe+8HmSSTUNuifm2wL5tanWtWwK9P3oUhKVzaVu7oCC8gzLoU3v7LSY= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=rivosinc.com; spf=pass smtp.mailfrom=rivosinc.com; dkim=pass (2048-bit key) header.d=rivosinc-com.20230601.gappssmtp.com header.i=@rivosinc-com.20230601.gappssmtp.com header.b=oSPIMrlu; arc=none smtp.client-ip=209.85.214.180 Authentication-Results: smtp.subspace.kernel.org; dmarc=none (p=none dis=none) header.from=rivosinc.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=rivosinc.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=rivosinc-com.20230601.gappssmtp.com header.i=@rivosinc-com.20230601.gappssmtp.com header.b="oSPIMrlu" Received: by mail-pl1-f180.google.com with SMTP id d9443c01a7336-1f480624d0fso18251755ad.1 for ; Fri, 21 Jun 2024 12:02:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rivosinc-com.20230601.gappssmtp.com; s=20230601; t=1718996544; x=1719601344; darn=vger.kernel.org; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date:from:to :cc:subject:date:message-id:reply-to; bh=2ejfWjZZ+2p6n8C/uYSvX+3GJZETSO2UUSX42MmnXY0=; b=oSPIMrluRj/zDqsgkzy/B80Y/49TndFAp/dYd1K9Q6IfgedwFTuYHt3SHjrKhwfeed LAxdZvrp/EefaAsGSak6PZM8qGHhZIc2eqx0d9WXk9LCsaKLUBFzxWo3Z5RFSd5vQBhe 2KURMGk13DuwOVPM6B1LWsn6dH0la1E+pPT7f5AAEmjEaT1WJS/FK+ac0aGoaUuWKeey 5dGHVwGTJ9jA5nORxV+PCYUAJQUpHoFwj2LdJNsXJ/XJV2713+71xV5kcqGt6MKh49OQ kJJ0vDr4gqflnYJNoWs5TTDUTqByzUKKK66Qc5z9sWXWkI46YSBrQsYpJ/0RcaBJinI8 EGgw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1718996544; x=1719601344; h=in-reply-to:content-transfer-encoding:content-disposition :mime-version:references:message-id:subject:cc:to:from:date :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=2ejfWjZZ+2p6n8C/uYSvX+3GJZETSO2UUSX42MmnXY0=; b=WU9617V9Z9nK+3BCK35j7W+diPXCYtl5sW7RoSCjzsHIS2zqZSPuV0EjaH8hPX39cH AjXTrvMe43qSrLrB6Rnzab/vW5Gkg6FZfcNlMlRHS7+/L5+/7nQacXe37T7MpGLMnn/y nXXfgVOcaZfEmu+KzRr5OIZh2MGYEzSz/qQi32rSxzP9gj6FyC/N30sEL7c5C3QMaNQI Iuxp46DcEftjb81dnAamFAVUWoh5mWk44sfEzDqCPf/O2ayaCz/Qd3jotVhWN/0fwmEv 38CISiLqzRKL5UEA/wOc6IXmMgRqqiYcY2DsT3pVaTekXTwmKYb0lkWFHW0h99Huyi07 4O+w== X-Forwarded-Encrypted: i=1; AJvYcCUYc290PSK8t6PAc6C/NNf1hDCAzmjc5Z2RDxRTMbwtaE9g0fM9HCEPfMhM8OsqpjTIqFSVQP51ACUQW7WCpjOAgT6BWww5pY+WE6Gp X-Gm-Message-State: AOJu0Ywh+a9xssaN9WoO/WyGTAMDa1loeALfTcFqPZpfVwtQPexvIctw CMgtkHKbFmE2grMAbR6P05ZmP82dduN4m9VfrmCop/1+zEJ00nAMMOnnN/IN0mg= X-Google-Smtp-Source: AGHT+IHNesJtO0UqquNF67ECCx6rJvGVvWqByp4IpDMUVIaiuwlaYkut+gD3Q7guqC20bvpJVZvxbQ== X-Received: by 2002:a17:902:da91:b0:1f9:c289:7378 with SMTP id d9443c01a7336-1f9c2897606mr82016305ad.33.1718996543540; Fri, 21 Jun 2024 12:02:23 -0700 (PDT) Received: from debug.ba.rivosinc.com ([64.71.180.162]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-1f9eb2f051bsm17459975ad.51.2024.06.21.12.02.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 21 Jun 2024 12:02:23 -0700 (PDT) Date: Fri, 21 Jun 2024 12:02:21 -0700 From: Deepak Gupta To: Jisheng Zhang Cc: =?iso-8859-1?Q?Cl=E9ment_L=E9ger?= , Cyril Bur , Paul Walmsley , Palmer Dabbelt , Albert Ou , Samuel Holland , linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH 3/6] riscv: convert bottom half of exception handling to C Message-ID: References: <20240616170553.2832-1-jszhang@kernel.org> <20240616170553.2832-4-jszhang@kernel.org> <95a081a9-2307-4e5b-8ae2-082be16b327e@rivosinc.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: On Fri, Jun 21, 2024 at 07:56:56AM +0800, Jisheng Zhang wrote: >On Thu, Jun 20, 2024 at 10:06:15AM +0200, Clément Léger wrote: >> >> >> On 20/06/2024 02:02, Cyril Bur wrote: >> > On Thu, Jun 20, 2024 at 3:04 AM Deepak Gupta wrote: >> >> >> >> On Mon, Jun 17, 2024 at 01:05:50AM +0800, Jisheng Zhang wrote: >> >>> For readability, maintainability and future scalability, convert the >> >>> bottom half of the exception handling to C. >> >>> >> >>> Mostly the assembly code is converted to C in a relatively >> >>> straightforward manner. >> >>> >> >>> However, there are two modifications I need to mention: >> >>> >> >>> 1. the CSR_CAUSE reg reading and saving is moved to the C code >> >>> because we need the cause to dispatch the exception handling, >> >>> if we keep the cause reading and saving, we either pass it to >> >>> do_traps() via. 2nd param or get it from pt_regs which an extra >> >>> memory load is needed, I don't like any of the two solutions becase >> >>> the exception handling sits in hot code path, every instruction >> >>> matters. >> >> >> >> CC: Clement. >> >> >> >> I think its better to save away cause in pt_regs prior to calling >> >> `do_traps`. Once control is transferred to C code in `do_traps`, >> >> another trap can happen. It's a problem anyways today without CPU support. >> >> >> >> Although with Ssdbltrp [1] extension and it kernel support [2] for it, >> >> I expect asm code would clear up `SDT` bit in mstatus. Whenever `Ssdbltrp` lands, > >Hi Deepak, Clément, > >Currently, SR_IE bit is is set(setting means enable irq) in c, could the >'SDT' bit be cleared in c as well when Ssdbltrp lands? SDT is placed in sstatus CSR. So yes its possible to clear it in C in `do_traps`. Although then you (and any future developer) will have to pay extra attention to this function because this function can be nested depending on when SDT is cleared or not. Maintainence (and introductions of error) wise it doesn't look ideal. If we keep read of `cause` in asm code and pass it as parameter to `do_traps`, it cleanly defines the boundary of which functions can be nested and which can't. It helps features like SSE [1, 2] (which expect nesting of events and had to be creative) to implement cleaner logic. [1] https://lists.riscv.org/g/tech-prs/message/515 [2] https://lpc.events/event/17/contributions/1479/attachments/1243/2526/SSE_Plumbers.pdf > >Thanks >> >> I think `do_traps` should expect nesting of traps and thus cause should be saved >> >> away before it gets control so that safely traps can be nested. >> >> Hi, >> >> Indeed, every register that is "unique" to a trap and than can be >> overwritten by a second trap should be saved before reenabling them when >> using Ssdbltrp. So that would be nice to preserve that. >> >> >> >> > >> > Is a possible solution to do both options Jisheng suggested? Save the >> > cause before >> > calling do_traps but also pass it via second param? >> >> I guess so if it fits your performance requirements. >> >> Thanks, >> >> Clément >> >> > >> >> [1] - https://github.com/riscv/riscv-double-trap/releases/download/v1.0-rc1/riscv-double-trap.pdf >> >> [2] - https://lore.kernel.org/all/20240418133916.1442471-1-cleger@rivosinc.com/ >> >> >> >>> >> >>> 2.To cope with SIFIVE_CIP_453 errata, it looks like we don't need >> >>> alternative mechanism any more after the asm->c convertion. Just >> >>> replace the excp_vect_table two entries. >> >>> >> >>> Signed-off-by: Jisheng Zhang >> >> >> >> _______________________________________________ >> >> linux-riscv mailing list >> >> linux-riscv@lists.infradead.org >> >> http://lists.infradead.org/mailman/listinfo/linux-riscv