[kvm-ppc:kvm-ppc-svcpu-preempt 1/1] arch/powerpc/kvm/book3s_pr.c:148:44: error: too few arguments to function 'svcpu_get'

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



tree:   https://github.com/agraf/linux-2.6.git kvm-ppc-svcpu-preempt
head:   f9e3ca44c9a9d4930d6dccaacb518734746059c3
commit: f9e3ca44c9a9d4930d6dccaacb518734746059c3 [1/1] KVM: PPC: Fix svcpu copying with preemption enabled
config: powerpc-allmodconfig (attached as .config)
compiler: powerpc64-linux-gnu-gcc (Debian 7.2.0-11) 7.2.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        git checkout f9e3ca44c9a9d4930d6dccaacb518734746059c3
        # save the attached .config to linux build tree
        make.cross ARCH=powerpc 

All errors (new ones prefixed by >>):

   arch/powerpc/kvm/book3s_pr.c: In function 'kvmppc_copy_to_svcpu':
>> arch/powerpc/kvm/book3s_pr.c:148:44: error: too few arguments to function 'svcpu_get'
     struct kvmppc_book3s_shadow_vcpu *svcpu = svcpu_get();
                                               ^~~~~~~~~
   In file included from arch/powerpc/include/asm/kvm_book3s.h:267:0,
                    from arch/powerpc/include/asm/kvm_ppc.h:33,
                    from arch/powerpc/kvm/book3s_pr.c:33:
   arch/powerpc/include/asm/kvm_book3s_64.h:32:49: note: declared here
    static inline struct kvmppc_book3s_shadow_vcpu *svcpu_get(struct kvm_vcpu *vcpu)
                                                    ^~~~~~~~~
>> arch/powerpc/kvm/book3s_pr.c:182:2: error: too few arguments to function 'svcpu_put'
     svcpu_put();
     ^~~~~~~~~
   In file included from arch/powerpc/include/asm/kvm_book3s.h:267:0,
                    from arch/powerpc/include/asm/kvm_ppc.h:33,
                    from arch/powerpc/kvm/book3s_pr.c:33:
   arch/powerpc/include/asm/kvm_book3s_64.h:38:20: note: declared here
    static inline void svcpu_put(struct kvmppc_book3s_shadow_vcpu *svcpu)
                       ^~~~~~~~~
   arch/powerpc/kvm/book3s_pr.c: In function 'kvmppc_copy_from_svcpu':
   arch/powerpc/kvm/book3s_pr.c:188:44: error: too few arguments to function 'svcpu_get'
     struct kvmppc_book3s_shadow_vcpu *svcpu = svcpu_get();
                                               ^~~~~~~~~
   In file included from arch/powerpc/include/asm/kvm_book3s.h:267:0,
                    from arch/powerpc/include/asm/kvm_ppc.h:33,
                    from arch/powerpc/kvm/book3s_pr.c:33:
   arch/powerpc/include/asm/kvm_book3s_64.h:32:49: note: declared here
    static inline struct kvmppc_book3s_shadow_vcpu *svcpu_get(struct kvm_vcpu *vcpu)
                                                    ^~~~~~~~~
   arch/powerpc/kvm/book3s_pr.c:234:2: error: too few arguments to function 'svcpu_put'
     svcpu_put();
     ^~~~~~~~~
   In file included from arch/powerpc/include/asm/kvm_book3s.h:267:0,
                    from arch/powerpc/include/asm/kvm_ppc.h:33,
                    from arch/powerpc/kvm/book3s_pr.c:33:
   arch/powerpc/include/asm/kvm_book3s_64.h:38:20: note: declared here
    static inline void svcpu_put(struct kvmppc_book3s_shadow_vcpu *svcpu)
                       ^~~~~~~~~

vim +/svcpu_get +148 arch/powerpc/kvm/book3s_pr.c

   144	
   145	/* Copy data needed by real-mode code from vcpu to shadow vcpu */
   146	void kvmppc_copy_to_svcpu(struct kvm_vcpu *vcpu)
   147	{
 > 148		struct kvmppc_book3s_shadow_vcpu *svcpu = svcpu_get();
   149	
   150		svcpu->gpr[0] = vcpu->arch.gpr[0];
   151		svcpu->gpr[1] = vcpu->arch.gpr[1];
   152		svcpu->gpr[2] = vcpu->arch.gpr[2];
   153		svcpu->gpr[3] = vcpu->arch.gpr[3];
   154		svcpu->gpr[4] = vcpu->arch.gpr[4];
   155		svcpu->gpr[5] = vcpu->arch.gpr[5];
   156		svcpu->gpr[6] = vcpu->arch.gpr[6];
   157		svcpu->gpr[7] = vcpu->arch.gpr[7];
   158		svcpu->gpr[8] = vcpu->arch.gpr[8];
   159		svcpu->gpr[9] = vcpu->arch.gpr[9];
   160		svcpu->gpr[10] = vcpu->arch.gpr[10];
   161		svcpu->gpr[11] = vcpu->arch.gpr[11];
   162		svcpu->gpr[12] = vcpu->arch.gpr[12];
   163		svcpu->gpr[13] = vcpu->arch.gpr[13];
   164		svcpu->cr  = vcpu->arch.cr;
   165		svcpu->xer = vcpu->arch.xer;
   166		svcpu->ctr = vcpu->arch.ctr;
   167		svcpu->lr  = vcpu->arch.lr;
   168		svcpu->pc  = vcpu->arch.pc;
   169	#ifdef CONFIG_PPC_BOOK3S_64
   170		svcpu->shadow_fscr = vcpu->arch.shadow_fscr;
   171	#endif
   172		/*
   173		 * Now also save the current time base value. We use this
   174		 * to find the guest purr and spurr value.
   175		 */
   176		vcpu->arch.entry_tb = get_tb();
   177		vcpu->arch.entry_vtb = get_vtb();
   178		if (cpu_has_feature(CPU_FTR_ARCH_207S))
   179			vcpu->arch.entry_ic = mfspr(SPRN_IC);
   180		svcpu->in_use = true;
   181	
 > 182		svcpu_put();
   183	}
   184	

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Attachment: .config.gz
Description: application/gzip


[Index of Archives]     [KVM Development]     [KVM ARM]     [KVM ia64]     [Linux Virtualization]     [Linux USB Devel]     [Linux Video]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux