This patch series just change the way we allocate dirty bitmaps but don't
change timing related issues.
- Changelog
I have not changed anything about patch 1 and 2 since I got
"looks good" comment from Marcelo. Just rebased.
Patch 3 has become simpler by rebasing on top of this series.
Thanks,
Takuya
[Test result for VGA updates]
- without this patch series
| kvm_vm_ioctl_get_dirty_log() {
| mutex_lock() {
0.229 us | _cond_resched();
0.781 us | }
| vmalloc() {
... ...
... ...
+ 34.898 us | }
0.229 us | memset();
| T.1684() {
| __kmalloc() {
0.188 us | _cond_resched();
1.075 us | memset();
1.991 us | }
2.450 us | }
| synchronize_srcu_expedited() {
... ...
... ...
! 108.113 us | }
0.259 us | kfree();
0.215 us | _raw_spin_lock();
| kvm_mmu_slot_remove_write_access() {
| kvm_flush_remote_tlbs() {
| make_all_cpus_request() {
0.202 us | _raw_spin_lock();
0.643 us | }
1.048 us | }
2.081 us | }
| copy_to_user() {
0.304 us | _cond_resched();
0.733 us | }
| vfree() {
... ...
... ...
6.456 us | }
0.334 us | mutex_unlock();
! 159.649 us | }
- with this patch series
| kvm_vm_ioctl_get_dirty_log() {
| mutex_lock() {
0.300 us | _cond_resched();
0.789 us | }
0.237 us | memset();
| T.1686() {
| __kmalloc() {
0.207 us | _cond_resched();
1.086 us | memset();
1.981 us | }
2.408 us | }
| synchronize_srcu_expedited() {
... ...
... ...
+ 88.786 us | }
0.244 us | kfree();
0.221 us | _raw_spin_lock();
| kvm_mmu_slot_remove_write_access() {
| kvm_flush_remote_tlbs() {
| make_all_cpus_request() {
0.206 us | _raw_spin_lock();
0.647 us | }
1.048 us | }
2.056 us | }
| copy_to_user() {
0.263 us | _cond_resched();
0.688 us | }
0.202 us | mutex_unlock();
+ 98.356 us | }
--
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