[{"id":1768589,"web_url":"http://patchwork.ozlabs.org/comment/1768589/","msgid":"<8760cl9zms.fsf@linaro.org>","list_archive_url":null,"date":"2017-09-14T13:30:03","subject":"Re: [PATCH v2 23/28] arm64/sve: KVM: Treat guest SVE use as\n\tundefined instruction execution","submitter":{"id":39532,"url":"http://patchwork.ozlabs.org/api/people/39532/","name":"Alex Bennée","email":"alex.bennee@linaro.org"},"content":"Dave Martin <Dave.Martin@arm.com> writes:\n\n> When trapping forbidden attempts by a guest to use SVE, we want the\n> guest to see a trap consistent with SVE not being implemented.\n>\n> This patch injects an undefined instruction exception into the\n> guest in response to such an exception.\n>\n> Signed-off-by: Dave Martin <Dave.Martin@arm.com>\n\nReviewed-by: Alex Bennée <alex.bennee@linaro.org>\n\n> ---\n>  arch/arm64/kvm/handle_exit.c | 8 ++++++++\n>  1 file changed, 8 insertions(+)\n>\n> diff --git a/arch/arm64/kvm/handle_exit.c b/arch/arm64/kvm/handle_exit.c\n> index 17d8a16..e3e42d0 100644\n> --- a/arch/arm64/kvm/handle_exit.c\n> +++ b/arch/arm64/kvm/handle_exit.c\n> @@ -147,6 +147,13 @@ static int kvm_handle_unknown_ec(struct kvm_vcpu *vcpu, struct kvm_run *run)\n>  \treturn 1;\n>  }\n>\n> +static int handle_sve(struct kvm_vcpu *vcpu, struct kvm_run *run)\n> +{\n> +\t/* Until SVE is supported for guests: */\n> +\tkvm_inject_undefined(vcpu);\n> +\treturn 1;\n> +}\n> +\n>  static exit_handle_fn arm_exit_handlers[] = {\n>  \t[0 ... ESR_ELx_EC_MAX]\t= kvm_handle_unknown_ec,\n>  \t[ESR_ELx_EC_WFx]\t= kvm_handle_wfx,\n> @@ -160,6 +167,7 @@ static exit_handle_fn arm_exit_handlers[] = {\n>  \t[ESR_ELx_EC_HVC64]\t= handle_hvc,\n>  \t[ESR_ELx_EC_SMC64]\t= handle_smc,\n>  \t[ESR_ELx_EC_SYS64]\t= kvm_handle_sys_reg,\n> +\t[ESR_ELx_EC_SVE]\t= handle_sve,\n>  \t[ESR_ELx_EC_IABT_LOW]\t= kvm_handle_guest_abort,\n>  \t[ESR_ELx_EC_DABT_LOW]\t= kvm_handle_guest_abort,\n>  \t[ESR_ELx_EC_SOFTSTP_LOW]= kvm_handle_guest_debug,\n\n\n--\nAlex Bennée","headers":{"Return-Path":"<libc-alpha-return-84615-incoming=patchwork.ozlabs.org@sourceware.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":["patchwork-incoming@bilbo.ozlabs.org","mailing list libc-alpha@sourceware.org"],"Authentication-Results":["ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=sourceware.org\n\t(client-ip=209.132.180.131; helo=sourceware.org;\n\tenvelope-from=libc-alpha-return-84615-incoming=patchwork.ozlabs.org@sourceware.org;\n\treceiver=<UNKNOWN>)","ozlabs.org; dkim=pass (1024-bit key;\n\tsecure) header.d=sourceware.org header.i=@sourceware.org\n\theader.b=\"MFC/40yk\"; dkim-atps=neutral","sourceware.org; auth=none"],"Received":["from sourceware.org (server1.sourceware.org [209.132.180.131])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xtKD408BZz9s81\n\tfor <incoming@patchwork.ozlabs.org>;\n\tThu, 14 Sep 2017 23:30:43 +1000 (AEST)","(qmail 95510 invoked by alias); 14 Sep 2017 13:30:37 -0000","(qmail 95349 invoked by uid 89); 14 Sep 2017 13:30:23 -0000"],"DomainKey-Signature":"a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id\n\t:list-unsubscribe:list-subscribe:list-archive:list-post\n\t:list-help:sender:references:from:to:cc:subject:in-reply-to:date\n\t:message-id:mime-version:content-type:content-transfer-encoding;\n\tq=dns; s=default; b=KviftzEt0nfCxeX6G7xpUWONGnUEzYidFqy0KQq4LPj\n\taOV2LyY8PKBea6FZYL3rskAZ1H9+QkQ0z0jmuX5/uZKEOyzjon+/G041AvMl0uAl\n\ta/vQcrvA/I96RzKVJ6Kf/wmyr2T5OIhQ2ky+OzI8QKg9tOlRD/6Y6r3x2R+VZ89Y\n\t=","DKIM-Signature":"v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id\n\t:list-unsubscribe:list-subscribe:list-archive:list-post\n\t:list-help:sender:references:from:to:cc:subject:in-reply-to:date\n\t:message-id:mime-version:content-type:content-transfer-encoding;\n\ts=default; bh=1vJnVG7vYb6V8afZkxjFNkaffNI=; b=MFC/40ykl4qPi40sW\n\t1fCFA4Xq0OsT0E9toKUgNZgeHQr/F7A6bgv5VkmJqwGrZpIDWPeuyA3eva9GupxW\n\tThhxA17rmpVI+QRal5xjtyweSy6XMk6RhKc1Qw5/Vobw0Zg0pJcDKh26wt+iBJoc\n\tcSmAULKrMP5shjphKV7rwB3TC4=","Mailing-List":"contact libc-alpha-help@sourceware.org; run by ezmlm","Precedence":"bulk","List-Id":"<libc-alpha.sourceware.org>","List-Unsubscribe":"<mailto:libc-alpha-unsubscribe-incoming=patchwork.ozlabs.org@sourceware.org>","List-Subscribe":"<mailto:libc-alpha-subscribe@sourceware.org>","List-Archive":"<http://sourceware.org/ml/libc-alpha/>","List-Post":"<mailto:libc-alpha@sourceware.org>","List-Help":"<mailto:libc-alpha-help@sourceware.org>,\n\t<http://sourceware.org/ml/#faqs>","Sender":"libc-alpha-owner@sourceware.org","X-Virus-Found":"No","X-Spam-SWARE-Status":"No, score=-26.5 required=5.0 tests=AWL, BAYES_00,\n\tGIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3,\n\tRCVD_IN_DNSWL_NONE,\n\tSPF_PASS autolearn=ham version=3.3.2 spammy=","X-HELO":"mail-wm0-f54.google.com","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:references:user-agent:from:to:cc:subject\n\t:in-reply-to:date:message-id:mime-version:content-transfer-encoding; \n\tbh=hnvYEnPntAyLTvwWEjefeqQS8INw+vn7sZP3xogUmsE=;\n\tb=GFusBVeLnaCSytYzNT6gn6s6oulnKp2QFyOjdZg12oSD8e1DSyX93rNem848KjfZhf\n\teTka8YjgIOzUD7lE6GiGuN2Gllc9NrujOFFZVSpy8wmbsImovFYP6zs4iNKZDzkn6q7g\n\t1OFl+YJzIp2apOn8RxrIBgViNtvoGPFTfNBWrwGVeozniSdnCadL4XVNZNZ6JKVjyjDK\n\tGukLwJlYJM4T+75JkZk1XCr4UvBmwdarQovSY1BqoMKms2ZjDNOSaGkg2SSK7F38sneM\n\t7u9w3aoEME3RN9JDg2hVtv3xOO/zdYyOgacJFYyhFwvpSgKPa/1k77Xt4qll+fzZJZDA\n\tWq3Q==","X-Gm-Message-State":"AHPjjUje635ID6YiINi/WdWzBr2p9m6hGSpkwPhEtpn6c9wQ7E99Oxat\n\t0WhfUdqDuYncvMTt","X-Google-Smtp-Source":"AOwi7QAKNDpZdBzd5cOMIfjL0+6mkNyimsdoVgd2kbPVb6C2M2t2Qs3pKr6s5sKAFRIb2i7j0cXGgA==","X-Received":"by 10.28.65.8 with SMTP id o8mr38542wma.146.1505395804773;\n\tThu, 14 Sep 2017 06:30:04 -0700 (PDT)","References":"<1504198860-12951-1-git-send-email-Dave.Martin@arm.com>\n\t<1504198860-12951-24-git-send-email-Dave.Martin@arm.com>","User-agent":"mu4e 0.9.19; emacs 25.2.50.3","From":"Alex =?utf-8?q?Benn=C3=A9e?= <alex.bennee@linaro.org>","To":"Dave Martin <Dave.Martin@arm.com>","Cc":"linux-arm-kernel@lists.infradead.org,\n\tCatalin Marinas <catalin.marinas@arm.com>,\n\tWill Deacon <will.deacon@arm.com>,\n\tArd Biesheuvel <ard.biesheuvel@linaro.org>,\n\tSzabolcs Nagy <szabolcs.nagy@arm.com>,\n\tRichard Sandiford <richard.sandiford@arm.com>,\n\tkvmarm@lists.cs.columbia.edu, libc-alpha@sourceware.org,\n\tlinux-arch@vger.kernel.org,\n\tChristoffer Dall <christoffer.dall@linaro.org>,\n\tMarc Zyngier <marc.zyngier@arm.com>","Subject":"Re: [PATCH v2 23/28] arm64/sve: KVM: Treat guest SVE use as\n\tundefined instruction execution","In-reply-to":"<1504198860-12951-24-git-send-email-Dave.Martin@arm.com>","Date":"Thu, 14 Sep 2017 14:30:03 +0100","Message-ID":"<8760cl9zms.fsf@linaro.org>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Transfer-Encoding":"8bit"}},{"id":1768590,"web_url":"http://patchwork.ozlabs.org/comment/1768590/","msgid":"<874ls59zku.fsf@linaro.org>","list_archive_url":null,"date":"2017-09-14T13:31:13","subject":"Re: [PATCH v2 23/28] arm64/sve: KVM: Treat guest SVE use as\n\tundefined instruction execution","submitter":{"id":39532,"url":"http://patchwork.ozlabs.org/api/people/39532/","name":"Alex Bennée","email":"alex.bennee@linaro.org"},"content":"Dave Martin <Dave.Martin@arm.com> writes:\n\n> When trapping forbidden attempts by a guest to use SVE, we want the\n> guest to see a trap consistent with SVE not being implemented.\n>\n> This patch injects an undefined instruction exception into the\n> guest in response to such an exception.\n\nI do wonder if this should be merged with the previous trap enabling\npatch though?\n\n>\n> Signed-off-by: Dave Martin <Dave.Martin@arm.com>\n> ---\n>  arch/arm64/kvm/handle_exit.c | 8 ++++++++\n>  1 file changed, 8 insertions(+)\n>\n> diff --git a/arch/arm64/kvm/handle_exit.c b/arch/arm64/kvm/handle_exit.c\n> index 17d8a16..e3e42d0 100644\n> --- a/arch/arm64/kvm/handle_exit.c\n> +++ b/arch/arm64/kvm/handle_exit.c\n> @@ -147,6 +147,13 @@ static int kvm_handle_unknown_ec(struct kvm_vcpu *vcpu, struct kvm_run *run)\n>  \treturn 1;\n>  }\n>\n> +static int handle_sve(struct kvm_vcpu *vcpu, struct kvm_run *run)\n> +{\n> +\t/* Until SVE is supported for guests: */\n> +\tkvm_inject_undefined(vcpu);\n> +\treturn 1;\n> +}\n> +\n>  static exit_handle_fn arm_exit_handlers[] = {\n>  \t[0 ... ESR_ELx_EC_MAX]\t= kvm_handle_unknown_ec,\n>  \t[ESR_ELx_EC_WFx]\t= kvm_handle_wfx,\n> @@ -160,6 +167,7 @@ static exit_handle_fn arm_exit_handlers[] = {\n>  \t[ESR_ELx_EC_HVC64]\t= handle_hvc,\n>  \t[ESR_ELx_EC_SMC64]\t= handle_smc,\n>  \t[ESR_ELx_EC_SYS64]\t= kvm_handle_sys_reg,\n> +\t[ESR_ELx_EC_SVE]\t= handle_sve,\n>  \t[ESR_ELx_EC_IABT_LOW]\t= kvm_handle_guest_abort,\n>  \t[ESR_ELx_EC_DABT_LOW]\t= kvm_handle_guest_abort,\n>  \t[ESR_ELx_EC_SOFTSTP_LOW]= kvm_handle_guest_debug,\n\n\n--\nAlex Bennée","headers":{"Return-Path":"<libc-alpha-return-84616-incoming=patchwork.ozlabs.org@sourceware.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":["patchwork-incoming@bilbo.ozlabs.org","mailing list libc-alpha@sourceware.org"],"Authentication-Results":["ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=sourceware.org\n\t(client-ip=209.132.180.131; helo=sourceware.org;\n\tenvelope-from=libc-alpha-return-84616-incoming=patchwork.ozlabs.org@sourceware.org;\n\treceiver=<UNKNOWN>)","ozlabs.org; dkim=pass (1024-bit key;\n\tsecure) header.d=sourceware.org header.i=@sourceware.org\n\theader.b=\"dw5UjBZQ\"; dkim-atps=neutral","sourceware.org; auth=none"],"Received":["from sourceware.org (server1.sourceware.org [209.132.180.131])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xtKDv62zZz9s81\n\tfor <incoming@patchwork.ozlabs.org>;\n\tThu, 14 Sep 2017 23:31:27 +1000 (AEST)","(qmail 96927 invoked by alias); 14 Sep 2017 13:31:18 -0000","(qmail 96914 invoked by uid 89); 14 Sep 2017 13:31:18 -0000"],"DomainKey-Signature":"a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id\n\t:list-unsubscribe:list-subscribe:list-archive:list-post\n\t:list-help:sender:references:from:to:cc:subject:in-reply-to:date\n\t:message-id:mime-version:content-type:content-transfer-encoding;\n\tq=dns; s=default; b=ipH9ShKNE/JUZq/hqWoEQZNPo8U31XHDX2UIB+K98d0\n\tAPJMp6nSwQ3dodS5Un4uKr4sxT3/k5Z4M12IrrdZr4HzbuBxjIHwbm+VWIU6bV0O\n\t9rFI3SEszhl5//2Yghzm3iuO6aGr9E/r5jePR5JphJvvsxhCE0bk1EbbYDXbgPd0\n\t=","DKIM-Signature":"v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id\n\t:list-unsubscribe:list-subscribe:list-archive:list-post\n\t:list-help:sender:references:from:to:cc:subject:in-reply-to:date\n\t:message-id:mime-version:content-type:content-transfer-encoding;\n\ts=default; bh=YR9aBllVAy+Idhf1fGvUXqqkb6Q=; b=dw5UjBZQD6FRWdI6B\n\tN/aUUF7kpCBmQN2Mci2dDuDSB5Voo/JYUVTofTLIbal3YreJpsP9vbWx6zQAC/3m\n\tOcAP1r+6jgzbNNAI/ir/q9+T6Inx/vJo10BjT2xacJnMRR+WayIWZVkAGxawMJ83\n\treZrt7sPkc9tF+DzmD6xagcoRk=","Mailing-List":"contact libc-alpha-help@sourceware.org; run by ezmlm","Precedence":"bulk","List-Id":"<libc-alpha.sourceware.org>","List-Unsubscribe":"<mailto:libc-alpha-unsubscribe-incoming=patchwork.ozlabs.org@sourceware.org>","List-Subscribe":"<mailto:libc-alpha-subscribe@sourceware.org>","List-Archive":"<http://sourceware.org/ml/libc-alpha/>","List-Post":"<mailto:libc-alpha@sourceware.org>","List-Help":"<mailto:libc-alpha-help@sourceware.org>,\n\t<http://sourceware.org/ml/#faqs>","Sender":"libc-alpha-owner@sourceware.org","X-Virus-Found":"No","X-Spam-SWARE-Status":"No, score=-26.0 required=5.0 tests=AWL, BAYES_00,\n\tGIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3,\n\tRCVD_IN_DNSWL_NONE, RCVD_IN_SORBS_SPAM,\n\tSPF_PASS autolearn=ham version=3.3.2 spammy=Hx-languages-length:1597","X-HELO":"mail-wr0-f177.google.com","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:references:user-agent:from:to:cc:subject\n\t:in-reply-to:date:message-id:mime-version:content-transfer-encoding; \n\tbh=bTYHHCm8NTj7LZIfYLi6Ih1FgThPcATH5H8vM5FUhz0=;\n\tb=BtHRRyN/ROu0/zwRD9Khj2f2GZujM0KpE5yjelqSp7j6I4z9+LkprQ4UaVSNrvtTBS\n\tfF6+nJH6OynXiDq0c2WFlI7cDIjhlQHZsD4qIh9hAbmW/Gs+YmJ2SzZyt/zPOUfoJXka\n\teWzCnZJKnx9y9N/m7rF53PUWcTv7GAEmy+T/qUpjPa4nJLO2rO8g0WVGeZq8gpQ3wE9F\n\tZI1Y1SP5DsndaGPBZQt+BZzCAg+ElGXwRMr/C+tuDAHd7DC1gpbWIyUDT67nfOp43zPX\n\tirbMYLGBEFJFEN4eOPIPPRBfIcYBUy6z0YCYvHkr/BBk0ORlfhHUvs9pUgzWqVK98qgU\n\tZnNQ==","X-Gm-Message-State":"AHPjjUgAVovWlR4BRlhiSeWit2sQe6Z5/UsHVOuU2u969ib+P91rHn4W\n\t1IYecvbrmBaL/GZ4","X-Google-Smtp-Source":"ADKCNb4/NRK8i9bKfY3kQjMaVek41hKLK0/NDjsRq5WVKdpRXfhA3sKppbiatkxBXgspUhaBLLH11g==","X-Received":"by 10.223.175.217 with SMTP id\n\ty25mr20511218wrd.255.1505395874998; \n\tThu, 14 Sep 2017 06:31:14 -0700 (PDT)","References":"<1504198860-12951-1-git-send-email-Dave.Martin@arm.com>\n\t<1504198860-12951-24-git-send-email-Dave.Martin@arm.com>","User-agent":"mu4e 0.9.19; emacs 25.2.50.3","From":"Alex =?utf-8?q?Benn=C3=A9e?= <alex.bennee@linaro.org>","To":"Dave Martin <Dave.Martin@arm.com>","Cc":"linux-arm-kernel@lists.infradead.org,\n\tCatalin Marinas <catalin.marinas@arm.com>,\n\tWill Deacon <will.deacon@arm.com>,\n\tArd Biesheuvel <ard.biesheuvel@linaro.org>,\n\tSzabolcs Nagy <szabolcs.nagy@arm.com>,\n\tRichard Sandiford <richard.sandiford@arm.com>,\n\tkvmarm@lists.cs.columbia.edu, libc-alpha@sourceware.org,\n\tlinux-arch@vger.kernel.org,\n\tChristoffer Dall <christoffer.dall@linaro.org>,\n\tMarc Zyngier <marc.zyngier@arm.com>","Subject":"Re: [PATCH v2 23/28] arm64/sve: KVM: Treat guest SVE use as\n\tundefined instruction execution","In-reply-to":"<1504198860-12951-24-git-send-email-Dave.Martin@arm.com>","Date":"Thu, 14 Sep 2017 14:31:13 +0100","Message-ID":"<874ls59zku.fsf@linaro.org>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Transfer-Encoding":"8bit"}},{"id":1777527,"web_url":"http://patchwork.ozlabs.org/comment/1777527/","msgid":"<20170929130029.GG3611@e103592.cambridge.arm.com>","list_archive_url":null,"date":"2017-09-29T13:00:30","subject":"Re: [PATCH v2 23/28] arm64/sve: KVM: Treat guest SVE use as\n\tundefined instruction execution","submitter":{"id":26612,"url":"http://patchwork.ozlabs.org/api/people/26612/","name":"Dave Martin","email":"Dave.Martin@arm.com"},"content":"On Thu, Sep 14, 2017 at 02:31:13PM +0100, Alex Bennée wrote:\n> \n> Dave Martin <Dave.Martin@arm.com> writes:\n> \n> > When trapping forbidden attempts by a guest to use SVE, we want the\n> > guest to see a trap consistent with SVE not being implemented.\n> >\n> > This patch injects an undefined instruction exception into the\n> > guest in response to such an exception.\n> \n> I do wonder if this should be merged with the previous trap enabling\n> patch though?\n\nYes, that would make sense now I look at it.\n\nCan I keep your Reviewed-by on the combined patch?\n\nCheers\n---Dave\n\n> \n> >\n> > Signed-off-by: Dave Martin <Dave.Martin@arm.com>\n> > ---\n> >  arch/arm64/kvm/handle_exit.c | 8 ++++++++\n> >  1 file changed, 8 insertions(+)\n> >\n> > diff --git a/arch/arm64/kvm/handle_exit.c b/arch/arm64/kvm/handle_exit.c\n> > index 17d8a16..e3e42d0 100644\n> > --- a/arch/arm64/kvm/handle_exit.c\n> > +++ b/arch/arm64/kvm/handle_exit.c\n> > @@ -147,6 +147,13 @@ static int kvm_handle_unknown_ec(struct kvm_vcpu *vcpu, struct kvm_run *run)\n> >  \treturn 1;\n> >  }\n> >\n> > +static int handle_sve(struct kvm_vcpu *vcpu, struct kvm_run *run)\n> > +{\n> > +\t/* Until SVE is supported for guests: */\n> > +\tkvm_inject_undefined(vcpu);\n> > +\treturn 1;\n> > +}\n> > +\n> >  static exit_handle_fn arm_exit_handlers[] = {\n> >  \t[0 ... ESR_ELx_EC_MAX]\t= kvm_handle_unknown_ec,\n> >  \t[ESR_ELx_EC_WFx]\t= kvm_handle_wfx,\n> > @@ -160,6 +167,7 @@ static exit_handle_fn arm_exit_handlers[] = {\n> >  \t[ESR_ELx_EC_HVC64]\t= handle_hvc,\n> >  \t[ESR_ELx_EC_SMC64]\t= handle_smc,\n> >  \t[ESR_ELx_EC_SYS64]\t= kvm_handle_sys_reg,\n> > +\t[ESR_ELx_EC_SVE]\t= handle_sve,\n> >  \t[ESR_ELx_EC_IABT_LOW]\t= kvm_handle_guest_abort,\n> >  \t[ESR_ELx_EC_DABT_LOW]\t= kvm_handle_guest_abort,\n> >  \t[ESR_ELx_EC_SOFTSTP_LOW]= kvm_handle_guest_debug,\n> \n> \n> --\n> Alex Bennée\n> \n> _______________________________________________\n> linux-arm-kernel mailing list\n> linux-arm-kernel@lists.infradead.org\n> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel","headers":{"Return-Path":"<libc-alpha-return-85111-incoming=patchwork.ozlabs.org@sourceware.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":["patchwork-incoming@bilbo.ozlabs.org","mailing list libc-alpha@sourceware.org"],"Authentication-Results":["ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=sourceware.org\n\t(client-ip=209.132.180.131; helo=sourceware.org;\n\tenvelope-from=libc-alpha-return-85111-incoming=patchwork.ozlabs.org@sourceware.org;\n\treceiver=<UNKNOWN>)","ozlabs.org; dkim=pass (1024-bit key;\n\tsecure) header.d=sourceware.org header.i=@sourceware.org\n\theader.b=\"Z1JubiOo\"; dkim-atps=neutral","sourceware.org; auth=none"],"Received":["from sourceware.org (server1.sourceware.org [209.132.180.131])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3y3WrZ2xLmz9t33\n\tfor <incoming@patchwork.ozlabs.org>;\n\tFri, 29 Sep 2017 23:00:46 +1000 (AEST)","(qmail 25482 invoked by alias); 29 Sep 2017 13:00:38 -0000","(qmail 24378 invoked by uid 89); 29 Sep 2017 13:00:37 -0000"],"DomainKey-Signature":"a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id\n\t:list-unsubscribe:list-subscribe:list-archive:list-post\n\t:list-help:sender:date:from:to:cc:subject:message-id:references\n\t:mime-version:content-type:content-transfer-encoding\n\t:in-reply-to; q=dns; s=default; b=O9tRd809d7BABiYsUjAW+unAEmU9je\n\tlKqlvzsFube/J4xmOJRe1ZfJ4I+y8eAfrQPApc52cXeof+CXRRYPEQmoiqaa0Qe9\n\tFbrmopVNceDkxodY2soaceRepfvQ9W/oOs6rK+hbj83KzKAVpPn5mSmGjX8P33cH\n\thGLMvifbyDNlc=","DKIM-Signature":"v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id\n\t:list-unsubscribe:list-subscribe:list-archive:list-post\n\t:list-help:sender:date:from:to:cc:subject:message-id:references\n\t:mime-version:content-type:content-transfer-encoding\n\t:in-reply-to; s=default; bh=E7kz6dFICb0n6mb6HXeYdSv5jZY=; b=Z1Ju\n\tbiOoSEL+5O1uLZ1pKfCRm1TD+pbcL8+YHbIcO3EUJUYdfs+wSPiKa0ku8ZMuYk05\n\tnegW1R7yX4Y0h9X6p0ksdI68J9iJhnbVqunnC71v8+xb6WMSZJYtTR/qw6NQr6r8\n\tXD/d+b2i3W3tOQUzWKqTCsuyFqcmzwaLvZxrjns=","Mailing-List":"contact libc-alpha-help@sourceware.org; run by ezmlm","Precedence":"bulk","List-Id":"<libc-alpha.sourceware.org>","List-Unsubscribe":"<mailto:libc-alpha-unsubscribe-incoming=patchwork.ozlabs.org@sourceware.org>","List-Subscribe":"<mailto:libc-alpha-subscribe@sourceware.org>","List-Archive":"<http://sourceware.org/ml/libc-alpha/>","List-Post":"<mailto:libc-alpha@sourceware.org>","List-Help":"<mailto:libc-alpha-help@sourceware.org>,\n\t<http://sourceware.org/ml/#faqs>","Sender":"libc-alpha-owner@sourceware.org","X-Virus-Found":"No","X-Spam-SWARE-Status":"No, score=-26.9 required=5.0 tests=BAYES_00, GIT_PATCH_0,\n\tGIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3, RP_MATCHES_RCVD,\n\tSPF_PASS autolearn=ham version=3.3.2 spammy=forbidden, guests","X-HELO":"foss.arm.com","Date":"Fri, 29 Sep 2017 14:00:30 +0100","From":"Dave Martin <Dave.Martin@arm.com>","To":"Alex =?iso-8859-1?q?Benn=E9e?= <alex.bennee@linaro.org>","Cc":"linux-arch@vger.kernel.org, libc-alpha@sourceware.org,\n\tArd Biesheuvel <ard.biesheuvel@linaro.org>,\n\tSzabolcs Nagy <szabolcs.nagy@arm.com>,\n\tCatalin Marinas <catalin.marinas@arm.com>,\n\tWill Deacon <will.deacon@arm.com>, Marc Zyngier <marc.zyngier@arm.com>,\n\tChristoffer Dall <christoffer.dall@linaro.org>,\n\tRichard Sandiford <richard.sandiford@arm.com>,\n\tkvmarm@lists.cs.columbia.edu, linux-arm-kernel@lists.infradead.org","Subject":"Re: [PATCH v2 23/28] arm64/sve: KVM: Treat guest SVE use as\n\tundefined instruction execution","Message-ID":"<20170929130029.GG3611@e103592.cambridge.arm.com>","References":"<1504198860-12951-1-git-send-email-Dave.Martin@arm.com>\n\t<1504198860-12951-24-git-send-email-Dave.Martin@arm.com>\n\t<874ls59zku.fsf@linaro.org>","MIME-Version":"1.0","Content-Type":"text/plain; charset=iso-8859-1","Content-Disposition":"inline","Content-Transfer-Encoding":"8bit","In-Reply-To":"<874ls59zku.fsf@linaro.org>","User-Agent":"Mutt/1.5.23 (2014-03-12)"}},{"id":1777582,"web_url":"http://patchwork.ozlabs.org/comment/1777582/","msgid":"<87bmltd0pv.fsf@linaro.org>","list_archive_url":null,"date":"2017-09-29T14:43:40","subject":"Re: [PATCH v2 23/28] arm64/sve: KVM: Treat guest SVE use as\n\tundefined instruction execution","submitter":{"id":39532,"url":"http://patchwork.ozlabs.org/api/people/39532/","name":"Alex Bennée","email":"alex.bennee@linaro.org"},"content":"Dave Martin <Dave.Martin@arm.com> writes:\n\n> On Thu, Sep 14, 2017 at 02:31:13PM +0100, Alex Bennée wrote:\n>>\n>> Dave Martin <Dave.Martin@arm.com> writes:\n>>\n>> > When trapping forbidden attempts by a guest to use SVE, we want the\n>> > guest to see a trap consistent with SVE not being implemented.\n>> >\n>> > This patch injects an undefined instruction exception into the\n>> > guest in response to such an exception.\n>>\n>> I do wonder if this should be merged with the previous trap enabling\n>> patch though?\n>\n> Yes, that would make sense now I look at it.\n>\n> Can I keep your Reviewed-by on the combined patch?\n\nSure.\n\n>\n> Cheers\n> ---Dave\n>\n>>\n>> >\n>> > Signed-off-by: Dave Martin <Dave.Martin@arm.com>\n>> > ---\n>> >  arch/arm64/kvm/handle_exit.c | 8 ++++++++\n>> >  1 file changed, 8 insertions(+)\n>> >\n>> > diff --git a/arch/arm64/kvm/handle_exit.c b/arch/arm64/kvm/handle_exit.c\n>> > index 17d8a16..e3e42d0 100644\n>> > --- a/arch/arm64/kvm/handle_exit.c\n>> > +++ b/arch/arm64/kvm/handle_exit.c\n>> > @@ -147,6 +147,13 @@ static int kvm_handle_unknown_ec(struct kvm_vcpu *vcpu, struct kvm_run *run)\n>> >  \treturn 1;\n>> >  }\n>> >\n>> > +static int handle_sve(struct kvm_vcpu *vcpu, struct kvm_run *run)\n>> > +{\n>> > +\t/* Until SVE is supported for guests: */\n>> > +\tkvm_inject_undefined(vcpu);\n>> > +\treturn 1;\n>> > +}\n>> > +\n>> >  static exit_handle_fn arm_exit_handlers[] = {\n>> >  \t[0 ... ESR_ELx_EC_MAX]\t= kvm_handle_unknown_ec,\n>> >  \t[ESR_ELx_EC_WFx]\t= kvm_handle_wfx,\n>> > @@ -160,6 +167,7 @@ static exit_handle_fn arm_exit_handlers[] = {\n>> >  \t[ESR_ELx_EC_HVC64]\t= handle_hvc,\n>> >  \t[ESR_ELx_EC_SMC64]\t= handle_smc,\n>> >  \t[ESR_ELx_EC_SYS64]\t= kvm_handle_sys_reg,\n>> > +\t[ESR_ELx_EC_SVE]\t= handle_sve,\n>> >  \t[ESR_ELx_EC_IABT_LOW]\t= kvm_handle_guest_abort,\n>> >  \t[ESR_ELx_EC_DABT_LOW]\t= kvm_handle_guest_abort,\n>> >  \t[ESR_ELx_EC_SOFTSTP_LOW]= kvm_handle_guest_debug,\n>>\n>>\n>> --\n>> Alex Bennée\n>>\n>> _______________________________________________\n>> linux-arm-kernel mailing list\n>> linux-arm-kernel@lists.infradead.org\n>> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel\n\n\n--\nAlex Bennée","headers":{"Return-Path":"<libc-alpha-return-85113-incoming=patchwork.ozlabs.org@sourceware.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":["patchwork-incoming@bilbo.ozlabs.org","mailing list libc-alpha@sourceware.org"],"Authentication-Results":["ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=sourceware.org\n\t(client-ip=209.132.180.131; helo=sourceware.org;\n\tenvelope-from=libc-alpha-return-85113-incoming=patchwork.ozlabs.org@sourceware.org;\n\treceiver=<UNKNOWN>)","ozlabs.org; dkim=pass (1024-bit key;\n\tsecure) header.d=sourceware.org header.i=@sourceware.org\n\theader.b=\"k5grJ/dI\"; dkim-atps=neutral","sourceware.org; auth=none"],"Received":["from sourceware.org (server1.sourceware.org [209.132.180.131])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3y3Z7Y1ywbz9t3s\n\tfor <incoming@patchwork.ozlabs.org>;\n\tSat, 30 Sep 2017 00:43:52 +1000 (AEST)","(qmail 49231 invoked by alias); 29 Sep 2017 14:43:46 -0000","(qmail 47884 invoked by uid 89); 29 Sep 2017 14:43:46 -0000"],"DomainKey-Signature":"a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id\n\t:list-unsubscribe:list-subscribe:list-archive:list-post\n\t:list-help:sender:references:from:to:cc:subject:in-reply-to:date\n\t:message-id:mime-version:content-type:content-transfer-encoding;\n\tq=dns; s=default; b=r6qRo+wO8006Cc1ClU6AOusyTkuBAXlRlwsXn4hdjoO\n\tmAdkmuZUdMaqUq9Nly3g5jAVY4k+3zCOJ2GbrBXZcI5HuKMQ30tcZBln0PwWGWvY\n\tXc2c2x9F7uxwr90YfJJOMPq10GhGl/2uApLkq72nW2ZAsH+z8GXX9KgZY1ede/24\n\t=","DKIM-Signature":"v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id\n\t:list-unsubscribe:list-subscribe:list-archive:list-post\n\t:list-help:sender:references:from:to:cc:subject:in-reply-to:date\n\t:message-id:mime-version:content-type:content-transfer-encoding;\n\ts=default; bh=hyaMnPda01gF1FACOAHQebsJBSs=; b=k5grJ/dI6FbpO51nP\n\tdi5mvGopL3J/MAXEPDypyogDJ7zdnO6wIXuT8hqgwLWDrqSUpH1o15zeobVtOvJk\n\tD8cFdkejfcCji3ygCy1Orif5hK9uJAnxlV9RQ/+sflVol/s2Z7WtU4PdJVuKZBAF\n\tuz7AlZS8YdCzlHOZf3DunvVJAQ=","Mailing-List":"contact libc-alpha-help@sourceware.org; run by ezmlm","Precedence":"bulk","List-Id":"<libc-alpha.sourceware.org>","List-Unsubscribe":"<mailto:libc-alpha-unsubscribe-incoming=patchwork.ozlabs.org@sourceware.org>","List-Subscribe":"<mailto:libc-alpha-subscribe@sourceware.org>","List-Archive":"<http://sourceware.org/ml/libc-alpha/>","List-Post":"<mailto:libc-alpha@sourceware.org>","List-Help":"<mailto:libc-alpha-help@sourceware.org>,\n\t<http://sourceware.org/ml/#faqs>","Sender":"libc-alpha-owner@sourceware.org","X-Virus-Found":"No","X-Spam-SWARE-Status":"No, score=-26.5 required=5.0 tests=AWL, BAYES_00,\n\tGIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3,\n\tRCVD_IN_DNSWL_NONE,\n\tSPF_PASS autolearn=ham version=3.3.2 spammy=","X-HELO":"mail-wm0-f47.google.com","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n\td=1e100.net; s=20161025;\n\th=x-gm-message-state:references:user-agent:from:to:cc:subject\n\t:in-reply-to:date:message-id:mime-version:content-transfer-encoding; \n\tbh=cdNbJWbh2+aNAU4QL+bD3Zw/60wBUn9eHQFzF4HemFY=;\n\tb=dptF2sBWFt6ckKZG52BKDfirsuhHTW2DdcNHp1u3mSciBgi7oT75IZ51UGNxYRIPm1\n\tj5gkH/IdDSMWbx6pr/eZnJdPFIQe/fR2tk5TtU/W+bRB7hafo/aTwyzBP+fe8WW/Jhhc\n\t1HEfr+ywXrTtcFOv6Uq7+sWgkbPT6VTAqx/BEY+ebY3ye6pFPCy12LhFRtaprM1gD/tM\n\tjP34eXNbrXnrgJ1FevXRDTNL+4K8j1ogE1WyFHTv2aRWyW3x+eQNzR8bYzGqX7wup9j/\n\t37UyIiMIXKuu6ofQh+gRIZxwWxzjLP3ZRn/EGO9Ub2+Wn4gLI1v+XuUsfPqTYd3xGXcV\n\t11iA==","X-Gm-Message-State":"AMCzsaX9uIPhmVEhspb/Z57icdBGdnD/1p1GLWdqx4cDdR132rLju8Y3\n\tuxzJiBUWYD+aYLiE2PK8OLh/zw==","X-Google-Smtp-Source":"AOwi7QD3RFEksEkqOkg69/4gz3UWpjsjCbsOsvRcDPdpuMr4XTTdNei21Nb67q/ekbJ9v2q4/Hiy/g==","X-Received":"by 10.28.87.143 with SMTP id l137mr3765674wmb.66.1506696221560; \n\tFri, 29 Sep 2017 07:43:41 -0700 (PDT)","References":"<1504198860-12951-1-git-send-email-Dave.Martin@arm.com>\n\t<1504198860-12951-24-git-send-email-Dave.Martin@arm.com>\n\t<874ls59zku.fsf@linaro.org>\n\t<20170929130029.GG3611@e103592.cambridge.arm.com>","User-agent":"mu4e 0.9.19; emacs 26.0.60","From":"Alex =?utf-8?q?Benn=C3=A9e?= <alex.bennee@linaro.org>","To":"Dave Martin <Dave.Martin@arm.com>","Cc":"linux-arch@vger.kernel.org, libc-alpha@sourceware.org,\n\tArd Biesheuvel <ard.biesheuvel@linaro.org>,\n\tSzabolcs Nagy <szabolcs.nagy@arm.com>,\n\tCatalin Marinas <catalin.marinas@arm.com>,\n\tWill Deacon <will.deacon@arm.com>, Marc Zyngier <marc.zyngier@arm.com>,\n\tChristoffer Dall <christoffer.dall@linaro.org>,\n\tRichard Sandiford <richard.sandiford@arm.com>,\n\tkvmarm@lists.cs.columbia.edu, linux-arm-kernel@lists.infradead.org","Subject":"Re: [PATCH v2 23/28] arm64/sve: KVM: Treat guest SVE use as\n\tundefined instruction execution","In-reply-to":"<20170929130029.GG3611@e103592.cambridge.arm.com>","Date":"Fri, 29 Sep 2017 15:43:40 +0100","Message-ID":"<87bmltd0pv.fsf@linaro.org>","MIME-Version":"1.0","Content-Type":"text/plain; charset=utf-8","Content-Transfer-Encoding":"8bit"}}]