On 03/08/2011 10:17 AM, Avi Kivity wrote:
Memory map can be protected by a read-write lock initially, so that vcpu thread holds it for read. Later can be converted to URCU.rwlock is insufficient, need a way to force the vcpu off so a writer can actually do something. So we need some kind of priority rwlock where a reader lets the lock know how it can force it off in case a writer comes along.
If the reader is the VCPU thread, the VCPU thread can always be bounced via qemu_cpu_kick.
Paolo