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 X-Spam-Level: X-Spam-Status: No, score=-2.3 required=3.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,USER_AGENT_SANE_1 autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 45661C3A59E for ; Thu, 22 Aug 2019 01:29:03 +0000 (UTC) Received: from lists.ozlabs.org (lists.ozlabs.org [203.11.71.2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id C390B22DD3 for ; Thu, 22 Aug 2019 01:29:02 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org C390B22DD3 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=linux.ibm.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=linuxppc-dev-bounces+linuxppc-dev=archiver.kernel.org@lists.ozlabs.org Received: from bilbo.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3]) by lists.ozlabs.org (Postfix) with ESMTP id 46DRl04tVVzDqSd for ; Thu, 22 Aug 2019 11:29:00 +1000 (AEST) Received: from ozlabs.org (bilbo.ozlabs.org [203.11.71.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 46DRhV4Xv3zDr5g for ; Thu, 22 Aug 2019 11:26:50 +1000 (AEST) Authentication-Results: lists.ozlabs.org; dmarc=none (p=none dis=none) header.from=linux.ibm.com Received: from ozlabs.org (bilbo.ozlabs.org [203.11.71.1]) by bilbo.ozlabs.org (Postfix) with ESMTP id 46DRhV3fN3z8t5T for ; Thu, 22 Aug 2019 11:26:50 +1000 (AEST) Received: by ozlabs.org (Postfix) id 46DRhV2rH3z9s7T; Thu, 22 Aug 2019 11:26:50 +1000 (AEST) Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=linux.ibm.com (client-ip=148.163.156.1; helo=mx0a-001b2d01.pphosted.com; envelope-from=cclaudio@linux.ibm.com; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=linux.ibm.com 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 ozlabs.org (Postfix) with ESMTPS id 46DRhT6rr0z9s4Y for ; Thu, 22 Aug 2019 11:26:49 +1000 (AEST) Received: from pps.filterd (m0098394.ppops.net [127.0.0.1]) by mx0a-001b2d01.pphosted.com (8.16.0.27/8.16.0.27) with SMTP id x7M16xDT145290; Wed, 21 Aug 2019 21:26:45 -0400 Received: from ppma02dal.us.ibm.com (a.bd.3ea9.ip4.static.sl-reverse.com [169.62.189.10]) by mx0a-001b2d01.pphosted.com with ESMTP id 2uhfx5tgab-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Wed, 21 Aug 2019 21:26:45 -0400 Received: from pps.filterd (ppma02dal.us.ibm.com [127.0.0.1]) by ppma02dal.us.ibm.com (8.16.0.27/8.16.0.27) with SMTP id x7M1CjTG007128; Thu, 22 Aug 2019 01:26:44 GMT Received: from b01cxnp22035.gho.pok.ibm.com (b01cxnp22035.gho.pok.ibm.com [9.57.198.25]) by ppma02dal.us.ibm.com with ESMTP id 2ue976jumj-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Thu, 22 Aug 2019 01:26:44 +0000 Received: from b01ledav005.gho.pok.ibm.com (b01ledav005.gho.pok.ibm.com [9.57.199.110]) by b01cxnp22035.gho.pok.ibm.com (8.14.9/8.14.9/NCO v10.0) with ESMTP id x7M1QhcV48562526 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 22 Aug 2019 01:26:43 GMT Received: from b01ledav005.gho.pok.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id B53ABAE066; Thu, 22 Aug 2019 01:26:43 +0000 (GMT) Received: from b01ledav005.gho.pok.ibm.com (unknown [127.0.0.1]) by IMSVA (Postfix) with ESMTP id 8A92CAE05F; Thu, 22 Aug 2019 01:26:40 +0000 (GMT) Received: from [9.80.203.17] (unknown [9.80.203.17]) by b01ledav005.gho.pok.ibm.com (Postfix) with ESMTP; Thu, 22 Aug 2019 01:26:40 +0000 (GMT) Subject: Re: [PATCH v5 2/7] powerpc/kernel: Add ucall_norets() ultravisor call handler To: Segher Boessenkool , Michael Ellerman References: <20190808040555.2371-1-cclaudio@linux.ibm.com> <20190808040555.2371-3-cclaudio@linux.ibm.com> <87wofgqb2g.fsf@concordia.ellerman.id.au> <20190814183432.GG31406@gate.crashing.org> From: Claudio Carvalho Message-ID: Date: Wed, 21 Aug 2019 22:26:39 -0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.6.0 MIME-Version: 1.0 In-Reply-To: <20190814183432.GG31406@gate.crashing.org> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Content-Language: en-US X-TM-AS-GCONF: 00 X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2019-08-22_01:, , signatures=0 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 priorityscore=1501 malwarescore=0 suspectscore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1011 lowpriorityscore=0 mlxscore=0 impostorscore=0 mlxlogscore=999 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1906280000 definitions=main-1908220011 X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Madhavan Srinivasan , Michael Anderson , Ram Pai , kvm-ppc@vger.kernel.org, Bharata B Rao , linuxppc-dev@ozlabs.org, Ryan Grimm , Sukadev Bhattiprolu , Guerney Hunt , Thiago Bauermann Errors-To: linuxppc-dev-bounces+linuxppc-dev=archiver.kernel.org@lists.ozlabs.org Sender: "Linuxppc-dev" On 8/14/19 3:34 PM, Segher Boessenkool wrote: > On Wed, Aug 14, 2019 at 08:46:15PM +1000, Michael Ellerman wrote: >> Claudio Carvalho writes: >>> +_GLOBAL(ucall_norets) >>> +EXPORT_SYMBOL_GPL(ucall_norets) >>> + mfcr r0 >>> + stw r0,8(r1) >>> + >>> + sc 2 /* Invoke the ultravisor */ >>> + >>> + lwz r0,8(r1) >>> + mtcrf 0xff,r0 >>> + blr /* Return r3 = status */ >> Paulus points that we shouldn't need to save CR here. Our caller will >> have already saved it if it needed to, and we don't use CR in this >> function so we don't need to save it. >> >> That's assuming the Ultravisor follows the hcall ABI in which CR2-4 are >> non-volatile (PAPR ยง 14.5.3). > And assuming the ultravisor already clears (or sets, or whatever) all CR > fields it does not want to leak the contents of (which it also should, > of course). Thanks Segher. We are working on that in the ultravisor source code. Claudio. > >> I know plpar_hcall_norets() does save CR, but it shouldn't need to, that >> seems to be historical. aka. no one knows why it does it but it always >> has. > > Segher > From mboxrd@z Thu Jan 1 00:00:00 1970 From: Claudio Carvalho Date: Thu, 22 Aug 2019 01:26:39 +0000 Subject: Re: [PATCH v5 2/7] powerpc/kernel: Add ucall_norets() ultravisor call handler Message-Id: List-Id: References: <20190808040555.2371-1-cclaudio@linux.ibm.com> <20190808040555.2371-3-cclaudio@linux.ibm.com> <87wofgqb2g.fsf@concordia.ellerman.id.au> <20190814183432.GG31406@gate.crashing.org> In-Reply-To: <20190814183432.GG31406@gate.crashing.org> MIME-Version: 1.0 Content-Type: text/plain; charset="tis-620" Content-Transfer-Encoding: base64 To: Segher Boessenkool , Michael Ellerman Cc: Madhavan Srinivasan , Michael Anderson , Ram Pai , kvm-ppc@vger.kernel.org, Bharata B Rao , linuxppc-dev@ozlabs.org, Ryan Grimm , Sukadev Bhattiprolu , Guerney Hunt , Thiago Bauermann Ck9uIDgvMTQvMTkgMzozNCBQTSwgU2VnaGVyIEJvZXNzZW5rb29sIHdyb3RlOgo+IE9uIFdlZCwg QXVnIDE0LCAyMDE5IGF0IDA4OjQ2OjE1UE0gKzEwMDAsIE1pY2hhZWwgRWxsZXJtYW4gd3JvdGU6 Cj4+IENsYXVkaW8gQ2FydmFsaG8gPGNjbGF1ZGlvQGxpbnV4LmlibS5jb20+IHdyaXRlczoKPj4+ ICtfR0xPQkFMKHVjYWxsX25vcmV0cykKPj4+ICtFWFBPUlRfU1lNQk9MX0dQTCh1Y2FsbF9ub3Jl dHMpCj4+PiArCW1mY3IJcjAKPj4+ICsJc3R3CXIwLDgocjEpCj4+PiArCj4+PiArCXNjCTIJCS8q IEludm9rZSB0aGUgdWx0cmF2aXNvciAqLwo+Pj4gKwo+Pj4gKwlsd3oJcjAsOChyMSkKPj4+ICsJ bXRjcmYJMHhmZixyMAo+Pj4gKwlibHIJCQkvKiBSZXR1cm4gcjMgPSBzdGF0dXMgKi8KPj4gUGF1 bHVzIHBvaW50cyB0aGF0IHdlIHNob3VsZG4ndCBuZWVkIHRvIHNhdmUgQ1IgaGVyZS4gT3VyIGNh bGxlciB3aWxsCj4+IGhhdmUgYWxyZWFkeSBzYXZlZCBpdCBpZiBpdCBuZWVkZWQgdG8sIGFuZCB3 ZSBkb24ndCB1c2UgQ1IgaW4gdGhpcwo+PiBmdW5jdGlvbiBzbyB3ZSBkb24ndCBuZWVkIHRvIHNh dmUgaXQuCj4+Cj4+IFRoYXQncyBhc3N1bWluZyB0aGUgVWx0cmF2aXNvciBmb2xsb3dzIHRoZSBo Y2FsbCBBQkkgaW4gd2hpY2ggQ1IyLTQgYXJlCj4+IG5vbi12b2xhdGlsZSAoUEFQUiDCpyAxNC41 LjMpLgo+IEFuZCBhc3N1bWluZyB0aGUgdWx0cmF2aXNvciBhbHJlYWR5IGNsZWFycyAob3Igc2V0 cywgb3Igd2hhdGV2ZXIpIGFsbCBDUgo+IGZpZWxkcyBpdCBkb2VzIG5vdCB3YW50IHRvIGxlYWsg dGhlIGNvbnRlbnRzIG9mICh3aGljaCBpdCBhbHNvIHNob3VsZCwKPiBvZiBjb3Vyc2UpLgoKVGhh bmtzIFNlZ2hlci4gV2UgYXJlIHdvcmtpbmcgb24gdGhhdCBpbiB0aGUgdWx0cmF2aXNvciBzb3Vy Y2UgY29kZS4KCkNsYXVkaW8uCgoKPgo+PiBJIGtub3cgcGxwYXJfaGNhbGxfbm9yZXRzKCkgZG9l cyBzYXZlIENSLCBidXQgaXQgc2hvdWxkbid0IG5lZWQgdG8sIHRoYXQKPj4gc2VlbXMgdG8gYmUg aGlzdG9yaWNhbC4gYWthLiBubyBvbmUga25vd3Mgd2h5IGl0IGRvZXMgaXQgYnV0IGl0IGFsd2F5 cwo+PiBoYXMuCj4KPiBTZWdoZXIKPg==