Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1621095
| From | Wanpeng Li <kernellwp@gmail.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | [PATCH] x86/kvm: virt_xxx memory barriers instead of mandatory barriers |
| Date | 2017-04-11 11:50 +0200 |
| Message-ID | <tv0AV-5dh-7@gated-at.bofh.it> (permalink) |
| Organization | linux.* mail to news gateway |
From: Wanpeng Li <wanpeng.li@hotmail.com>
virt_xxx memory barriers are implemented trivially using the low-level
__smp_xxx macros, __smp_xxx is equal to a compiler barrier for strong
TSO memory model, however, mandatory barriers will unconditional add
memory barriers, this patch replaces the rmb() in kvm_steal_clock() by
virt_rmb().
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: Radim Krčmář <rkrcmar@redhat.com>
Signed-off-by: Wanpeng Li <wanpeng.li@hotmail.com>
---
arch/x86/kernel/kvm.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/arch/x86/kernel/kvm.c b/arch/x86/kernel/kvm.c
index 14f65a5..da5c097 100644
--- a/arch/x86/kernel/kvm.c
+++ b/arch/x86/kernel/kvm.c
@@ -396,9 +396,9 @@ static u64 kvm_steal_clock(int cpu)
src = &per_cpu(steal_time, cpu);
do {
version = src->version;
- rmb();
+ virt_rmb();
steal = src->steal;
- rmb();
+ virt_rmb();
} while ((version & 1) || (version != src->version));
return steal;
--
2.7.4
Back to linux.kernel | Previous | Next — Next in thread | Find similar | Unroll thread
[PATCH] x86/kvm: virt_xxx memory barriers instead of mandatory barriers Wanpeng Li <kernellwp@gmail.com> - 2017-04-11 11:50 +0200 Re: [PATCH] x86/kvm: virt_xxx memory barriers instead of mandatory barriers Paolo Bonzini <pbonzini@redhat.com> - 2017-04-11 16:30 +0200 Re: [PATCH] x86/kvm: virt_xxx memory barriers instead of mandatory barriers Radim Krčmář <rkrcmar@redhat.com> - 2017-04-12 21:10 +0200
csiph-web