while (size) { if (__put_user(*src, dst)) break; dst++; src++; size--; }  return size;
return compute_size((unsigned long) to, size, &offset);
unsigned long copy_to_user_fixup(void __user *to, const void *from, unsigned long size){	char __user *dst = to;	const char *src = from;	while (size) {		if (__put_user(*src, dst))			break;		dst++;		src++;		size--;	}	return size;}