qemu/docs
Paolo Bonzini 51dee5e465 qemu-thread: introduce QemuLockCnt
A QemuLockCnt comprises a counter and a mutex, with primitives
to increment and decrement the counter, and to take and release the
mutex.  It can be used to do lock-free visits to a data structure
whenever mutexes would be too heavy-weight and the critical section
is too long for RCU.

This could be implemented simply by protecting the counter with the
mutex, but QemuLockCnt is harder to misuse and more efficient.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Fam Zheng <famz@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-id: 20170112180800.21085-3-pbonzini@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2017-01-16 13:25:17 +00:00
..
specs vhost-user: Add MTU protocol feature and op 2017-01-10 07:02:53 +02:00
aio_notify_accept.promela AioContext: optimize clearing the EventNotifier 2015-07-22 12:41:40 +01:00
aio_notify_bug.promela AioContext: fix broken placement of event_notifier_test_and_clear 2015-07-22 12:41:40 +01:00
aio_notify.promela AioContext: fix broken ctx->dispatching optimization 2015-07-22 12:41:40 +01:00
atomics.txt atomic: base mb_read/mb_set on load-acquire and store-release 2016-10-24 15:27:15 +02:00
bitmaps.md docs: update bitmaps.md 2015-11-17 18:35:56 +08:00
blkdebug.txt blkdebug: Merge hand-rolled and qapi BlkdebugEvent enum 2015-12-17 08:21:27 +01:00
blkverify.txt
block-replication.txt docs: block replication's description 2016-09-13 11:00:56 +01:00
bootindex.txt
build-system.txt docs: Add text for tests/docker in build-system.txt 2016-06-01 17:27:35 +08:00
ccid.txt
COLO-FT.txt docs: fix COLO architecture diagram 2016-11-15 15:36:21 +08:00
colo-proxy.txt docs: Add documentation for COLO-proxy 2016-09-27 17:54:22 +08:00
generic-loader.txt docs/generic-loader: Update the document 2016-10-17 19:22:16 +01:00
ich9-ehci-uhci.cfg
igd-assign.txt vfio/pci: Add IGD documentation 2016-05-26 11:12:05 -06:00
image-fuzzer.txt
live-block-ops.txt docs: Document how to stream to an intermediate layer 2016-10-31 16:52:38 +01:00
lockcnt.txt qemu-thread: introduce QemuLockCnt 2017-01-16 13:25:17 +00:00
memory-hotplug.txt docs: update documentation for memory hot unplug 2015-04-27 21:07:38 +02:00
memory.txt memory: Provide memory_region_init_rom() 2016-07-04 13:06:35 +01:00
migration.txt migration: convert post-copy to use QIOChannelBuffer 2016-05-26 11:31:34 +05:30
multi-thread-compression.txt docs/multi-thread-compression: Fix wrong command string 2016-06-07 18:19:24 +03:00
multiple-iothreads.txt iothread: release AioContext around aio_poll 2016-10-28 21:50:18 +08:00
multiseat.txt maint: remove / fix many doubled words 2015-09-11 10:21:38 +03:00
pci_expander_bridge.txt pxb: cleanup 2016-03-11 16:59:12 +02:00
pcie.txt doc/pcie: correct command line examples 2017-01-10 07:02:52 +02:00
q35-chipset.cfg
qapi-code-gen.txt qapi: rename QmpOutputVisitor to QObjectOutputVisitor 2016-10-25 16:25:54 +02:00
qcow2-cache.txt docs: Specify that cache-clean-interval is only supported in Linux 2016-11-25 13:51:31 +01:00
qdev-device-use.txt
qemupciserial.inf
qmp-commands.txt monitor: fix qmp/hmp query-memdev not reporting IDs of memory backends 2017-01-12 15:35:06 -02:00
qmp-events.txt block: Add qdev ID to DEVICE_TRAY_MOVED 2016-10-07 13:34:22 +02:00
qmp-intro.txt docs: Move files from docs/qmp/ to docs/ 2015-10-12 18:44:53 +02:00
qmp-spec.txt qapi: Update docs to match recent generator changes 2016-03-05 10:41:16 +01:00
rcu.txt docs/rcu.txt: Fix minor typo 2016-11-02 09:28:57 +01:00
rdma.txt
replay.txt record/replay: add network support 2017-01-06 10:38:00 +08:00
spice-port-fqdn.txt
tcg-exclusive.promela cpus-common: lock-free fast path for cpu_exec_start/end 2016-09-27 11:57:30 +02:00
throttle.txt docs: Fix description of the leaky bucket algorithm in throttle.txt 2016-09-13 18:12:34 +03:00
tracing.txt docs/tracing.txt: Update documentation of default backend 2016-11-08 18:16:48 +00:00
usb2.txt
usb-storage.txt usb: add storage hotplug documentation 2016-07-12 10:25:30 +02:00
virtio-balloon-stats.txt
virtio-migration.txt virtio: Update migration docs 2016-07-21 20:44:20 +03:00
vnc-ledstate-Pseudo-encoding.txt
win32-qemu-event.promela qemu-thread: add a fast path to the Win32 QemuEvent 2015-09-24 20:52:28 +02:00
writing-qmp-commands.txt docs: Belatedly update for move of QMP/* to docs/ 2016-10-07 19:22:11 +02:00
xbzrle.txt docs/xbzrle: correction 2016-10-13 17:23:53 +02:00
xen-save-devices-state.txt docs: Belatedly update for move of qmp-commands.txt 2016-10-07 19:22:11 +02:00