KVM: Reduce atomic operations on vcpu->requests
authorAvi Kivity <avi@redhat.com>
Mon, 10 May 2010 10:08:26 +0000 (13:08 +0300)
committerAvi Kivity <avi@redhat.com>
Sun, 1 Aug 2010 07:47:06 +0000 (10:47 +0300)
commit0719837c0832a7b305e42327caa7d330462360ea
tree73f574529aa588d5270da0a9cf048a65e863ba93
parenta8eeb04a44dd6dc4c8158953d9bae48849c9a188
KVM: Reduce atomic operations on vcpu->requests

Usually the vcpu->requests bitmap is sparse, so a test_and_clear_bit() for
each request generates a large number of unneeded atomics if a bit is set.

Replace with a separate test/clear sequence.  This is safe since there is
no clear_bit() outside the vcpu thread.

Signed-off-by: Avi Kivity <avi@redhat.com>
include/linux/kvm_host.h