From: kernel test robot <lkp@intel.com>
To: oe-kbuild@lists.linux.dev
Cc: lkp@intel.com, Dan Carpenter <error27@gmail.com>
Subject: arch/riscv/kvm/../../../virt/kvm/kvm_main.c:1378 kvm_trylock_all_vcpus() warn: iterator 'i' not incremented
Date: Sat, 28 Jun 2025 08:06:23 +0800 [thread overview]
Message-ID: <202506280806.kYb83jgO-lkp@intel.com> (raw)
BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
CC: linux-kernel@vger.kernel.org
TO: Maxim Levitsky <mlevitsk@redhat.com>
CC: Paolo Bonzini <pbonzini@redhat.com>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 35e261cd95ddc741d8664f5ac897bbd0d384bbd0
commit: e4a454ced74c0ac97c8bd32f086ee3ad74528780 KVM: add kvm_lock_all_vcpus and kvm_trylock_all_vcpus
date: 4 weeks ago
:::::: branch date: 5 hours ago
:::::: commit date: 4 weeks ago
config: riscv-randconfig-r072-20250627 (https://download.01.org/0day-ci/archive/20250628/202506280806.kYb83jgO-lkp@intel.com/config)
compiler: clang version 18.1.8 (https://github.com/llvm/llvm-project 3b5b5c1ec4a3095ab096dd780e84d7ab81f3d7ff)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Reported-by: Dan Carpenter <error27@gmail.com>
| Closes: https://lore.kernel.org/r/202506280806.kYb83jgO-lkp@intel.com/
New smatch warnings:
arch/riscv/kvm/../../../virt/kvm/kvm_main.c:1378 kvm_trylock_all_vcpus() warn: iterator 'i' not incremented
arch/riscv/kvm/../../../virt/kvm/kvm_main.c:1384 kvm_trylock_all_vcpus() warn: iterator 'j' not incremented
arch/riscv/kvm/../../../virt/kvm/kvm_main.c:1401 kvm_lock_all_vcpus() warn: iterator 'i' not incremented
arch/riscv/kvm/../../../virt/kvm/kvm_main.c:1409 kvm_lock_all_vcpus() warn: iterator 'j' not incremented
arch/riscv/kvm/../../../virt/kvm/kvm_main.c:1425 kvm_unlock_all_vcpus() warn: iterator 'i' not incremented
Old smatch warnings:
arch/riscv/kvm/../../../virt/kvm/kvm_main.c:283 kvm_make_all_cpus_request() warn: iterator 'i' not incremented
arch/riscv/kvm/../../../virt/kvm/kvm_main.c:487 kvm_destroy_vcpus() warn: iterator 'i' not incremented
arch/riscv/kvm/../../../virt/kvm/kvm_main.c:1721 kvm_commit_memory_region() error: we previously assumed 'old' could be null (see line 1714)
arch/riscv/kvm/../../../virt/kvm/kvm_main.c:1723 kvm_commit_memory_region() error: we previously assumed 'new' could be null (see line 1715)
include/linux/kvm_host.h:1010 kvm_get_vcpu_by_id() warn: iterator 'i' not incremented
arch/riscv/kvm/../../../virt/kvm/kvm_main.c:4961 kvm_vm_ioctl_reset_dirty_pages() warn: iterator 'i' not incremented
arch/riscv/kvm/../../../virt/kvm/kvm_main.c:6092 kvm_get_stat_per_vcpu() warn: iterator 'i' not incremented
arch/riscv/kvm/../../../virt/kvm/kvm_main.c:6103 kvm_clear_stat_per_vcpu() warn: iterator 'i' not incremented
vim +/i +1378 arch/riscv/kvm/../../../virt/kvm/kvm_main.c
6aa8b732ca01c3d drivers/kvm/kvm_main.c Avi Kivity 2006-12-10 1370
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1371 int kvm_trylock_all_vcpus(struct kvm *kvm)
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1372 {
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1373 struct kvm_vcpu *vcpu;
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1374 unsigned long i, j;
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1375
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1376 lockdep_assert_held(&kvm->lock);
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1377
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 @1378 kvm_for_each_vcpu(i, vcpu, kvm)
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1379 if (!mutex_trylock_nest_lock(&vcpu->mutex, &kvm->lock))
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1380 goto out_unlock;
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1381 return 0;
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1382
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1383 out_unlock:
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 @1384 kvm_for_each_vcpu(j, vcpu, kvm) {
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1385 if (i == j)
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1386 break;
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1387 mutex_unlock(&vcpu->mutex);
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1388 }
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1389 return -EINTR;
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1390 }
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1391 EXPORT_SYMBOL_GPL(kvm_trylock_all_vcpus);
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1392
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1393 int kvm_lock_all_vcpus(struct kvm *kvm)
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1394 {
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1395 struct kvm_vcpu *vcpu;
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1396 unsigned long i, j;
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1397 int r;
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1398
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1399 lockdep_assert_held(&kvm->lock);
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1400
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 @1401 kvm_for_each_vcpu(i, vcpu, kvm) {
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1402 r = mutex_lock_killable_nest_lock(&vcpu->mutex, &kvm->lock);
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1403 if (r)
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1404 goto out_unlock;
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1405 }
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1406 return 0;
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1407
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1408 out_unlock:
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 @1409 kvm_for_each_vcpu(j, vcpu, kvm) {
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1410 if (i == j)
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1411 break;
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1412 mutex_unlock(&vcpu->mutex);
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1413 }
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1414 return r;
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1415 }
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1416 EXPORT_SYMBOL_GPL(kvm_lock_all_vcpus);
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1417
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1418 void kvm_unlock_all_vcpus(struct kvm *kvm)
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1419 {
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1420 struct kvm_vcpu *vcpu;
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1421 unsigned long i;
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1422
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1423 lockdep_assert_held(&kvm->lock);
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1424
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 @1425 kvm_for_each_vcpu(i, vcpu, kvm)
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1426 mutex_unlock(&vcpu->mutex);
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1427 }
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1428 EXPORT_SYMBOL_GPL(kvm_unlock_all_vcpus);
e4a454ced74c0ac virt/kvm/kvm_main.c Maxim Levitsky 2025-05-12 1429
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
next reply other threads:[~2025-06-28 0:06 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-06-28 0:06 kernel test robot [this message]
-- strict thread matches above, loose matches on Subject: below --
2025-12-19 19:40 arch/riscv/kvm/../../../virt/kvm/kvm_main.c:1378 kvm_trylock_all_vcpus() warn: iterator 'i' not incremented kernel test robot
2026-01-05 8:31 ` Dan Carpenter
2026-01-08 9:23 ` Dan Carpenter
2026-01-08 10:00 ` Philip Li
2026-01-08 16:27 ` Philip Li
2026-01-09 10:32 ` Philip Li
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202506280806.kYb83jgO-lkp@intel.com \
--to=lkp@intel.com \
--cc=error27@gmail.com \
--cc=oe-kbuild@lists.linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.