diff options
author | Reshetova, Elena | 2017-06-30 12:07:58 +0200 |
---|---|---|
committer | David S. Miller | 2017-07-01 16:39:07 +0200 |
commit | 633547973ffc32fd2c815639d4675e1531f0896f (patch) | |
tree | 751ca7a379366af93f578d9f35f48339d4d2dd9b /drivers/s390/net/qeth_core_main.c | |
parent | net: convert nf_bridge_info.use from atomic_t to refcount_t (diff) | |
download | kernel-qcow2-linux-633547973ffc32fd2c815639d4675e1531f0896f.tar.gz kernel-qcow2-linux-633547973ffc32fd2c815639d4675e1531f0896f.tar.xz kernel-qcow2-linux-633547973ffc32fd2c815639d4675e1531f0896f.zip |
net: convert sk_buff.users from atomic_t to refcount_t
refcount_t type and corresponding API should be
used instead of atomic_t when the variable is used as
a reference counter. This allows to avoid accidental
refcounter overflows that might lead to use-after-free
situations.
Signed-off-by: Elena Reshetova <elena.reshetova@intel.com>
Signed-off-by: Hans Liljestrand <ishkamiel@gmail.com>
Signed-off-by: Kees Cook <keescook@chromium.org>
Signed-off-by: David Windsor <dwindsor@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/s390/net/qeth_core_main.c')
-rw-r--r-- | drivers/s390/net/qeth_core_main.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/s390/net/qeth_core_main.c b/drivers/s390/net/qeth_core_main.c index 3b657d5b7e49..aec06e10b969 100644 --- a/drivers/s390/net/qeth_core_main.c +++ b/drivers/s390/net/qeth_core_main.c @@ -1242,7 +1242,7 @@ static void qeth_release_skbs(struct qeth_qdio_out_buffer *buf) iucv->sk_txnotify(skb, TX_NOTIFY_GENERALERROR); } } - atomic_dec(&skb->users); + refcount_dec(&skb->users); dev_kfree_skb_any(skb); skb = skb_dequeue(&buf->skb_list); } @@ -3975,7 +3975,7 @@ static inline int qeth_fill_buffer(struct qeth_qdio_out_q *queue, int flush_cnt = 0, hdr_len, large_send = 0; buffer = buf->buffer; - atomic_inc(&skb->users); + refcount_inc(&skb->users); skb_queue_tail(&buf->skb_list, skb); /*check first on TSO ....*/ |