summaryrefslogtreecommitdiffstats
path: root/hw/net/virtio-net.c
diff options
context:
space:
mode:
authorPaolo Bonzini2016-08-31 21:33:58 +0200
committerPaolo Bonzini2016-09-27 11:57:30 +0200
commitc265e976f4669fd65f5b47e6865f50d1cb66bd02 (patch)
treeb80f5c8500bd6ad92ee0474bce2b4186dd2540c5 /hw/net/virtio-net.c
parenttcg: Make tb_flush() thread safe (diff)
downloadqemu-c265e976f4669fd65f5b47e6865f50d1cb66bd02.tar.gz
qemu-c265e976f4669fd65f5b47e6865f50d1cb66bd02.tar.xz
qemu-c265e976f4669fd65f5b47e6865f50d1cb66bd02.zip
cpus-common: lock-free fast path for cpu_exec_start/end
Set cpu->running without taking the cpu_list lock, only requiring it if there is a concurrent exclusive section. This requires adding a new field to CPUState, which records whether a running CPU is being counted in pending_cpus. When an exclusive section is started concurrently with cpu_exec_start, cpu_exec_start can use the new field to determine if it has to wait for the end of the exclusive section. Likewise, cpu_exec_end can use it to see if start_exclusive is waiting for that CPU. This a separate patch for easier bisection of issues. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'hw/net/virtio-net.c')
0 files changed, 0 insertions, 0 deletions