Received: by 2002:a05:6a10:2785:0:0:0:0 with SMTP id ia5csp519137pxb; Wed, 13 Jan 2021 09:06:45 -0800 (PST) X-Google-Smtp-Source: ABdhPJzQL6uNUL/88aYdeVNsgjm/DkLyKqr1uilWnmzoPKSEAm8OFkHfmh2V0xeCjj/K/EiAsJav X-Received: by 2002:a17:906:415a:: with SMTP id l26mr2281018ejk.463.1610557605217; Wed, 13 Jan 2021 09:06:45 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1610557605; cv=none; d=google.com; s=arc-20160816; b=I3pme4hofV75ac+E0zkkm/8D30tMFAC6sLG2lP5sdeYFevM5AcUA4GcsIOyoIP/p6u 50NgXckBsfzsPjF7flqUB9MNZu5hDznGCeNYW9eTtJfDJvjPc523yNBAkmtqu38twlxZ ORSm753lN1OXZXFjxROFr9YmTfDx3+NRcfFJEdN1OgEbHwzBJwKLZAOfV77cwzKFKJOR +aYHvGLEzfFW9QB8jZTrRJTeGIoH5hBEIHYnrq/pB3FxxUOMbucOGqFSbv22wpORsIrL zLig5g9kAcRqXz9yOSP0q1xK6JreyxvF5U21ean4/fWPKIh9UGZj4T3QOISCnl7LkJ0l 79wA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:content-language :in-reply-to:mime-version:user-agent:date:message-id:from:references :cc:to:subject:dkim-signature; bh=Smmarn7+kTg9NtlEve0dM2aP73SfAqDNXY/hj+WRkWA=; b=DU7ZCizjAm55i2ZFX+IdzUC9naY7JjE7LrRKaIvfqYUIe+J6r3xZiIZYu4uB/DHlwB EVV0DTJ+ol57sZ/TlczL1TYzZcevY8PyGOiUT7ZLgeB7GQENhQMUFmG3eQr7f6C3lWz+ Y4h/J9/z4rBAQfL+xv4f5qXd/ItaduiQLi1W81QJ6gSQfkahFgBbzlVFMhnUFir9pljQ VNL7Ju0s6/4IFiLFGD9kXEjHgOH10xwRhnSU9OZ3mvq/jkbZJYyWVNygCAjVr2GaVi7Q v0cre2zlykN37PB3Dk80rxZr2Gee+LxCaLCiMzi0Agk7FmWrBddzty3iWsiVPQMf1VhL UJjg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@redhat.com header.s=mimecast20190719 header.b=LPMZ595K; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=redhat.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id v26si1205089ejc.336.2021.01.13.09.06.20; Wed, 13 Jan 2021 09:06:45 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@redhat.com header.s=mimecast20190719 header.b=LPMZ595K; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=redhat.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727843AbhAMRDw (ORCPT + 99 others); Wed, 13 Jan 2021 12:03:52 -0500 Received: from us-smtp-delivery-124.mimecast.com ([63.128.21.124]:48844 "EHLO us-smtp-delivery-124.mimecast.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725977AbhAMRDv (ORCPT ); Wed, 13 Jan 2021 12:03:51 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1610557344; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=Smmarn7+kTg9NtlEve0dM2aP73SfAqDNXY/hj+WRkWA=; b=LPMZ595K1KCcvFKR9XjF2D/niCH6pGK8Czcm59E6bSMzvWcZX2VY+98QrZ/VLz3vkzA5Ll ZTkDVDrjEhwVPYieyYU22Xv5o7x30eR4ez7HlCzUQJEcbHYxnFrLFfJ4yQ8seZVB69Ngnn TBsyAy18FUTB8IxG7289rwdpw6Tfb4I= Received: from mail-ed1-f71.google.com (mail-ed1-f71.google.com [209.85.208.71]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-112-deb-xjRNPCuFFReKf3aymQ-1; Wed, 13 Jan 2021 12:02:23 -0500 X-MC-Unique: deb-xjRNPCuFFReKf3aymQ-1 Received: by mail-ed1-f71.google.com with SMTP id m16so1150148edd.21 for ; Wed, 13 Jan 2021 09:02:22 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=Smmarn7+kTg9NtlEve0dM2aP73SfAqDNXY/hj+WRkWA=; b=dudbFp5TvMnXekEeLoPXTR2PlPNBio42akOjYBfBzR2bgu981Vi5hlR1/Miujeo4Y7 x1lYneNigd6wIUEjAGoY7QV2vBSCJdNJnu8lNPKrfDs+lLs2RCansN/EUb7e/SVPgaVS 9KuR+KGNj7cfjk3BVuGufCDi6F1nJQEJxoYvGS6UamJ3K+QFCmL65YxibwG39MrOs/w1 oZMFvV6++YXoV+yc75c4B2Ol3fzHrrU5ecqPVNjrM3GEB9AE6f3dGLNzBRn3HCWKepIB CET/ZuMOCLk/AyiL+QgkbPWZT92k90cNNZ2WNKOHZiUBpaWCAeJtMcaIvqyJdjQk4MFy GQAw== X-Gm-Message-State: AOAM531NolVMneIvNgqpHIJqzUKTZXWXDyN1thnE9wdHQtA7Bf8ilzeb nP/3o22wUReXZHuszXJWeRK/WGmK1SlAi1//Q/EOEP47bFFuuYh+rV3gwEHzCxeMnyIbufGHoyh 2We2m3UYih+5scovCD/LLJ4ys9hEsxchgj3qcyFpJAP+h4iCpdZXzQXXSUbB2nljBraqdynYwj6 XZ X-Received: by 2002:aa7:d494:: with SMTP id b20mr2644622edr.330.1610557340564; Wed, 13 Jan 2021 09:02:20 -0800 (PST) X-Received: by 2002:aa7:d494:: with SMTP id b20mr2644591edr.330.1610557340231; Wed, 13 Jan 2021 09:02:20 -0800 (PST) Received: from ?IPv6:2001:b07:add:ec09:c399:bc87:7b6c:fb2a? ([2001:b07:add:ec09:c399:bc87:7b6c:fb2a]) by smtp.gmail.com with ESMTPSA id e11sm935298ejz.94.2021.01.13.09.02.18 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 13 Jan 2021 09:02:19 -0800 (PST) Subject: Re: [PATCH 1/2] KVM: x86: introduce definitions to support static calls for kvm_x86_ops To: Jason Baron , kvm@vger.kernel.org Cc: tglx@linutronix.de, mingo@redhat.com, bp@alien8.de, peterz@infradead.org, aarcange@redhat.com, x86@kernel.org, linux-kernel@vger.kernel.org References: <6026c2a4-57bf-e045-b62d-30b2490ee331@akamai.com> From: Paolo Bonzini Message-ID: <6d36a405-03d4-b3f6-2aa3-2bd1bc79a622@redhat.com> Date: Wed, 13 Jan 2021 18:02:18 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:78.0) Gecko/20100101 Thunderbird/78.5.0 MIME-Version: 1.0 In-Reply-To: <6026c2a4-57bf-e045-b62d-30b2490ee331@akamai.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 13/01/21 17:16, Jason Baron wrote: >>> +#define DEFINE_KVM_OPS_STATIC_CALL(func)    \ >>> +    DEFINE_STATIC_CALL_NULL(kvm_x86_##func,    \ >>> +                *(((struct kvm_x86_ops *)0)->func)) >>> +#define DEFINE_KVM_OPS_STATIC_CALLS() \ >>> +    FOREACH_KVM_X86_OPS(DEFINE_KVM_OPS_STATIC_CALL) >> Something wrong here? > Hmmm...not sure what you are getting at here. I just misread define vs. declare. > Or we could just use the KVM_X86_OP_NULL() macro for anything > that doesn't have a 'svm' or 'vmx' prefix as I think you were > suggesting? > > Using the KVM_X86_OP_NULL() for > all definitions that don't use 'svm' and 'vmx', would mean > manually defining all 20 in vmx and svm Yes, that's the simplest thing to do. Then we clean them up as we rename the functions. If you want, go ahead and rename the five easy ones yourself. Paolo > .update_exception_bitmap = update_exception_bitmap, > .enable_nmi_window = enable_nmi_window, > .enable_irq_window = enable_irq_window, > .update_cr8_intercept = update_cr8_intercept, > .enable_smi_window = enable_smi_window,