diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2020-02-18 22:26:32 +0300 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2020-05-29 23:11:50 +0300 |
commit | 5904122c46581a5ccee54a51ef07e0d891fd7aef (patch) | |
tree | 433bbafc1e3a3cdbfd291d51cfd858186683dff2 /arch/ia64 | |
parent | 24f9aa928c3cc88bae573b39b6976844968f80a0 (diff) | |
download | linux-5904122c46581a5ccee54a51ef07e0d891fd7aef.tar.xz |
take the dummy csum_and_copy_from_user() into net/checksum.h
now that can be done conveniently - all non-trivial cases have
_HAVE_ARCH_COPY_AND_CSUM_FROM_USER defined, so the fallback in
net/checksum.h is used only for dummy (copy_from_user, then
csum_partial) implementation. Allowing us to get rid of all
dummy instances, both of csum_and_copy_from_user() and
csum_partial_copy_from_user().
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'arch/ia64')
-rw-r--r-- | arch/ia64/include/asm/checksum.h | 11 | ||||
-rw-r--r-- | arch/ia64/lib/csum_partial_copy.c | 18 |
2 files changed, 0 insertions, 29 deletions
diff --git a/arch/ia64/include/asm/checksum.h b/arch/ia64/include/asm/checksum.h index 279ea4dcee79..2a1c64629cdc 100644 --- a/arch/ia64/include/asm/checksum.h +++ b/arch/ia64/include/asm/checksum.h @@ -37,17 +37,6 @@ extern __wsum csum_tcpudp_nofold(__be32 saddr, __be32 daddr, */ extern __wsum csum_partial(const void *buff, int len, __wsum sum); -#define _HAVE_ARCH_COPY_AND_CSUM_FROM_USER -/* - * Same as csum_partial, but copies from src while it checksums. - * - * Here it is even more important to align src and dst on a 32-bit (or - * even better 64-bit) boundary. - */ -extern __wsum csum_and_copy_from_user(const void __user *src, void *dst, - int len, __wsum sum, - int *errp); - extern __wsum csum_partial_copy_nocheck(const void *src, void *dst, int len, __wsum sum); diff --git a/arch/ia64/lib/csum_partial_copy.c b/arch/ia64/lib/csum_partial_copy.c index ab59eb399900..5d147a33d648 100644 --- a/arch/ia64/lib/csum_partial_copy.c +++ b/arch/ia64/lib/csum_partial_copy.c @@ -104,24 +104,6 @@ out: * But it's very tricky to get right even in C. */ __wsum -csum_and_copy_from_user(const void __user *src, void *dst, - int len, __wsum psum, int *errp) -{ - /* XXX Fixme - * for now we separate the copy from checksum for obvious - * alignment difficulties. Look at the Alpha code and you'll be - * scared. - */ - - if (copy_from_user(dst, src, len)) - *errp = -EFAULT; - - return csum_partial(dst, len, psum); -} - -EXPORT_SYMBOL(csum_and_copy_from_user); - -__wsum csum_partial_copy_nocheck(const void *src, void *dst, int len, __wsum sum) { memcpy(dst, src, len); |