Commit bba5850c authored by David S. Miller's avatar David S. Miller

ctcm_fsms: Convert skb->user accesses to refcount_t

Reported-by: default avatarkbuild test robot <fengguang.wu@intel.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 63d7c880
...@@ -217,7 +217,7 @@ void ctcm_purge_skb_queue(struct sk_buff_head *q) ...@@ -217,7 +217,7 @@ void ctcm_purge_skb_queue(struct sk_buff_head *q)
CTCM_DBF_TEXT(TRACE, CTC_DBF_DEBUG, __func__); CTCM_DBF_TEXT(TRACE, CTC_DBF_DEBUG, __func__);
while ((skb = skb_dequeue(q))) { while ((skb = skb_dequeue(q))) {
atomic_dec(&skb->users); refcount_dec(&skb->users);
dev_kfree_skb_any(skb); dev_kfree_skb_any(skb);
} }
} }
...@@ -271,7 +271,7 @@ static void chx_txdone(fsm_instance *fi, int event, void *arg) ...@@ -271,7 +271,7 @@ static void chx_txdone(fsm_instance *fi, int event, void *arg)
priv->stats.tx_bytes += 2; priv->stats.tx_bytes += 2;
first = 0; first = 0;
} }
atomic_dec(&skb->users); refcount_dec(&skb->users);
dev_kfree_skb_irq(skb); dev_kfree_skb_irq(skb);
} }
spin_lock(&ch->collect_lock); spin_lock(&ch->collect_lock);
...@@ -297,7 +297,7 @@ static void chx_txdone(fsm_instance *fi, int event, void *arg) ...@@ -297,7 +297,7 @@ static void chx_txdone(fsm_instance *fi, int event, void *arg)
skb_put(ch->trans_skb, skb->len), skb->len); skb_put(ch->trans_skb, skb->len), skb->len);
priv->stats.tx_packets++; priv->stats.tx_packets++;
priv->stats.tx_bytes += skb->len - LL_HEADER_LENGTH; priv->stats.tx_bytes += skb->len - LL_HEADER_LENGTH;
atomic_dec(&skb->users); refcount_dec(&skb->users);
dev_kfree_skb_irq(skb); dev_kfree_skb_irq(skb);
i++; i++;
} }
...@@ -1248,7 +1248,7 @@ static void ctcmpc_chx_txdone(fsm_instance *fi, int event, void *arg) ...@@ -1248,7 +1248,7 @@ static void ctcmpc_chx_txdone(fsm_instance *fi, int event, void *arg)
priv->stats.tx_bytes += 2; priv->stats.tx_bytes += 2;
first = 0; first = 0;
} }
atomic_dec(&skb->users); refcount_dec(&skb->users);
dev_kfree_skb_irq(skb); dev_kfree_skb_irq(skb);
} }
spin_lock(&ch->collect_lock); spin_lock(&ch->collect_lock);
...@@ -1298,7 +1298,7 @@ static void ctcmpc_chx_txdone(fsm_instance *fi, int event, void *arg) ...@@ -1298,7 +1298,7 @@ static void ctcmpc_chx_txdone(fsm_instance *fi, int event, void *arg)
data_space -= skb->len; data_space -= skb->len;
priv->stats.tx_packets++; priv->stats.tx_packets++;
priv->stats.tx_bytes += skb->len; priv->stats.tx_bytes += skb->len;
atomic_dec(&skb->users); refcount_dec(&skb->users);
dev_kfree_skb_any(skb); dev_kfree_skb_any(skb);
peekskb = skb_peek(&ch->collect_queue); peekskb = skb_peek(&ch->collect_queue);
if (peekskb->len > data_space) if (peekskb->len > data_space)
...@@ -1795,7 +1795,7 @@ static void ctcmpc_chx_send_sweep(fsm_instance *fsm, int event, void *arg) ...@@ -1795,7 +1795,7 @@ static void ctcmpc_chx_send_sweep(fsm_instance *fsm, int event, void *arg)
fsm_event(grp->fsm, MPCG_EVENT_INOP, dev); fsm_event(grp->fsm, MPCG_EVENT_INOP, dev);
goto done; goto done;
} else { } else {
atomic_inc(&skb->users); refcount_inc(&skb->users);
skb_queue_tail(&wch->io_queue, skb); skb_queue_tail(&wch->io_queue, skb);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment