Received: by 2002:a05:6358:11c7:b0:104:8066:f915 with SMTP id i7csp6920705rwl; Wed, 22 Mar 2023 18:29:47 -0700 (PDT) X-Google-Smtp-Source: AK7set84PBJTgdX0C6VFKm5GslY7IEpF8aZ/P731Y+fNt6CTyx63o+vrm41YW1alMr7jLqts7KfB X-Received: by 2002:a05:6402:1013:b0:4fb:98e2:3df8 with SMTP id c19-20020a056402101300b004fb98e23df8mr8822016edu.27.1679534987339; Wed, 22 Mar 2023 18:29:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1679534987; cv=none; d=google.com; s=arc-20160816; b=yr5jfh5X1fyygX8OkYplY1olpUrQosj3eu1xbOK6Nurm6P20vozb+9ah7uWG6jdogC 4GJlQfVu22MhnGpEHQmiJMT4eAFNs+Bl2Te1eGgaqsuYsKO0TaRkRm3s2tkPiuZHWpMZ miEZkh/CJ8HI23P5JLXOTJCmNr3S92C3IVekhs/XNydqxtV+m3jyidFY8bcytizGbmUh +4s4RlDGo4Jpfpg5munLVZzVJZyOPxM4SiZYgaVxawWbn92LsU4HykyhX8peXl4U3WoB PRd2dH7yot1bXrNeK4fB1w7SLypKq2Wx2OO/baLtJoV4p8Bk4SIkdDsEhBh57ARGqQRw mvFg== 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:references :mime-version:in-reply-to:date:dkim-signature; bh=9N2HnRYrae+sksVu/QRqXOm2kRG5pCUILA+G4RL3KP4=; b=OiUISEce2Zilr7CUP7d0LdSDvf8G1i4xITaWjIuwp8mynxWY9jKDfw2NHhE1r2zyAd MlaVOLDq4GobBr+EgjxelBHjlgRTL2TzDHCJwG98Zvb6GrvTAgrbyvzAr00nmbzJzD+6 mgHWcWYKmy0i7/9HpdIeJvynOmcBAgYPrT4F6KEAmjR5k+EPQ+Tqj0s/qj1MqkgAP1+i 2A3c3gI5dU5obLTjR9mWpCU5kBZFLc6/1hQoYSP10kjy+HPG2ogTcRd9Bi9dAB4xAdjj f9K3rKrXtHu49MNnRnWONVLBvankq2/CH+1FxNYWvM9xyGB7VqAFkiEhw58Lo2Rlwa1M zEKg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=oVuow6GN; 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 Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id e16-20020aa7d7d0000000b00501db4ea3e9si6068607eds.173.2023.03.22.18.29.22; Wed, 22 Mar 2023 18:29:47 -0700 (PDT) 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=oVuow6GN; 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 S229928AbjCWB1D (ORCPT + 99 others); Wed, 22 Mar 2023 21:27:03 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:46960 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229480AbjCWB1C (ORCPT ); Wed, 22 Mar 2023 21:27:02 -0400 Received: from mail-yw1-x1149.google.com (mail-yw1-x1149.google.com [IPv6:2607:f8b0:4864:20::1149]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id CCD6D2F075 for ; Wed, 22 Mar 2023 18:26:58 -0700 (PDT) Received: by mail-yw1-x1149.google.com with SMTP id 00721157ae682-54476ef9caeso204829797b3.6 for ; Wed, 22 Mar 2023 18:26:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; t=1679534818; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=9N2HnRYrae+sksVu/QRqXOm2kRG5pCUILA+G4RL3KP4=; b=oVuow6GNGDAbF85SsutVT0v2FAYa/hsAB+asR6DacVUBzcygDbpTgqT6vdXtHs/qQP nl+KLJJpQn4DJmAUKgt6QbKmBfZ5dHVMHJLpf7kXsCyl/rinQ1KDLrsvQNzyXTyf+utg 9Znq0Up53ShivcXFIy68Mk4tKYs5U/LfYFR7BK3jxewQ1eCuL6CzGYysFIDa8ppeLG+Q vviGX1hQvwATjCxNRLwu4MJyLrUiQtA5yrfewp1bsKZ9cRUPR2VgkqRlbOroB7mfeWm9 jijTDsNS1lQvYLznIR93Fwc7ajeXF7RCQk67NQTxAG0IWtCKfdDTgSp5xUm1XvGwEYLu 2a9w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1679534818; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=9N2HnRYrae+sksVu/QRqXOm2kRG5pCUILA+G4RL3KP4=; b=IS2/ZtBJjdZtf786RgCXRXIeNA4yd56uzAA+fohFXoDVja4ZfgYidhM4tvZOJTgG8Q tudqdDS9tbf831UutwM8QnllPfvKQ4ZWaArw5u5+wJckUorpcU/zsnp87RHd2YXVqgVF x6TXw1oA0bU5a0mZ8CRV9tLMzLtvGXDXAScyw0LH9YQR9owDn/HznppoprTLeyWYYnvs DQFyly7O97xI+pm/nkbu+mnuSo7nUF0Tq4LFFU0EJTOUBb5UOJEySpF7NpPwYfb9BKls CtEWUydoSz0nQ69guHP3+weWsuyiIEFqCLf9Q4EB7n83rvZuauZgLbxJXIolSjIUUf34 uFtQ== X-Gm-Message-State: AAQBX9esQGunQUAN0/ULlLr42z72cZcghzBW5+iTGFpI8Gg3MP9G2bYc SMCtLXqatAA8LVKCpyplm+857a+hiWA= X-Received: from zagreus.c.googlers.com ([fda3:e722:ac3:cc00:7f:e700:c0a8:5c37]) (user=seanjc job=sendgmr) by 2002:a81:ec03:0:b0:541:6975:2340 with SMTP id j3-20020a81ec03000000b0054169752340mr998299ywm.6.1679534818051; Wed, 22 Mar 2023 18:26:58 -0700 (PDT) Date: Wed, 22 Mar 2023 18:26:56 -0700 In-Reply-To: Mime-Version: 1.0 References: <1677523568-50263-1-git-send-email-mikelley@microsoft.com> Message-ID: Subject: Re: [PATCH 1/1] x86/irq: Add hardcoded hypervisor interrupts to /proc/stat From: Sean Christopherson To: "Michael Kelley (LINUX)" Cc: Dave Hansen , "tglx@linutronix.de" , "mingo@redhat.com" , "bp@alien8.de" , "dave.hansen@linux.intel.com" , "hpa@zytor.com" , "x86@kernel.org" , "linux-hyperv@vger.kernel.org" , "linux-kernel@vger.kernel.org" Content-Type: text/plain; charset="us-ascii" X-Spam-Status: No, score=-7.7 required=5.0 tests=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 On Wed, Mar 22, 2023, Michael Kelley (LINUX) wrote: > From: Dave Hansen Sent: Wednesday, March 22, 2023 11:07 AM > > > > On 2/27/23 10:46, Michael Kelley wrote: > > > diff --git a/arch/x86/kernel/irq.c b/arch/x86/kernel/irq.c > > > index 766ffe3..9f668d2 100644 > > > --- a/arch/x86/kernel/irq.c > > > +++ b/arch/x86/kernel/irq.c > > > @@ -211,6 +211,13 @@ u64 arch_irq_stat_cpu(unsigned int cpu) > > > #ifdef CONFIG_X86_MCE_THRESHOLD > > > sum += irq_stats(cpu)->irq_threshold_count; > > > #endif > > > +#ifdef CONFIG_X86_HV_CALLBACK_VECTOR > > > + sum += irq_stats(cpu)->irq_hv_callback_count; > > > +#endif > > > +#if IS_ENABLED(CONFIG_HYPERV) > > > + sum += irq_stats(cpu)->irq_hv_reenlightenment_count; > > > + sum += irq_stats(cpu)->hyperv_stimer0_count; > > > +#endif > > > #ifdef CONFIG_X86_MCE > > > sum += per_cpu(mce_exception_count, cpu); > > > sum += per_cpu(mce_poll_count, cpu); > > > > This seems fine, especially since arch_show_interrupts() has them. But, > > what's with the "#if IS_ENABLED" versus the plain #ifdef? Is there some > > difference I'm missing? Why not just be consistent with the other code > > and use a plain #ifdef for both? > > I'm following the coding pattern in arch_show_interrupts(), in irq_cpustat_t, > and most other places that test CONFIG_HYPERV. Maybe all those existing > cases are a mis-application of Documentation/process/coding-style.rst > Section 21, which prefers "if (IS_ENABLED(CONFIG_HYPERV))" over > "#ifdef CONFIG_HYPERV". "#if IS_ENABLED()" is not the same as > "if (IS_ENABLED())". :-) > > Net, I don't have a strong preference either way. Using IS_ENABLED() is mandatory because CONFIG_HYPERV is a tri-state, i.e. can be a module and thus #define CONFIG_HYPER_MODULE instead of CONFIG_HYPERV.