diff options
author | Ingo Molnar <mingo@elte.hu> | 2011-08-04 09:09:27 +0200 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2011-08-04 09:09:27 +0200 |
commit | d7619fe39d9769b4d4545cc511c891deea18ae08 (patch) | |
tree | 0a902533414001075b2245825e145cc2e35ce985 /arch/s390/kvm/sigp.c | |
parent | 9ea71503a8ed9184d2d0b8ccc4d269d05f7940ae (diff) | |
parent | ed8f37370d83e695c0a4fa5d5fc7a83ecb947526 (diff) |
Merge branch 'linus' into core/urgent
Diffstat (limited to 'arch/s390/kvm/sigp.c')
-rw-r--r-- | arch/s390/kvm/sigp.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/arch/s390/kvm/sigp.c b/arch/s390/kvm/sigp.c index 702276f5e2f..d6a50c1fb2e 100644 --- a/arch/s390/kvm/sigp.c +++ b/arch/s390/kvm/sigp.c @@ -189,10 +189,8 @@ static int __sigp_set_prefix(struct kvm_vcpu *vcpu, u16 cpu_addr, u32 address, /* make sure that the new value is valid memory */ address = address & 0x7fffe000u; - if ((copy_from_user(&tmp, (void __user *) - (address + vcpu->arch.sie_block->gmsor) , 1)) || - (copy_from_user(&tmp, (void __user *)(address + - vcpu->arch.sie_block->gmsor + PAGE_SIZE), 1))) { + if (copy_from_guest_absolute(vcpu, &tmp, address, 1) || + copy_from_guest_absolute(vcpu, &tmp, address + PAGE_SIZE, 1)) { *reg |= SIGP_STAT_INVALID_PARAMETER; return 1; /* invalid parameter */ } |