Message ID | 20110524055127.GA2460@osiris.boeblingen.de.ibm.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Tue, 24 May 2011 07:51:27 +0200 Heiko Carstens <heiko.carstens@de.ibm.com> wrote: > From: Heiko Carstens <heiko.carstens@de.ibm.com> > > fa3d315a "KVM: Validate userspace_addr of memslot when registered" introduced > this new warning onn s390: > > kvm_main.c: In function '__kvm_set_memory_region': > kvm_main.c:654:7: warning: passing argument 1 of '__access_ok' makes pointer from integer without a cast > arch/s390/include/asm/uaccess.h:53:19: note: expected 'const void *' but argument is of type '__u64' > > Add the missing cast to get rid of it again... > Looks good to me, thank you! I should have checked s390's type checking... Takuya > Cc: Takuya Yoshikawa <yoshikawa.takuya@oss.ntt.co.jp> > Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> > --- > virt/kvm/kvm_main.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > --- a/virt/kvm/kvm_main.c > +++ b/virt/kvm/kvm_main.c > @@ -651,7 +651,8 @@ int __kvm_set_memory_region(struct kvm * > /* We can read the guest memory with __xxx_user() later on. */ > if (user_alloc && > ((mem->userspace_addr & (PAGE_SIZE - 1)) || > - !access_ok(VERIFY_WRITE, mem->userspace_addr, mem->memory_size))) > + !access_ok(VERIFY_WRITE, (void __user *)mem->userspace_addr, > + mem->memory_size))) > goto out; > if (mem->slot >= KVM_MEMORY_SLOTS + KVM_PRIVATE_MEM_SLOTS) > goto out;
On 05/24/2011 08:51 AM, Heiko Carstens wrote: > From: Heiko Carstens<heiko.carstens@de.ibm.com> > > fa3d315a "KVM: Validate userspace_addr of memslot when registered" introduced > this new warning onn s390: > > kvm_main.c: In function '__kvm_set_memory_region': > kvm_main.c:654:7: warning: passing argument 1 of '__access_ok' makes pointer from integer without a cast > arch/s390/include/asm/uaccess.h:53:19: note: expected 'const void *' but argument is of type '__u64' > > Add the missing cast to get rid of it again... > Thanks, applied, and queued for 2.6.40/2.8.0/3.0/2011.1, as the case may be.
--- a/virt/kvm/kvm_main.c +++ b/virt/kvm/kvm_main.c @@ -651,7 +651,8 @@ int __kvm_set_memory_region(struct kvm * /* We can read the guest memory with __xxx_user() later on. */ if (user_alloc && ((mem->userspace_addr & (PAGE_SIZE - 1)) || - !access_ok(VERIFY_WRITE, mem->userspace_addr, mem->memory_size))) + !access_ok(VERIFY_WRITE, (void __user *)mem->userspace_addr, + mem->memory_size))) goto out; if (mem->slot >= KVM_MEMORY_SLOTS + KVM_PRIVATE_MEM_SLOTS) goto out;