Searched hist:"84292 e565951cecfe2718e43905a6103c9e8ac29" (Results 1 – 3 of 3) sorted by relevance
/openbmc/linux/tools/testing/selftests/kvm/ |
H A D | dirty_log_test.c | diff 84292e565951cecfe2718e43905a6103c9e8ac29 Wed Sep 30 20:22:37 CDT 2020 Peter Xu <peterx@redhat.com> KVM: selftests: Add dirty ring buffer test
Add the initial dirty ring buffer test.
The current test implements the userspace dirty ring collection, by only reaping the dirty ring when the ring is full.
So it's still running synchronously like this:
vcpu main thread
1. vcpu dirties pages 2. vcpu gets dirty ring full (userspace exit)
3. main thread waits until full (so hardware buffers flushed) 4. main thread collects 5. main thread continues vcpu
6. vcpu continues, goes back to 1
We can't directly collects dirty bits during vcpu execution because otherwise we can't guarantee the hardware dirty bits were flushed when we collect and we're very strict on the dirty bits so otherwise we can fail the future verify procedure. A follow up patch will make this test to support async just like the existing dirty log test, by adding a vcpu kick mechanism.
Signed-off-by: Peter Xu <peterx@redhat.com> Message-Id: <20201001012237.6111-1-peterx@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
|
/openbmc/linux/tools/testing/selftests/kvm/include/ |
H A D | kvm_util.h | diff 84292e565951cecfe2718e43905a6103c9e8ac29 Wed Sep 30 20:22:37 CDT 2020 Peter Xu <peterx@redhat.com> KVM: selftests: Add dirty ring buffer test
Add the initial dirty ring buffer test.
The current test implements the userspace dirty ring collection, by only reaping the dirty ring when the ring is full.
So it's still running synchronously like this:
vcpu main thread
1. vcpu dirties pages 2. vcpu gets dirty ring full (userspace exit)
3. main thread waits until full (so hardware buffers flushed) 4. main thread collects 5. main thread continues vcpu
6. vcpu continues, goes back to 1
We can't directly collects dirty bits during vcpu execution because otherwise we can't guarantee the hardware dirty bits were flushed when we collect and we're very strict on the dirty bits so otherwise we can fail the future verify procedure. A follow up patch will make this test to support async just like the existing dirty log test, by adding a vcpu kick mechanism.
Signed-off-by: Peter Xu <peterx@redhat.com> Message-Id: <20201001012237.6111-1-peterx@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
|
/openbmc/linux/tools/testing/selftests/kvm/lib/ |
H A D | kvm_util.c | diff 84292e565951cecfe2718e43905a6103c9e8ac29 Wed Sep 30 20:22:37 CDT 2020 Peter Xu <peterx@redhat.com> KVM: selftests: Add dirty ring buffer test
Add the initial dirty ring buffer test.
The current test implements the userspace dirty ring collection, by only reaping the dirty ring when the ring is full.
So it's still running synchronously like this:
vcpu main thread
1. vcpu dirties pages 2. vcpu gets dirty ring full (userspace exit)
3. main thread waits until full (so hardware buffers flushed) 4. main thread collects 5. main thread continues vcpu
6. vcpu continues, goes back to 1
We can't directly collects dirty bits during vcpu execution because otherwise we can't guarantee the hardware dirty bits were flushed when we collect and we're very strict on the dirty bits so otherwise we can fail the future verify procedure. A follow up patch will make this test to support async just like the existing dirty log test, by adding a vcpu kick mechanism.
Signed-off-by: Peter Xu <peterx@redhat.com> Message-Id: <20201001012237.6111-1-peterx@redhat.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
|