Re: [PATCH v5 01/10] x86/hyper-v: include hyperv/ only when CONFIG_HYPERV is set

From: Vitaly Kuznetsov
Date: Wed May 31 2017 - 10:37:29 EST


Andy Shevchenko <andy.shevchenko@xxxxxxxxx> writes:

> On Tue, May 30, 2017 at 2:34 PM, Vitaly Kuznetsov <vkuznets@xxxxxxxxxx> wrote:
>> Code is arch/x86/hyperv/ is only needed when CONFIG_HYPERV is set, the
>> 'basic' support and detection lives in arch/x86/kernel/cpu/mshyperv.c
>> which is included when CONFIG_HYPERVISOR_GUEST is set.
>>
>> Signed-off-by: Vitaly Kuznetsov <vkuznets@xxxxxxxxxx>
>> Acked-by: K. Y. Srinivasan <kys@xxxxxxxxxxxxx>
>> Tested-by: Simon Xiao <sixiao@xxxxxxxxxxxxx>
>> Tested-by: Srikanth Myakam <v-srm@xxxxxxxxxxxxx>
>> ---
>> arch/x86/Kbuild | 4 +++-
>> arch/x86/include/asm/mshyperv.h | 10 +++++++++-
>> 2 files changed, 12 insertions(+), 2 deletions(-)
>>
>> diff --git a/arch/x86/Kbuild b/arch/x86/Kbuild
>> index 586b786..3fa0a3c 100644
>> --- a/arch/x86/Kbuild
>> +++ b/arch/x86/Kbuild
>> @@ -8,7 +8,9 @@ obj-$(CONFIG_KVM) += kvm/
>> obj-$(CONFIG_XEN) += xen/
>>
>> # Hyper-V paravirtualization support
>> -obj-$(CONFIG_HYPERVISOR_GUEST) += hyperv/
>> +ifdef CONFIG_HYPERV
>> +obj-y += hyperv/
>> +endif
>
> Can
> obj-$(CONFIG_HYPERV) += hyperv/
> work for you instead?
>

CONFIG_HYPERV can be set to "m" but we want to include the contents of
hyperv/ in vmlinux, not in vmbus module.

>> +#else /* CONFIG_HYPERV */
>> +static inline void hyperv_init(void) {}
>
>> +static inline bool hv_is_hypercall_page_setup(void)
>> +{
>> + return false;
>> +}
>
> Can it be one line? (It's okay in this case if it goes ~83 characters,
> for example)

Sure, I'm just trying to avoid such things as later people come with
'fix checkpatch.pl warning' patches.

--
Vitaly