Re: [PATCH] x86: kvm: hide the unused 'cpu' variable

2018-04-04 Thread Paolo Bonzini
On 04/04/2018 13:51, David Hildenbrand wrote:
> On 04.04.2018 12:44, Arnd Bergmann wrote:
>> The local variable was newly introduced but is only accessed in one
>> place on x86_64, but not on 32-bit:
>>
>> arch/x86/kvm/vmx.c: In function 'vmx_save_host_state':
>> arch/x86/kvm/vmx.c:2175:6: error: unused variable 'cpu' 
>> [-Werror=unused-variable]
>>
>> This puts it into another #ifdef.
>>
>> Fixes: 35060ed6a1ff ("x86/kvm/vmx: avoid expensive rdmsr for MSR_GS_BASE")
>> Signed-off-by: Arnd Bergmann 
>> ---
>>  arch/x86/kvm/vmx.c | 2 ++
>>  1 file changed, 2 insertions(+)
>>
>> diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c
>> index 8307f625ea99..7399a4a17f78 100644
>> --- a/arch/x86/kvm/vmx.c
>> +++ b/arch/x86/kvm/vmx.c
>> @@ -2357,7 +2357,9 @@ static unsigned long segment_base(u16 selector)
>>  static void vmx_save_host_state(struct kvm_vcpu *vcpu)
>>  {
>>  struct vcpu_vmx *vmx = to_vmx(vcpu);
>> +#ifdef CONFIG_X86_64
>>  int cpu = raw_smp_processor_id();
>> +#endif
>>  int i;
>>  
>>  if (vmx->host_state.loaded)
>>
> 
> Can't we get rid of the variable and just do it inline?

Neither is particularly nice, but one thing we can do is simplify the
#ifdef maze by combining conditionals that have no code in between.

Paolo

> Anyhow, fixes the problem
> 
> Reviewed-by: David Hildenbrand 
> 



Re: [PATCH] x86: kvm: hide the unused 'cpu' variable

2018-04-04 Thread Paolo Bonzini
On 04/04/2018 13:51, David Hildenbrand wrote:
> On 04.04.2018 12:44, Arnd Bergmann wrote:
>> The local variable was newly introduced but is only accessed in one
>> place on x86_64, but not on 32-bit:
>>
>> arch/x86/kvm/vmx.c: In function 'vmx_save_host_state':
>> arch/x86/kvm/vmx.c:2175:6: error: unused variable 'cpu' 
>> [-Werror=unused-variable]
>>
>> This puts it into another #ifdef.
>>
>> Fixes: 35060ed6a1ff ("x86/kvm/vmx: avoid expensive rdmsr for MSR_GS_BASE")
>> Signed-off-by: Arnd Bergmann 
>> ---
>>  arch/x86/kvm/vmx.c | 2 ++
>>  1 file changed, 2 insertions(+)
>>
>> diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c
>> index 8307f625ea99..7399a4a17f78 100644
>> --- a/arch/x86/kvm/vmx.c
>> +++ b/arch/x86/kvm/vmx.c
>> @@ -2357,7 +2357,9 @@ static unsigned long segment_base(u16 selector)
>>  static void vmx_save_host_state(struct kvm_vcpu *vcpu)
>>  {
>>  struct vcpu_vmx *vmx = to_vmx(vcpu);
>> +#ifdef CONFIG_X86_64
>>  int cpu = raw_smp_processor_id();
>> +#endif
>>  int i;
>>  
>>  if (vmx->host_state.loaded)
>>
> 
> Can't we get rid of the variable and just do it inline?

Neither is particularly nice, but one thing we can do is simplify the
#ifdef maze by combining conditionals that have no code in between.

Paolo

> Anyhow, fixes the problem
> 
> Reviewed-by: David Hildenbrand 
> 



Re: [PATCH] x86: kvm: hide the unused 'cpu' variable

2018-04-04 Thread David Hildenbrand
On 04.04.2018 12:44, Arnd Bergmann wrote:
> The local variable was newly introduced but is only accessed in one
> place on x86_64, but not on 32-bit:
> 
> arch/x86/kvm/vmx.c: In function 'vmx_save_host_state':
> arch/x86/kvm/vmx.c:2175:6: error: unused variable 'cpu' 
> [-Werror=unused-variable]
> 
> This puts it into another #ifdef.
> 
> Fixes: 35060ed6a1ff ("x86/kvm/vmx: avoid expensive rdmsr for MSR_GS_BASE")
> Signed-off-by: Arnd Bergmann 
> ---
>  arch/x86/kvm/vmx.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c
> index 8307f625ea99..7399a4a17f78 100644
> --- a/arch/x86/kvm/vmx.c
> +++ b/arch/x86/kvm/vmx.c
> @@ -2357,7 +2357,9 @@ static unsigned long segment_base(u16 selector)
>  static void vmx_save_host_state(struct kvm_vcpu *vcpu)
>  {
>   struct vcpu_vmx *vmx = to_vmx(vcpu);
> +#ifdef CONFIG_X86_64
>   int cpu = raw_smp_processor_id();
> +#endif
>   int i;
>  
>   if (vmx->host_state.loaded)
> 

Can't we get rid of the variable and just do it inline?

Anyhow, fixes the problem

Reviewed-by: David Hildenbrand 

-- 

Thanks,

David / dhildenb


Re: [PATCH] x86: kvm: hide the unused 'cpu' variable

2018-04-04 Thread David Hildenbrand
On 04.04.2018 12:44, Arnd Bergmann wrote:
> The local variable was newly introduced but is only accessed in one
> place on x86_64, but not on 32-bit:
> 
> arch/x86/kvm/vmx.c: In function 'vmx_save_host_state':
> arch/x86/kvm/vmx.c:2175:6: error: unused variable 'cpu' 
> [-Werror=unused-variable]
> 
> This puts it into another #ifdef.
> 
> Fixes: 35060ed6a1ff ("x86/kvm/vmx: avoid expensive rdmsr for MSR_GS_BASE")
> Signed-off-by: Arnd Bergmann 
> ---
>  arch/x86/kvm/vmx.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c
> index 8307f625ea99..7399a4a17f78 100644
> --- a/arch/x86/kvm/vmx.c
> +++ b/arch/x86/kvm/vmx.c
> @@ -2357,7 +2357,9 @@ static unsigned long segment_base(u16 selector)
>  static void vmx_save_host_state(struct kvm_vcpu *vcpu)
>  {
>   struct vcpu_vmx *vmx = to_vmx(vcpu);
> +#ifdef CONFIG_X86_64
>   int cpu = raw_smp_processor_id();
> +#endif
>   int i;
>  
>   if (vmx->host_state.loaded)
> 

Can't we get rid of the variable and just do it inline?

Anyhow, fixes the problem

Reviewed-by: David Hildenbrand 

-- 

Thanks,

David / dhildenb