diff options
Diffstat (limited to 'net/ipv4/tcp_bpf.c')
-rw-r--r-- | net/ipv4/tcp_bpf.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/net/ipv4/tcp_bpf.c b/net/ipv4/tcp_bpf.c index 3d1e15401384..8a56e09cfb0e 100644 --- a/net/ipv4/tcp_bpf.c +++ b/net/ipv4/tcp_bpf.c | |||
@@ -398,10 +398,14 @@ more_data: | |||
398 | static int tcp_bpf_sendmsg(struct sock *sk, struct msghdr *msg, size_t size) | 398 | static int tcp_bpf_sendmsg(struct sock *sk, struct msghdr *msg, size_t size) |
399 | { | 399 | { |
400 | struct sk_msg tmp, *msg_tx = NULL; | 400 | struct sk_msg tmp, *msg_tx = NULL; |
401 | int flags = msg->msg_flags | MSG_NO_SHARED_FRAGS; | ||
402 | int copied = 0, err = 0; | 401 | int copied = 0, err = 0; |
403 | struct sk_psock *psock; | 402 | struct sk_psock *psock; |
404 | long timeo; | 403 | long timeo; |
404 | int flags; | ||
405 | |||
406 | /* Don't let internal do_tcp_sendpages() flags through */ | ||
407 | flags = (msg->msg_flags & ~MSG_SENDPAGE_DECRYPTED); | ||
408 | flags |= MSG_NO_SHARED_FRAGS; | ||
405 | 409 | ||
406 | psock = sk_psock_get(sk); | 410 | psock = sk_psock_get(sk); |
407 | if (unlikely(!psock)) | 411 | if (unlikely(!psock)) |