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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 51A35C43334 for ; Wed, 8 Jun 2022 17:39:36 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232587AbiFHRjf (ORCPT ); Wed, 8 Jun 2022 13:39:35 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41468 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232609AbiFHRjd (ORCPT ); Wed, 8 Jun 2022 13:39:33 -0400 Received: from mail-vs1-xe2b.google.com (mail-vs1-xe2b.google.com [IPv6:2607:f8b0:4864:20::e2b]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B9ED446653 for ; Wed, 8 Jun 2022 10:39:29 -0700 (PDT) Received: by mail-vs1-xe2b.google.com with SMTP id x187so20403130vsb.0 for ; Wed, 08 Jun 2022 10:39:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=YMlVWKWFWg+nhbnd5V57+qJ+IXhci7VV/Jgt/zHgEZ0=; b=j3J+tWdGuDnMmzW4G3/e2Yrhr9b9g3Ixir6vg/ocyLbpDgCQnabw633VQz6gVt/Clq d6sT+N9Jhqbyc//8NN1Kpz7bE3GnUXthlUddzx6GVNOqAYWs2ys7dH/k52qs6ZR9Rh5N wYh0MQPu0tIzB1L3mrF28BVdB1JDjrnssIasa6WvL8hA5ICtUnV+hPkeFOZxF2clN1+g xoCjHxrkFFsG5YEHV6qSO9Jky2BqWQKskCRD1Smx6E2RuSggMQBft86f5VfN3oUdvNl+ dA6IFRBsAkMqdTgjgyDDOAfcNA1oKJk5Gdjt1TQV9Gd5xf/yl6adfEct3gEyArl7EvAU PArg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=YMlVWKWFWg+nhbnd5V57+qJ+IXhci7VV/Jgt/zHgEZ0=; b=XUgl2oMjw6L75HNwT0JX9o8TVSkkqCcEvYtHd+q1gsOynBkWjmNagpoV5V68G6CcJr +gs+1CCEvQrWXGo1xT+RDC2FPOQPMn95ieehsDkD6LfjctSE/DZCrrqtHO3NTlPAOpjj YAp4Jxm0yXlnrnwbCZ4TKH4uwj8CiW72PK7x6xC0onMFcB749xWzICCCwzI5qmpSk8Sm xVWJgExLr0oajTrHWK0dlq59YuNbYsqvNaOFlIsR5q/S+kODaS2va7fAhUtvK8i1oO4W DMxMCaGgz09l2ww7r79NwKn0SzJ/M23+etznVnufQTNyE+aV1527BVzon4W6x90UtvkP n2mA== X-Gm-Message-State: AOAM532jz/Eb/J6UwbrrYzxEVBuwkn2vrGVsiIRdJms3PMMa2kiq4dMe ypknsBqSMp2HrkAX7iLj4qqH8JB450Rg84O5GxPxZg== X-Google-Smtp-Source: ABdhPJwIIsHt0xzWM00HLFl0l6aL+x8xCN7jsifDlcALw0DFomqzVq6S0bhgX6CLu/L4ldhqPBDIwXZNDYBF05IHKrM= X-Received: by 2002:a67:d30d:0:b0:34a:8d6c:1be6 with SMTP id a13-20020a67d30d000000b0034a8d6c1be6mr14582002vsj.74.1654709968634; Wed, 08 Jun 2022 10:39:28 -0700 (PDT) MIME-Version: 1.0 References: <20220519134204.5379-1-will@kernel.org> <20220519134204.5379-60-will@kernel.org> In-Reply-To: From: Peter Collingbourne Date: Wed, 8 Jun 2022 10:39:14 -0700 Message-ID: Subject: Re: [PATCH 59/89] KVM: arm64: Do not support MTE for protected VMs To: Fuad Tabba Cc: Will Deacon , kvmarm@lists.cs.columbia.edu, Ard Biesheuvel , Sean Christopherson , Alexandru Elisei , Andy Lutomirski , Catalin Marinas , James Morse , Chao Peng , Quentin Perret , Suzuki K Poulose , Michael Roth , Mark Rutland , Oliver Upton , Marc Zyngier , kernel-team@android.com, kvm@vger.kernel.org, Linux ARM Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: kvm@vger.kernel.org On Wed, Jun 8, 2022 at 12:40 AM Fuad Tabba wrote: > > Hi Peter, > > On Tue, Jun 7, 2022 at 1:42 AM Peter Collingbourne wrote: > > > > On Thu, May 19, 2022 at 7:40 AM Will Deacon wrote: > > > > > > From: Fuad Tabba > > > > > > Return an error (-EINVAL) if trying to enable MTE on a protected > > > vm. > > > > > > Signed-off-by: Fuad Tabba > > > --- > > > arch/arm64/kvm/arm.c | 4 +++- > > > 1 file changed, 3 insertions(+), 1 deletion(-) > > > > > > diff --git a/arch/arm64/kvm/arm.c b/arch/arm64/kvm/arm.c > > > index 10e036bf06e3..8a1b4ba1dfa7 100644 > > > --- a/arch/arm64/kvm/arm.c > > > +++ b/arch/arm64/kvm/arm.c > > > @@ -90,7 +90,9 @@ int kvm_vm_ioctl_enable_cap(struct kvm *kvm, > > > break; > > > case KVM_CAP_ARM_MTE: > > > mutex_lock(&kvm->lock); > > > - if (!system_supports_mte() || kvm->created_vcpus) { > > > + if (!system_supports_mte() || > > > + kvm_vm_is_protected(kvm) || > > > > Should this check be added to kvm_vm_ioctl_check_extension() as well? > > No need. kvm_vm_ioctl_check_extension() calls pkvm_check_extension() > for protected vms, which functions as an allow list rather than a > block list. I see. I guess I got confused when reading the code because I saw this in kvm_check_extension(): case KVM_CAP_ARM_NISV_TO_USER: r = !kvm || !kvm_vm_is_protected(kvm); break; This can probably be simplified to "r = 1;". Peter 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 8135AC433EF for ; Wed, 8 Jun 2022 17:41:13 +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-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:Cc:To:Subject:Message-ID:Date:From: In-Reply-To:References:MIME-Version:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=bHfUKbNf0P0HybJZp9BZyCV1x/s+Xg6ioMxbN6EdAH0=; b=UDZWW2w9MHRyJD veWz52kQliXY5DuMH5FoxT/qEh6KJtl6tNH49NP5zpZbc8DdsgaiHcfL+b1rLzaVGEgIPy74ON28X Rsp70CN4TWlp4oxBAUN0edO0IQSxVlWdNCKcxSP5OTtLiaOZ/O1tYLtcCb9FYsIgSYkuY/RmB4Ij+ pKEzv8DVskDMQjLN04RB3768lByNsjsDl0EBa6mraruyxRQe4mxMAPL/gf1QUFzXr0vU+ou/7jtYC hczto6AGxRhT/jRm7jemrHBiNPvydGCC+QskkZG3n7WiJx+tka0/JXPrMlM/kj0l6SEocbNG7S7ag g3rB9WbEQUzyiP6jL/nA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1nyzf5-00EWOu-Tx; Wed, 08 Jun 2022 17:40:08 +0000 Received: from mail-vs1-xe2e.google.com ([2607:f8b0:4864:20::e2e]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1nyzf2-00EW7q-7f for linux-arm-kernel@lists.infradead.org; Wed, 08 Jun 2022 17:40:05 +0000 Received: by mail-vs1-xe2e.google.com with SMTP id e11so5843141vsh.13 for ; Wed, 08 Jun 2022 10:39:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=YMlVWKWFWg+nhbnd5V57+qJ+IXhci7VV/Jgt/zHgEZ0=; b=j3J+tWdGuDnMmzW4G3/e2Yrhr9b9g3Ixir6vg/ocyLbpDgCQnabw633VQz6gVt/Clq d6sT+N9Jhqbyc//8NN1Kpz7bE3GnUXthlUddzx6GVNOqAYWs2ys7dH/k52qs6ZR9Rh5N wYh0MQPu0tIzB1L3mrF28BVdB1JDjrnssIasa6WvL8hA5ICtUnV+hPkeFOZxF2clN1+g xoCjHxrkFFsG5YEHV6qSO9Jky2BqWQKskCRD1Smx6E2RuSggMQBft86f5VfN3oUdvNl+ dA6IFRBsAkMqdTgjgyDDOAfcNA1oKJk5Gdjt1TQV9Gd5xf/yl6adfEct3gEyArl7EvAU PArg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=YMlVWKWFWg+nhbnd5V57+qJ+IXhci7VV/Jgt/zHgEZ0=; b=vprPE4Jm4P7UtQNoph8MU1QDu/EewBC6+1CFZDg17WHCeq2BEP0v2ZzyAe5M0J+Dru rRA1dHaybmmQUkFupR1pVf1LlRt81Z85sjwA+RdatbJYhCc93tXUl0pNMRCXQAuggjEq L2w46uZ7p4TGNlyP502BTOmgRqh2sXLHjtrLBfXjbFqrSHYNsR3lv+Fg4u5E1Bu8sUpZ cFmoQhz+OhbZhlVYIva0bnA6RqFeNQnVMhRkqD5x5xImT17MIV0nvjmZCCjr34KRv/Zs wc3k3a8vAU7hg3L8fvoUJBq8SxNyCMe0ZMJJKyU8bRX4LVDEipHq7zNccBWv9ppjD30o dnsg== X-Gm-Message-State: AOAM533dm9xT3Q7fnQLF/245nOCGS2OQ99kXiGrG5jvav5fuI2vPk5IF +eEovfKpRkg45csauzrNeIOXlGT6amXY/Mq2D2kylA== X-Google-Smtp-Source: ABdhPJwIIsHt0xzWM00HLFl0l6aL+x8xCN7jsifDlcALw0DFomqzVq6S0bhgX6CLu/L4ldhqPBDIwXZNDYBF05IHKrM= X-Received: by 2002:a67:d30d:0:b0:34a:8d6c:1be6 with SMTP id a13-20020a67d30d000000b0034a8d6c1be6mr14582002vsj.74.1654709968634; Wed, 08 Jun 2022 10:39:28 -0700 (PDT) MIME-Version: 1.0 References: <20220519134204.5379-1-will@kernel.org> <20220519134204.5379-60-will@kernel.org> In-Reply-To: From: Peter Collingbourne Date: Wed, 8 Jun 2022 10:39:14 -0700 Message-ID: Subject: Re: [PATCH 59/89] KVM: arm64: Do not support MTE for protected VMs To: Fuad Tabba Cc: Will Deacon , kvmarm@lists.cs.columbia.edu, Ard Biesheuvel , Sean Christopherson , Alexandru Elisei , Andy Lutomirski , Catalin Marinas , James Morse , Chao Peng , Quentin Perret , Suzuki K Poulose , Michael Roth , Mark Rutland , Oliver Upton , Marc Zyngier , kernel-team@android.com, kvm@vger.kernel.org, Linux ARM X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220608_104004_318398_50EE4B2A X-CRM114-Status: GOOD ( 21.42 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On Wed, Jun 8, 2022 at 12:40 AM Fuad Tabba wrote: > > Hi Peter, > > On Tue, Jun 7, 2022 at 1:42 AM Peter Collingbourne wrote: > > > > On Thu, May 19, 2022 at 7:40 AM Will Deacon wrote: > > > > > > From: Fuad Tabba > > > > > > Return an error (-EINVAL) if trying to enable MTE on a protected > > > vm. > > > > > > Signed-off-by: Fuad Tabba > > > --- > > > arch/arm64/kvm/arm.c | 4 +++- > > > 1 file changed, 3 insertions(+), 1 deletion(-) > > > > > > diff --git a/arch/arm64/kvm/arm.c b/arch/arm64/kvm/arm.c > > > index 10e036bf06e3..8a1b4ba1dfa7 100644 > > > --- a/arch/arm64/kvm/arm.c > > > +++ b/arch/arm64/kvm/arm.c > > > @@ -90,7 +90,9 @@ int kvm_vm_ioctl_enable_cap(struct kvm *kvm, > > > break; > > > case KVM_CAP_ARM_MTE: > > > mutex_lock(&kvm->lock); > > > - if (!system_supports_mte() || kvm->created_vcpus) { > > > + if (!system_supports_mte() || > > > + kvm_vm_is_protected(kvm) || > > > > Should this check be added to kvm_vm_ioctl_check_extension() as well? > > No need. kvm_vm_ioctl_check_extension() calls pkvm_check_extension() > for protected vms, which functions as an allow list rather than a > block list. I see. I guess I got confused when reading the code because I saw this in kvm_check_extension(): case KVM_CAP_ARM_NISV_TO_USER: r = !kvm || !kvm_vm_is_protected(kvm); break; This can probably be simplified to "r = 1;". Peter _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel 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 mm01.cs.columbia.edu (mm01.cs.columbia.edu [128.59.11.253]) by smtp.lore.kernel.org (Postfix) with ESMTP id F2FBAC433EF for ; Thu, 9 Jun 2022 12:03:09 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by mm01.cs.columbia.edu (Postfix) with ESMTP id 571314B225; Thu, 9 Jun 2022 08:03:09 -0400 (EDT) X-Virus-Scanned: at lists.cs.columbia.edu Authentication-Results: mm01.cs.columbia.edu (amavisd-new); dkim=softfail (fail, message has been altered) header.i=@google.com Received: from mm01.cs.columbia.edu ([127.0.0.1]) by localhost (mm01.cs.columbia.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id TX1-x8B+8MWb; Thu, 9 Jun 2022 08:03:06 -0400 (EDT) Received: from mm01.cs.columbia.edu (localhost [127.0.0.1]) by mm01.cs.columbia.edu (Postfix) with ESMTP id 18D7C4B280; Thu, 9 Jun 2022 08:03:06 -0400 (EDT) Received: from localhost (localhost [127.0.0.1]) by mm01.cs.columbia.edu (Postfix) with ESMTP id 60EF94B20A for ; Wed, 8 Jun 2022 13:39:30 -0400 (EDT) X-Virus-Scanned: at lists.cs.columbia.edu Received: from mm01.cs.columbia.edu ([127.0.0.1]) by localhost (mm01.cs.columbia.edu [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id PO2N83nsfsI0 for ; Wed, 8 Jun 2022 13:39:29 -0400 (EDT) Received: from mail-vs1-f43.google.com (mail-vs1-f43.google.com [209.85.217.43]) by mm01.cs.columbia.edu (Postfix) with ESMTPS id 5F9124B1EC for ; Wed, 8 Jun 2022 13:39:29 -0400 (EDT) Received: by mail-vs1-f43.google.com with SMTP id g6so2050563vsb.2 for ; Wed, 08 Jun 2022 10:39:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=YMlVWKWFWg+nhbnd5V57+qJ+IXhci7VV/Jgt/zHgEZ0=; b=j3J+tWdGuDnMmzW4G3/e2Yrhr9b9g3Ixir6vg/ocyLbpDgCQnabw633VQz6gVt/Clq d6sT+N9Jhqbyc//8NN1Kpz7bE3GnUXthlUddzx6GVNOqAYWs2ys7dH/k52qs6ZR9Rh5N wYh0MQPu0tIzB1L3mrF28BVdB1JDjrnssIasa6WvL8hA5ICtUnV+hPkeFOZxF2clN1+g xoCjHxrkFFsG5YEHV6qSO9Jky2BqWQKskCRD1Smx6E2RuSggMQBft86f5VfN3oUdvNl+ dA6IFRBsAkMqdTgjgyDDOAfcNA1oKJk5Gdjt1TQV9Gd5xf/yl6adfEct3gEyArl7EvAU PArg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=YMlVWKWFWg+nhbnd5V57+qJ+IXhci7VV/Jgt/zHgEZ0=; b=pleTF+KMSax7AzlqXjBgaB2+kdimEVQUeRjfiXjqBzSwQxZn1kHYB9io4mWojGnEdf BFrg9SQdRM/mWHkrJIwciF7a4D9pg3c6iOBWgicI0xRrusp+2mvQl/KRssmBRKl9U0lX nvRtQJND88tFjFxatgJzuE59gQjCaGmbGFqWLPFghk5ZCqUfuTjQ7zHwFuh7/e8Jxa92 ukp36M/oycZD7S34B7ElcU6kSUdIWzCyhJ75Bt0ntt7APxBQNe479xTW1Yk9odseL7/S HinXYvsPjlGMoUm5y5lcS64Ekw5h4+zxWKAmFFIGPft+7RA6QyD7uPRSMI/tJXROICzC J7Kw== X-Gm-Message-State: AOAM533TumWRG2WJ/QfyRNwCBnoBVlhZW4OaGf0tXw3i/pS81UjyXmMj C9pir53m6MZrVxYYtL2QNvJXV24+ytBHQQHFGaLUVw== X-Google-Smtp-Source: ABdhPJwIIsHt0xzWM00HLFl0l6aL+x8xCN7jsifDlcALw0DFomqzVq6S0bhgX6CLu/L4ldhqPBDIwXZNDYBF05IHKrM= X-Received: by 2002:a67:d30d:0:b0:34a:8d6c:1be6 with SMTP id a13-20020a67d30d000000b0034a8d6c1be6mr14582002vsj.74.1654709968634; Wed, 08 Jun 2022 10:39:28 -0700 (PDT) MIME-Version: 1.0 References: <20220519134204.5379-1-will@kernel.org> <20220519134204.5379-60-will@kernel.org> In-Reply-To: From: Peter Collingbourne Date: Wed, 8 Jun 2022 10:39:14 -0700 Message-ID: Subject: Re: [PATCH 59/89] KVM: arm64: Do not support MTE for protected VMs To: Fuad Tabba X-Mailman-Approved-At: Thu, 09 Jun 2022 08:03:05 -0400 Cc: Marc Zyngier , kernel-team@android.com, kvm@vger.kernel.org, Andy Lutomirski , Michael Roth , Catalin Marinas , Chao Peng , Will Deacon , kvmarm@lists.cs.columbia.edu, Linux ARM X-BeenThere: kvmarm@lists.cs.columbia.edu X-Mailman-Version: 2.1.14 Precedence: list List-Id: Where KVM/ARM decisions are made List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: kvmarm-bounces@lists.cs.columbia.edu Sender: kvmarm-bounces@lists.cs.columbia.edu On Wed, Jun 8, 2022 at 12:40 AM Fuad Tabba wrote: > > Hi Peter, > > On Tue, Jun 7, 2022 at 1:42 AM Peter Collingbourne wrote: > > > > On Thu, May 19, 2022 at 7:40 AM Will Deacon wrote: > > > > > > From: Fuad Tabba > > > > > > Return an error (-EINVAL) if trying to enable MTE on a protected > > > vm. > > > > > > Signed-off-by: Fuad Tabba > > > --- > > > arch/arm64/kvm/arm.c | 4 +++- > > > 1 file changed, 3 insertions(+), 1 deletion(-) > > > > > > diff --git a/arch/arm64/kvm/arm.c b/arch/arm64/kvm/arm.c > > > index 10e036bf06e3..8a1b4ba1dfa7 100644 > > > --- a/arch/arm64/kvm/arm.c > > > +++ b/arch/arm64/kvm/arm.c > > > @@ -90,7 +90,9 @@ int kvm_vm_ioctl_enable_cap(struct kvm *kvm, > > > break; > > > case KVM_CAP_ARM_MTE: > > > mutex_lock(&kvm->lock); > > > - if (!system_supports_mte() || kvm->created_vcpus) { > > > + if (!system_supports_mte() || > > > + kvm_vm_is_protected(kvm) || > > > > Should this check be added to kvm_vm_ioctl_check_extension() as well? > > No need. kvm_vm_ioctl_check_extension() calls pkvm_check_extension() > for protected vms, which functions as an allow list rather than a > block list. I see. I guess I got confused when reading the code because I saw this in kvm_check_extension(): case KVM_CAP_ARM_NISV_TO_USER: r = !kvm || !kvm_vm_is_protected(kvm); break; This can probably be simplified to "r = 1;". Peter _______________________________________________ kvmarm mailing list kvmarm@lists.cs.columbia.edu https://lists.cs.columbia.edu/mailman/listinfo/kvmarm