Generic Asynchronous task offloading
- keep vcpu thread from blocking
- generic approach is useful, comes down to specifics
- e.g. what is done in worker threads, how locking is handled
- offload blocking work to worker threads
- need to make device model reentrant
- can be simple w/ lock per device, but needs finer grained to be perfromant
- but needs
- thread pool should be relatively easy to merge
- two alternatives for virtfs
- one full request in thread, one that does syscalls asynchronously
- need to have something demonstrably better to make threading acceptable
- complexity of state machine vs. locking
- performance difference at the end (e.g. coarse grained locking
doesn't fully allow for parallel execution)
- lapic needs to be reentrant
- in qemu lapic should show off the benefit very well
- hpet would also benefit from being threaded
- multiple threads per device (needs device specific locking)
- qxl, scsi, virtfs...
- push global lock down to pio/mmio dispatch
- audit for global qemu state changes done w/in device
- anthony will set up wiki page to describe making device models reentrant
- looking for volunteers!
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html