diff --git a/net/core/filter.c b/net/core/filter.c index 6f5dba3333d0..37ba94304606 100644 --- a/net/core/filter.c +++ b/net/core/filter.c @@ -1505,7 +1505,7 @@ struct bpf_prog *__get_filter(struct sock_fprog *fprog, struct sock *sk) if (copy_from_user(prog->insns, fprog->filter, fsize)) { __bpf_prog_free(prog); - return ERR_PTR(-EINVAL); + return ERR_PTR(-EFAULT); } prog->len = fprog->len; diff --git a/net/sctp/socket.c b/net/sctp/socket.c index 9f775a482443..50b6b6ee734b 100644 --- a/net/sctp/socket.c +++ b/net/sctp/socket.c @@ -1338,7 +1338,7 @@ static int __sctp_setsockopt_connectx(struct sock *sk, kaddrs = memdup_user(addrs, addrs_size); if (IS_ERR(kaddrs)) - return PTR_ERR(kaddrs) == -EFAULT ? -EINVAL : PTR_ERR(kaddrs); + return PTR_ERR(kaddrs); /* Allow security module to validate connectx addresses. */ err = security_sctp_bind_connect(sk, SCTP_SOCKOPT_CONNECTX,