diff options
author | Eric Dumazet <eric.dumazet@gmail.com> | 2009-10-14 20:40:11 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-10-14 20:40:11 -0700 |
commit | 766e9037cc139ee25ed93ee5ad11e1450c4b99f6 (patch) | |
tree | 062702b8edf203a6e91d1e6853ab24989617d758 /net/phonet | |
parent | 48bccd25df71f4f8177cb800f4b288222eb57761 (diff) | |
download | linux-3.10-766e9037cc139ee25ed93ee5ad11e1450c4b99f6.tar.gz linux-3.10-766e9037cc139ee25ed93ee5ad11e1450c4b99f6.tar.bz2 linux-3.10-766e9037cc139ee25ed93ee5ad11e1450c4b99f6.zip |
net: sk_drops consolidation
sock_queue_rcv_skb() can update sk_drops itself, removing need for
callers to take care of it. This is more consistent since
sock_queue_rcv_skb() also reads sk_drops when queueing a skb.
This adds sk_drops managment to many protocols that not cared yet.
Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/phonet')
-rw-r--r-- | net/phonet/datagram.c | 6 | ||||
-rw-r--r-- | net/phonet/pep.c | 2 |
2 files changed, 2 insertions, 6 deletions
diff --git a/net/phonet/datagram.c b/net/phonet/datagram.c index ef5c75c372e..67f072e94d0 100644 --- a/net/phonet/datagram.c +++ b/net/phonet/datagram.c @@ -159,11 +159,9 @@ out_nofree: static int pn_backlog_rcv(struct sock *sk, struct sk_buff *skb) { int err = sock_queue_rcv_skb(sk, skb); - if (err < 0) { + + if (err < 0) kfree_skb(skb); - if (err == -ENOMEM) - atomic_inc(&sk->sk_drops); - } return err ? NET_RX_DROP : NET_RX_SUCCESS; } diff --git a/net/phonet/pep.c b/net/phonet/pep.c index 5f32d217535..cbaa1d67d77 100644 --- a/net/phonet/pep.c +++ b/net/phonet/pep.c @@ -360,8 +360,6 @@ static int pipe_do_rcv(struct sock *sk, struct sk_buff *skb) err = sock_queue_rcv_skb(sk, skb); if (!err) return 0; - if (err == -ENOMEM) - atomic_inc(&sk->sk_drops); break; } |