CC: [email protected] CC: [email protected] TO: Andy Shevchenko <[email protected]> CC: Andrew Morton <[email protected]> CC: Linux Memory Management List <[email protected]> CC: Cezary Rojewski <[email protected]>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: dcc0b49040c70ad827a7f3d58a21b01fdb14e749 commit: e130816164e244b692921de49771eeb28205152d include/linux/list.h: add a macro to test if entry is pointing to the head date: 4 months ago :::::: branch date: 2 days ago :::::: commit date: 4 months ago config: powerpc-randconfig-s031-20210214 (attached as .config) compiler: powerpc64-linux-gcc (GCC) 9.3.0 reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # apt-get install sparse # sparse version: v0.6.3-215-g0fb77bb6-dirty # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=e130816164e244b692921de49771eeb28205152d git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git git fetch --no-tags linus master git checkout e130816164e244b692921de49771eeb28205152d # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=powerpc If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <[email protected]> "sparse warnings: (new ones prefixed by >>)" arch/powerpc/kvm/book3s_hv.c:3561:5: sparse: sparse: symbol 'kvmhv_p9_guest_entry' was not declared. Should it be static? arch/powerpc/kvm/book3s_hv.c:616:17: sparse: sparse: context imbalance in 'kvmppc_update_vpa' - unexpected unlock arch/powerpc/kvm/book3s_hv.c: note: in included file: arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __be64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __be64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __be64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __be64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:963:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __be64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __be64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __be64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __be64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 arch/powerpc/include/asm/kvm_ppc.h:966:1: sparse: sparse: cast to restricted __le64 >> arch/powerpc/kvm/book3s_hv.c:2935:20: sparse: sparse: context imbalance in >> 'collect_piggybacks' - different lock contexts for basic block arch/powerpc/kvm/book3s_hv.c:3186:25: sparse: sparse: context imbalance in 'kvmppc_run_core' - unexpected unlock arch/powerpc/kvm/book3s_hv.c:3836:17: sparse: sparse: context imbalance in 'kvmppc_vcore_blocked' - unexpected unlock vim +/collect_piggybacks +2935 arch/powerpc/kvm/book3s_hv.c d911f0beddc2a92 Paul Mackerras 2015-03-28 2906 ec2571650826168 Paul Mackerras 2015-06-24 2907 static void collect_piggybacks(struct core_info *cip, int target_threads) 25fedfca94cfbf2 Paul Mackerras 2015-03-28 2908 { ec2571650826168 Paul Mackerras 2015-06-24 2909 struct preempted_vcore_list *lp = this_cpu_ptr(&preempted_vcores); ec2571650826168 Paul Mackerras 2015-06-24 2910 struct kvmppc_vcore *pvc, *vcnext; ec2571650826168 Paul Mackerras 2015-06-24 2911 ec2571650826168 Paul Mackerras 2015-06-24 2912 spin_lock(&lp->lock); ec2571650826168 Paul Mackerras 2015-06-24 2913 list_for_each_entry_safe(pvc, vcnext, &lp->list, preempt_list) { ec2571650826168 Paul Mackerras 2015-06-24 2914 if (!spin_trylock(&pvc->lock)) ec2571650826168 Paul Mackerras 2015-06-24 2915 continue; ec2571650826168 Paul Mackerras 2015-06-24 2916 prepare_threads(pvc); d28eafc5a64045c Paul Mackerras 2019-08-27 2917 if (!pvc->n_runnable || !pvc->kvm->arch.mmu_ready) { ec2571650826168 Paul Mackerras 2015-06-24 2918 list_del_init(&pvc->preempt_list); ec2571650826168 Paul Mackerras 2015-06-24 2919 if (pvc->runner == NULL) { ec2571650826168 Paul Mackerras 2015-06-24 2920 pvc->vcore_state = VCORE_INACTIVE; ec2571650826168 Paul Mackerras 2015-06-24 2921 kvmppc_core_end_stolen(pvc); ec2571650826168 Paul Mackerras 2015-06-24 2922 } ec2571650826168 Paul Mackerras 2015-06-24 2923 spin_unlock(&pvc->lock); ec2571650826168 Paul Mackerras 2015-06-24 2924 continue; ec2571650826168 Paul Mackerras 2015-06-24 2925 } ec2571650826168 Paul Mackerras 2015-06-24 2926 if (!can_piggyback(pvc, cip, target_threads)) { ec2571650826168 Paul Mackerras 2015-06-24 2927 spin_unlock(&pvc->lock); ec2571650826168 Paul Mackerras 2015-06-24 2928 continue; ec2571650826168 Paul Mackerras 2015-06-24 2929 } ec2571650826168 Paul Mackerras 2015-06-24 2930 kvmppc_core_end_stolen(pvc); ec2571650826168 Paul Mackerras 2015-06-24 2931 pvc->vcore_state = VCORE_PIGGYBACK; ec2571650826168 Paul Mackerras 2015-06-24 2932 if (cip->total_threads >= target_threads) ec2571650826168 Paul Mackerras 2015-06-24 2933 break; ec2571650826168 Paul Mackerras 2015-06-24 2934 } ec2571650826168 Paul Mackerras 2015-06-24 @2935 spin_unlock(&lp->lock); ec2571650826168 Paul Mackerras 2015-06-24 2936 } ec2571650826168 Paul Mackerras 2015-06-24 2937 :::::: The code at line 2935 was first introduced by commit :::::: ec257165082616841a354dd915801ed43e3553be KVM: PPC: Book3S HV: Make use of unused threads when running guests :::::: TO: Paul Mackerras <[email protected]> :::::: CC: Alexander Graf <[email protected]> --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/[email protected]
.config.gz
Description: application/gzip
_______________________________________________ kbuild mailing list -- [email protected] To unsubscribe send an email to [email protected]
