[PATCH] uml: s390 preparation, checksumming done in arch code

Checksum handling largely depends on the subarch.

Thus, I renamed i386 arch_csum_partial in arch/um/sys-i386/checksum.S back to
csum_partial, removed csum_partial from arch/um/kernel/checksum.c and shifted
EXPORT_SYMBOL(csum_partial) to arch/um/sys-i386/ksyms.c.

Then, csum_partial_copy_to and csum_partial_copy_from were shifted from
arch/um/kernel/checksum.c to arch/um/include/sysdep-i386/checksum.h and
inserted in the calling functions csum_partial_copy_from_user() and
csum_and_copy_to_user().

Now, arch/um/kernel/checksum.c is empty and removed.

Signed-off-by: Bodo Stroesser <bstroesser@fujitsu-siemens.com>
Signed-off-by: Jeff Dike <jdike@addtoit.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
Bodo Stroesser
2005-05-05 16:15:36 -07:00
committed by Linus Torvalds
parent c52ac04675
commit 7d37c6d52f
5 changed files with 27 additions and 59 deletions
+1 -1
View File
@@ -6,7 +6,7 @@
extra-y := vmlinux.lds
clean-files :=
obj-y = checksum.o config.o exec_kern.o exitcode.o \
obj-y = config.o exec_kern.o exitcode.o \
helper.o init_task.o irq.o irq_user.o ksyms.o main.o mem.o mem_user.o \
physmem.o process.o process_kern.o ptrace.o reboot.o resource.o \
sigio_user.o sigio_kern.o signal_kern.o signal_user.o smp.o \
-36
View File
@@ -1,36 +0,0 @@
#include "asm/uaccess.h"
#include "linux/errno.h"
#include "linux/module.h"
unsigned int arch_csum_partial(const unsigned char *buff, int len, int sum);
unsigned int csum_partial(unsigned char *buff, int len, int sum)
{
return arch_csum_partial(buff, len, sum);
}
EXPORT_SYMBOL(csum_partial);
unsigned int csum_partial_copy_to(const unsigned char *src,
unsigned char __user *dst, int len, int sum,
int *err_ptr)
{
if(copy_to_user(dst, src, len)){
*err_ptr = -EFAULT;
return(-1);
}
return(arch_csum_partial(src, len, sum));
}
unsigned int csum_partial_copy_from(const unsigned char __user *src,
unsigned char *dst, int len, int sum,
int *err_ptr)
{
if(copy_from_user(dst, src, len)){
*err_ptr = -EFAULT;
return(-1);
}
return arch_csum_partial(dst, len, sum);
}