diff options
author | Soheil Hassas Yeganeh <soheil@google.com> | 2016-07-20 18:01:18 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2016-07-22 01:41:48 -0400 |
commit | f8e7718cc0445587fe8530fc2d240d9aac2c9072 (patch) | |
tree | 26133ea508e6001b91adef1482973c8b528927a5 /net/packet | |
parent | 882b0f2fba83374149f0a5869d95aa8b44dad31e (diff) | |
download | blackbird-op-linux-f8e7718cc0445587fe8530fc2d240d9aac2c9072.tar.gz blackbird-op-linux-f8e7718cc0445587fe8530fc2d240d9aac2c9072.zip |
packet: propagate sock_cmsg_send() error
sock_cmsg_send() can return different error codes and not only
-EINVAL, and we should properly propagate them.
Fixes: c14ac9451c34 ("sock: enable timestamping using control messages")
Signed-off-by: Soheil Hassas Yeganeh <soheil@google.com>
Cc: Willem de Bruijn <willemb@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/packet')
-rw-r--r-- | net/packet/af_packet.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/net/packet/af_packet.c b/net/packet/af_packet.c index 53e87ceb26e7..b43c4015b2f7 100644 --- a/net/packet/af_packet.c +++ b/net/packet/af_packet.c @@ -1930,10 +1930,8 @@ retry: sockc.tsflags = sk->sk_tsflags; if (msg->msg_controllen) { err = sock_cmsg_send(sk, msg, &sockc); - if (unlikely(err)) { - err = -EINVAL; + if (unlikely(err)) goto out_unlock; - } } skb->protocol = proto; |