qeth: add wake_up on write channel
authorUrsula Braun <ursula.braun@de.ibm.com>
Wed, 8 Feb 2012 00:19:50 +0000 (00:19 +0000)
committerDavid S. Miller <davem@davemloft.net>
Wed, 8 Feb 2012 23:50:20 +0000 (18:50 -0500)
To send commands on the write channel 8 buffers exist. If all
8 buffers are used, a wait is triggered on the write channel. When
such buffer are freed, a wake_up is needed. This patch adds the
missing wake_up in qeth_release_buffer().
This fix is especially important when running Communications
Controller for Linux on System z.

Signed-off-by: Ursula Braun <ursula.braun@de.ibm.com>
Signed-off-by: Frank Blaschka <frank.blaschka@de.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

drivers/s390/net/qeth_core_main.c

index 0565584..cbb1018 100644 (file)
@@ -678,6 +678,7 @@ void qeth_release_buffer(struct qeth_channel *channel,
        iob->callback = qeth_send_control_data_cb;
        iob->rc = 0;
        spin_unlock_irqrestore(&channel->iob_lock, flags);
+       wake_up(&channel->wait_q);
 }
 EXPORT_SYMBOL_GPL(qeth_release_buffer);