summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorUri Lublin <uril@qumranet.com>2006-12-13 09:34:00 +0100
committerLinus Torvalds <torvalds@woody.osdl.org>2006-12-13 18:05:47 +0100
commitf7fbf1fdf0d79241f5cc95310b96f0c52452ab39 (patch)
treee56bcb3ccb56517279a8727603087813722eb7f4
parent[PATCH] Fix section mismatch in parainstructions (diff)
downloadlinux-f7fbf1fdf0d79241f5cc95310b96f0c52452ab39.tar.xz
linux-f7fbf1fdf0d79241f5cc95310b96f0c52452ab39.zip
[PATCH] KVM: Make the GET_SREGS and SET_SREGS ioctls symmetric
This makes the SET_SREGS ioctl behave symmetrically to the GET_SREGS ioctl wrt the segment access rights flag. Signed-off-by: Uri Lublin <uril@qumranet.com> Signed-off-by: Avi Kivity <avi@qumranet.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r--drivers/kvm/vmx.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/kvm/vmx.c b/drivers/kvm/vmx.c
index ad97014aa6eb..fc01c4b08fd5 100644
--- a/drivers/kvm/vmx.c
+++ b/drivers/kvm/vmx.c
@@ -884,6 +884,8 @@ static void vmx_set_segment(struct kvm_vcpu *vcpu,
ar |= (var->db & 1) << 14;
ar |= (var->g & 1) << 15;
}
+ if (ar == 0) /* a 0 value means unusable */
+ ar = AR_UNUSABLE_MASK;
vmcs_write32(sf->ar_bytes, ar);
}