summaryrefslogtreecommitdiffstats
path: root/drivers/s390/net/qeth_core_main.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2019-03-18 18:34:45 -0700
committerDavid S. Miller <davem@davemloft.net>2019-03-18 18:34:45 -0700
commitd0645cfdda52aaed609e2d3484130427f8a0db32 (patch)
tree3473dc041ea1a079657e48800aacaf630209b7f9 /drivers/s390/net/qeth_core_main.c
parentfae846e2b7124d4b076ef17791c73addf3b26350 (diff)
parent104b48592b5441c722dcd95c38ab9300f2d94856 (diff)
downloadtalos-op-linux-d0645cfdda52aaed609e2d3484130427f8a0db32.tar.gz
talos-op-linux-d0645cfdda52aaed609e2d3484130427f8a0db32.zip
Merge branch 's390-qeth-fixes'
Julian Wiedmann says: ==================== s390/qeth: fixes 2019-03-18 please apply the following three patches to -net. The first two are fixes for minor race conditions in the probe code, while the third one gets dropwatch working (again). ==================== 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.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/s390/net/qeth_core_main.c b/drivers/s390/net/qeth_core_main.c
index 197b0f5b63e7..44bd6f04c145 100644
--- a/drivers/s390/net/qeth_core_main.c
+++ b/drivers/s390/net/qeth_core_main.c
@@ -1150,13 +1150,16 @@ static void qeth_notify_skbs(struct qeth_qdio_out_q *q,
static void qeth_release_skbs(struct qeth_qdio_out_buffer *buf)
{
+ struct sk_buff *skb;
+
/* release may never happen from within CQ tasklet scope */
WARN_ON_ONCE(atomic_read(&buf->state) == QETH_QDIO_BUF_IN_CQ);
if (atomic_read(&buf->state) == QETH_QDIO_BUF_PENDING)
qeth_notify_skbs(buf->q, buf, TX_NOTIFY_GENERALERROR);
- __skb_queue_purge(&buf->skb_list);
+ while ((skb = __skb_dequeue(&buf->skb_list)) != NULL)
+ consume_skb(skb);
}
static void qeth_clear_output_buffer(struct qeth_qdio_out_q *queue,
OpenPOWER on IntegriCloud