]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
kvm: x86: simplify kvm_vector_to_index()
authorYury Norov <yury.norov@gmail.com>
Sun, 20 Jul 2025 01:58:45 +0000 (21:58 -0400)
committerSean Christopherson <seanjc@google.com>
Tue, 19 Aug 2025 18:59:31 +0000 (11:59 -0700)
Use find_nth_bit() and make the function almost a one-liner.

Signed-off-by: Yury Norov <yury.norov@gmail.com>
Signed-off-by: Sean Christopherson <seanjc@google.com>
arch/x86/kvm/lapic.c

index 8172c2042dd687ce682c17708104fbb1256f99a1..5bfa6ec324afe2820bb004328364e431f205a9ac 100644 (file)
@@ -1064,16 +1064,9 @@ EXPORT_SYMBOL_GPL(kvm_apic_match_dest);
 int kvm_vector_to_index(u32 vector, u32 dest_vcpus,
                       const unsigned long *bitmap, u32 bitmap_size)
 {
-       u32 mod;
-       int i, idx = -1;
-
-       mod = vector % dest_vcpus;
-
-       for (i = 0; i <= mod; i++) {
-               idx = find_next_bit(bitmap, bitmap_size, idx + 1);
-               BUG_ON(idx == bitmap_size);
-       }
+       int idx = find_nth_bit(bitmap, bitmap_size, vector % dest_vcpus);
 
+       BUG_ON(idx >= bitmap_size);
        return idx;
 }