Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752115AbdFLC4m (ORCPT ); Sun, 11 Jun 2017 22:56:42 -0400 Received: from mx1.redhat.com ([209.132.183.28]:46248 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751983AbdFLC4l (ORCPT ); Sun, 11 Jun 2017 22:56:41 -0400 DMARC-Filter: OpenDMARC Filter v1.3.2 mx1.redhat.com 82E075D68D Authentication-Results: ext-mx10.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com Authentication-Results: ext-mx10.extmail.prod.ext.phx2.redhat.com; spf=pass smtp.mailfrom=vkuznets@redhat.com DKIM-Filter: OpenDKIM Filter v2.11.0 mx1.redhat.com 82E075D68D From: Vitaly Kuznetsov To: Steven Rostedt Cc: Paul Bolle , Andy Shevchenko , devel@linuxdriverproject.org, "x86\@kernel.org" , "linux-kernel\@vger.kernel.org" , "K. Y. Srinivasan" , Haiyang Zhang , Stephen Hemminger , Thomas Gleixner , Ingo Molnar , "H. Peter Anvin" , Jork Loeser , Simon Xiao , Andy Lutomirski Subject: Re: [PATCH v8 10/10] tracing/hyper-v: trace hyperv_mmu_flush_tlb_others() References: <20170609132736.13699-1-vkuznets@redhat.com> <20170609132736.13699-11-vkuznets@redhat.com> <20170609140413.7e7ba9e3@gandalf.local.home> <20170609143208.69afd2e9@gandalf.local.home> <1497034433.12817.17.camel@tiscali.nl> <20170609150707.322c3b9f@gandalf.local.home> Date: Mon, 12 Jun 2017 10:56:30 +0800 In-Reply-To: <20170609150707.322c3b9f@gandalf.local.home> (Steven Rostedt's message of "Fri, 9 Jun 2017 15:07:07 -0400") Message-ID: <871sqp29sx.fsf@vitty.brq.redhat.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.2 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.39]); Mon, 12 Jun 2017 02:56:40 +0000 (UTC) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2239 Lines: 64 Steven Rostedt writes: > On Fri, 09 Jun 2017 20:53:53 +0200 > Paul Bolle wrote: > >> On Fri, 2017-06-09 at 14:32 -0400, Steven Rostedt wrote: >> > I'm sure it works, but it just adds one more way of doing the same >> > thing. I thought that was what perl was always criticized for, and why >> > people usually prefer python. Don't get me wrong, I prefer oysters over >> > snakes. But I just wanted to point out the lack of consistency here. >> >> A major benefit is that >> #if IS_ENABLED(CONFIG_HYPERV) >> >> is shorter than >> #if defined(CONFIG_HYPERV) || defined(CONFIG_HYPERV_MODULE) >> >> and less prone to typos. >> > > I don't believe the module version is needed here. Otherwise I would > question the #if altogether. Which now I'm looking at it, why is it > needed? > > What includes this header file that wouldn't have that set anyway? The > only place it is included is in: > > arch/x86/hyperv/mmu.c > > Is that compiled without CONFIG_HYPERV? No, it is not but as was already mentioned it is valid and common to have CONFIG_HYPERV=m (we should've probably done things differently in the past; CONFIG_HYPERV=y/n should've been used for indicating Hyper-V support and something like CONFIG_HYPERV_VMBUS=y/m/n to say if we want to have vmbus as a module but...). arch/x86/hyperv/mmu.c is compiled in vmlinux when CONFIG_HYPERV is enabled in any way, this is updated in PATCH8 of this series: diff --git a/arch/x86/Kbuild b/arch/x86/Kbuild index 586b786..3e6f640 100644 --- a/arch/x86/Kbuild +++ b/arch/x86/Kbuild @@ -8,7 +8,7 @@ obj-$(CONFIG_KVM) += kvm/ obj-$(CONFIG_XEN) += xen/ # Hyper-V paravirtualization support -obj-$(CONFIG_HYPERVISOR_GUEST) += hyperv/ +obj-$(subst m,y,$(CONFIG_HYPERV)) += hyperv/ # lguest paravirtualization support obj-$(CONFIG_LGUEST_GUEST) += lguest/ (it was Andy who suggested we use 'subst', not me :-) So we can't just change IS_ENABLED -> ifdef in this patch. We can, of course, write " #if defined(CONFIG_HYPERV) || defined(CONFIG_HYPERV_MODULE)" but we were replacing it with IF_ENABLED in the past, not sure we should do that. Dropping the #if altogether is possible, but why having it when CONFIG_HYPERV=n? -- Vitaly