Subject: Re: next June 10: S390 build failure [arch/s390/kvm/kvm.ko]

From: Sachin Sant <[email-masked]>
Date: Wed, 23 Jun 2010 10:03:01 +0530

Christian Borntraeger wrote:
> Am Donnerstag 10 Juni 2010, 15:48:48 schrieb Martin Schwidefsky:
>   
>> On Thu, 10 Jun 2010 18:08:15 +0530
>> Sachin Sant <[email-masked]> wrote:
>>
>>     
>>> Today's next fails to build on a s390 box with
>>>
>>> ERROR: "__kvm_s390_vcpu_store_status" [arch/s390/kvm/kvm.ko] undefined!
>>>
>>> Yesterday's next was good.
>>>       
>> That is caused by git commit fbc5eec58e652339e9df1332cd5e10e8d8250aaf
>> which fails to take git commit 5288fbf0ef041ba0e8b4dcb2df4536b5e3a48b32
>> into account. There is a second caller of __kvm_s390_vcpu_store_status
>> in arch/s390/kvm/intercept.c. As far as I understand the code you could
>> just drop the 'static' from kvm_s390_vcpu_store_status and call it from
>> handle_stop instead of the old __kvm_s390_vcpu_store_status.
>>
>> Carsten, Christian: could one of you have a look please?
>>     
>
> that patch should do the trick. Avi can you add that to kvm.git?
>
> kvm-s390: Fix build failure 
>   
ping on the patch. Still not merged with next.

Thanks
-Sachin

> This patch fixes 
> ERROR: "__kvm_s390_vcpu_store_status" [arch/s390/kvm/kvm.ko] undefined!
>
> triggered by
> commit 3268c56840dcee78c3e928336550f4e1861504c4 (kvm.git)
> Author: Avi Kivity <[email-masked]>
> Date:   Thu May 13 12:21:46 2010 +0300
>     KVM: s390: Centrally lock arch specific vcpu ioctls
>     
> Reported-by: Sachin Sant <[email-masked]>
> Signed-off-by: Christian Borntraeger <[email-masked]>
>
> ---
>  arch/s390/kvm/intercept.c |    2 +-
>  arch/s390/kvm/kvm-s390.c  |    2 +-
>  arch/s390/kvm/kvm-s390.h  |    2 +-
>  3 files changed, 3 insertions(+), 3 deletions(-)
>
> Index: kvm/arch/s390/kvm/intercept.c
> ===================================================================
> --- kvm.orig/arch/s390/kvm/intercept.c
> +++ kvm/arch/s390/kvm/intercept.c
> @@ -135,7 +135,7 @@ static int handle_stop(struct kvm_vcpu *
>  	spin_lock_bh(&vcpu->arch.local_int.lock);
>  	if (vcpu->arch.local_int.action_bits & ACTION_STORE_ON_STOP) {
>  		vcpu->arch.local_int.action_bits &= ~ACTION_STORE_ON_STOP;
> -		rc = __kvm_s390_vcpu_store_status(vcpu,
> +		rc = kvm_s390_vcpu_store_status(vcpu,
>  						  KVM_S390_STORE_STATUS_NOADDR);
>  		if (rc >= 0)
>  			rc = -EOPNOTSUPP;
> Index: kvm/arch/s390/kvm/kvm-s390.c
> ===================================================================
> --- kvm.orig/arch/s390/kvm/kvm-s390.c
> +++ kvm/arch/s390/kvm/kvm-s390.c
> @@ -569,7 +569,7 @@ static int __guestcopy(struct kvm_vcpu *
>   * KVM_S390_STORE_STATUS_NOADDR: -> 0x1200 on 64 bit
>   * KVM_S390_STORE_STATUS_PREFIXED: -> prefix
>   */
> -static int kvm_s390_vcpu_store_status(struct kvm_vcpu *vcpu, unsigned long addr)
> +int kvm_s390_vcpu_store_status(struct kvm_vcpu *vcpu, unsigned long addr)
>  {
>  	const unsigned char archmode = 1;
>  	int prefix;
> Index: kvm/arch/s390/kvm/kvm-s390.h
> ===================================================================
> --- kvm.orig/arch/s390/kvm/kvm-s390.h
> +++ kvm/arch/s390/kvm/kvm-s390.h
> @@ -92,7 +92,7 @@ int kvm_s390_handle_b2(struct kvm_vcpu *
>  int kvm_s390_handle_sigp(struct kvm_vcpu *vcpu);
>
>  /* implemented in kvm-s390.c */
> -int __kvm_s390_vcpu_store_status(struct kvm_vcpu *vcpu,
> +int kvm_s390_vcpu_store_status(struct kvm_vcpu *vcpu,
>  				 unsigned long addr);
>  /* implemented in diag.c */
>  int kvm_s390_handle_diag(struct kvm_vcpu *vcpu);
> --
> To unsubscribe from this list: send the line "unsubscribe linux-s390" in
> the body of a message to [email-masked]
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>
>   

-- 

---------------------------------
Sachin Sant
IBM Linux Technology Center
India Systems and Technology Labs
Bangalore, India
---------------------------------