|
@@ -1921,9 +1921,11 @@ int access_process_vm(struct task_struct *tsk, unsigned long addr, void *buf, in
|
|
|
|
|
|
/* only read or write mappings where it is permitted */
|
|
|
if (write && vma->vm_flags & VM_MAYWRITE)
|
|
|
- len -= copy_to_user((void *) addr, buf, len);
|
|
|
+ copy_to_user_page(vma, NULL, addr,
|
|
|
+ (void *) addr, buf, len);
|
|
|
else if (!write && vma->vm_flags & VM_MAYREAD)
|
|
|
- len -= copy_from_user(buf, (void *) addr, len);
|
|
|
+ copy_from_user_page(vma, NULL, addr,
|
|
|
+ buf, (void *) addr, len);
|
|
|
else
|
|
|
len = 0;
|
|
|
} else {
|