From patchwork Wed Dec 7 00:09:59 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sean Christopherson X-Patchwork-Id: 30551 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:f944:0:0:0:0:0 with SMTP id q4csp3124363wrr; Tue, 6 Dec 2022 16:16:06 -0800 (PST) X-Google-Smtp-Source: AA0mqf4Ri9AlP3c37y//Iqeui6DB2Ahx87aq6vYltN12IrrBEyei23emVVRCuAtlf2r3a5ykM8Rq X-Received: by 2002:a17:903:3281:b0:189:b74e:cbf7 with SMTP id jh1-20020a170903328100b00189b74ecbf7mr25254730plb.29.1670372166083; Tue, 06 Dec 2022 16:16:06 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1670372166; cv=none; d=google.com; s=arc-20160816; b=b20sH7I0RIOlVySMD8stJpPN8CQGdsUhYt6t6noeZNoxJlYruu+0u9D+vcnwz5lVyB JgMbLaTocxMBhKERiNxH8Hd0D/sXDgkFNN178meA6ah9B6uPuewZ9GyIo5PPhlqMjAj4 o4mnb6gB1o7XEUwLXr1wgMaWpCQUipwRvwle/Bof+PtjrRedA+kWei/cGq2ZBnkd8fRt /J9ys5n6n9v6fjN1Px0L3vTzSenTMLZj5hcapBDtEzqtPG0bpi5YXiWbsM2d/RP18EW0 mpwSA39m4pMLlWAt/CUGOiYvjaGBlNW0214pBzaoNfKTLzRDchyCHgJGtLcNQDdJfxIO i2sQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:from:subject:message-id:mime-version:date :reply-to:dkim-signature; bh=lFyjvE+/usZ3mHWbZDkMlHN2qIDbnx/TDXsa9Xl7diU=; b=lm/a5U/0jIrtcqZvt4g0vQDYI/7etatSUe+QvTz+lAuBYBIrBgjcm+PR5r9Z5/zidt vm/LrcFPGqZztt3usUvRPqvmpnzNOxAT8ptwtFqeVZoKxiCAOxQ8bH1UanypDY65m6km HfJrYi+WfaK3WFK3Na6hYpwbD6dto4ImWK5WYkbtKqhostVVHxImzubN4z0N9npQVjwj dVb4HLnEYUggvxS0puGc8qjgBnSNEoprkbQKjdn870zJRNxjslAwXDMN9CRqOHwRZrop prFKxJMQsGnsJsT/0m1b3JQM0eosDFJgEIHJRB98tK+ixD8HR/B6mmsZZXz/enqw3XR+ JCHw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=dRgE7Can; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id 141-20020a630493000000b004785b00c5b7si19039875pge.143.2022.12.06.16.15.49; Tue, 06 Dec 2022 16:16:06 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=dRgE7Can; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229748AbiLGAKE (ORCPT + 99 others); Tue, 6 Dec 2022 19:10:04 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58052 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229638AbiLGAKC (ORCPT ); Tue, 6 Dec 2022 19:10:02 -0500 Received: from mail-pg1-x54a.google.com (mail-pg1-x54a.google.com [IPv6:2607:f8b0:4864:20::54a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 0E4E82F386 for ; Tue, 6 Dec 2022 16:10:02 -0800 (PST) Received: by mail-pg1-x54a.google.com with SMTP id 38-20020a630b26000000b004773803dda1so13246452pgl.17 for ; Tue, 06 Dec 2022 16:10:02 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=cc:to:from:subject:message-id:mime-version:date:reply-to:from:to:cc :subject:date:message-id:reply-to; bh=lFyjvE+/usZ3mHWbZDkMlHN2qIDbnx/TDXsa9Xl7diU=; b=dRgE7CandgE839OqfBwtAVB5NMh/v3rnYdKjFozZHdPbpdwNQpIj+Z5ey1WMfdACTo YqrFJX8ZLeDx2dAovWK1rk+CC28V5xnr7L+rvAv2Is6ewS7EOgvZL5tyzvDZA8Gxpr/N 9+QMcZwI17keGuCRIRzna/hTpBdqqdnIeo6ouvvm1QNoiZ1i7gv/NjJoB0GXD2VmPTQu JQuGO/1UAP4fK0EMYjMnyKey8Gkxfx2O6dkOddHm0/Be10T9dofh48yqXyChvOMMGqOk VVqym7N9fi/A7BSsOLLEl6oTExwoGpgF8Vi0Gb0M0OCQP7fvoqHjOGpOh4avxIk2m3iS eOKw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:from:subject:message-id:mime-version:date:reply-to :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=lFyjvE+/usZ3mHWbZDkMlHN2qIDbnx/TDXsa9Xl7diU=; b=rZpL7ngB9pE6MLv3B/1HNx1y7xtT8bmICv/KEL1OQrwzvEfzAsTrFO3aXwQcWVbKQ6 gy/POWmK4Kxn1dWp7w7btKJKyQ6sm6wcoGZws4/CiUBpKWRQ2ilqAJBhARlN6cZbqXnX Pu75zUCWFLwRaoL3AKAIFK9oVtLOa/kUYkrhskOpFpbzkkGlnaWqEcdDCSe3zxWSlc5r 7aHsQonc+OgeoDflTIUTdbuIbjAtuwIP2Z0kv+h9bFrWqpSfkmBGnP57QLUyCR2EZAPU wDeNcNWdDGi94Jxj1gXPg5N8nOY0pWQ7uobCBwhU9TZ8K60PeAn7PVF8q9cl8da3CWso OH7g== X-Gm-Message-State: ANoB5pk7uXYt+yBLiYyiIG9ksRA0iI8sbXVFOV4mLeMtP8hiRLqcldR8 EywEFgR9QC1Q8LtkC5q+csLRi3KXW80= X-Received: from zagreus.c.googlers.com ([fda3:e722:ac3:cc00:7f:e700:c0a8:5c37]) (user=seanjc job=sendgmr) by 2002:a62:168f:0:b0:574:80c6:7106 with SMTP id 137-20020a62168f000000b0057480c67106mr61852303pfw.23.1670371801577; Tue, 06 Dec 2022 16:10:01 -0800 (PST) Reply-To: Sean Christopherson Date: Wed, 7 Dec 2022 00:09:59 +0000 Mime-Version: 1.0 X-Mailer: git-send-email 2.39.0.rc1.256.g54fd8350bd-goog Message-ID: <20221207000959.2035098-1-seanjc@google.com> Subject: [PATCH] KVM: x86: Add proper ReST tables for userspace MSR exits/flags From: Sean Christopherson To: Paolo Bonzini Cc: kvm@vger.kernel.org, linux-kernel@vger.kernel.org, Sean Christopherson X-Spam-Status: No, score=-9.6 required=5.0 tests=BAYES_00,DKIMWL_WL_MED, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,USER_IN_DEF_DKIM_WL autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1751512164242767673?= X-GMAIL-MSGID: =?utf-8?q?1751512164242767673?= Add ReST formatting to the set of userspace MSR exits/flags so that the resulting HTML docs generate a table instead of malformed gunk. This also fixes a warning that was introduced by a recent cleanup of the relevant documentation (yay copy+paste). >> Documentation/virt/kvm/api.rst:7287: WARNING: Block quote ends without a blank line; unexpected unindent. Fixes: 1ae099540e8c ("KVM: x86: Allow deflecting unknown MSR accesses to user space") Fixes: 1f158147181b ("KVM: x86: Clean up KVM_CAP_X86_USER_SPACE_MSR documentation") Reported-by: kernel test robot Signed-off-by: Sean Christopherson --- Documentation/virt/kvm/api.rst | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) base-commit: 3d7af7c5e000c68581429d533ed63414e4a48e6d diff --git a/Documentation/virt/kvm/api.rst b/Documentation/virt/kvm/api.rst index c618fae44ad7..778c6460d1de 100644 --- a/Documentation/virt/kvm/api.rst +++ b/Documentation/virt/kvm/api.rst @@ -6455,9 +6455,11 @@ The "reason" field specifies why the MSR interception occurred. Userspace will only receive MSR exits when a particular reason was requested during through ENABLE_CAP. Currently valid exit reasons are: - KVM_MSR_EXIT_REASON_UNKNOWN - access to MSR that is unknown to KVM - KVM_MSR_EXIT_REASON_INVAL - access to invalid MSRs or reserved bits - KVM_MSR_EXIT_REASON_FILTER - access blocked by KVM_X86_SET_MSR_FILTER +============================ ======================================== + KVM_MSR_EXIT_REASON_UNKNOWN access to MSR that is unknown to KVM + KVM_MSR_EXIT_REASON_INVAL access to invalid MSRs or reserved bits + KVM_MSR_EXIT_REASON_FILTER access blocked by KVM_X86_SET_MSR_FILTER +============================ ======================================== For KVM_EXIT_X86_RDMSR, the "index" field tells userspace which MSR the guest wants to read. To respond to this request with a successful read, userspace @@ -7256,11 +7258,13 @@ to inform a user that an MSR was not emulated/virtualized by KVM. The valid mask flags are: - KVM_MSR_EXIT_REASON_UNKNOWN - intercept accesses to unknown (to KVM) MSRs - KVM_MSR_EXIT_REASON_INVAL - intercept accesses that are architecturally - invalid according to the vCPU model and/or mode - KVM_MSR_EXIT_REASON_FILTER - intercept accesses that are denied by userspace - via KVM_X86_SET_MSR_FILTER +============================ =============================================== + KVM_MSR_EXIT_REASON_UNKNOWN intercept accesses to unknown (to KVM) MSRs + KVM_MSR_EXIT_REASON_INVAL intercept accesses that are architecturally + invalid according to the vCPU model and/or mode + KVM_MSR_EXIT_REASON_FILTER intercept accesses that are denied by userspace + via KVM_X86_SET_MSR_FILTER +============================ =============================================== 7.22 KVM_CAP_X86_BUS_LOCK_EXIT -------------------------------