On Mon, Jun 13, 2022 at 5:03 AM kernel test robot wrote: > > Hi Peter, > > FYI, the error/warning still remains. > > tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master > head: b13baccc3850ca8b8cccbf8ed9912dbaa0fdf7f3 > commit: 0c2c7c069285374fc8feacddc0498f8ab7627117 KVM: SEV: Mark nested locking of vcpu->lock > date: 5 weeks ago > config: x86_64-buildonly-randconfig-r005-20220613 (https://download.01.org/0day-ci/archive/20220613/202206131853.x4KJwC5Q-lkp@intel.com/config) > compiler: clang version 15.0.0 (https://github.com/llvm/llvm-project d378268ead93c85803c270277f0243737b536ae7) > reproduce (this is a W=1 build): > wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross > chmod +x ~/bin/make.cross > # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=0c2c7c069285374fc8feacddc0498f8ab7627117 > git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git > git fetch --no-tags linus master > git checkout 0c2c7c069285374fc8feacddc0498f8ab7627117 > # save the config file > mkdir build_dir && cp config build_dir/.config > COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=x86_64 SHELL=/bin/bash arch/x86/kvm/ drivers/media/platform/qcom/camss/ > > If you fix the issue, kindly add following tag where applicable > Reported-by: kernel test robot > > All warnings (new ones prefixed by >>): > > >> arch/x86/kvm/svm/sev.c:1605:30: warning: parameter 'role' set but not used [-Wunused-but-set-parameter] > enum sev_migration_role role) > ^ > 1 warning generated. > > > vim +/role +1605 arch/x86/kvm/svm/sev.c > > 1603 > 1604 static int sev_lock_vcpus_for_migration(struct kvm *kvm, > > 1605 enum sev_migration_role role) > 1606 { > 1607 struct kvm_vcpu *vcpu; > 1608 unsigned long i, j; > 1609 bool first = true; > 1610 > 1611 kvm_for_each_vcpu(i, vcpu, kvm) { > 1612 if (mutex_lock_killable_nested(&vcpu->mutex, role)) > 1613 goto out_unlock; > 1614 > I am confused about this warning. |role| is used on this line above. Is this because CONFIG_DEBUG_LOCK_ALLOC the subclass argument is dropped in the macro?