diff options
| -rw-r--r-- | drivers/net/wimax/i2400m/tx.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/net/wimax/i2400m/tx.c b/drivers/net/wimax/i2400m/tx.c index 6db909ecf1c9..fab27e4a4cb3 100644 --- a/drivers/net/wimax/i2400m/tx.c +++ b/drivers/net/wimax/i2400m/tx.c | |||
| @@ -643,9 +643,11 @@ int i2400m_tx(struct i2400m *i2400m, const void *buf, size_t buf_len, | |||
| 643 | * current one is out of payload slots or we have a singleton, | 643 | * current one is out of payload slots or we have a singleton, |
| 644 | * close it and start a new one */ | 644 | * close it and start a new one */ |
| 645 | spin_lock_irqsave(&i2400m->tx_lock, flags); | 645 | spin_lock_irqsave(&i2400m->tx_lock, flags); |
| 646 | result = -ESHUTDOWN; | 646 | /* If tx_buf is NULL, device is shutdown */ |
| 647 | if (i2400m->tx_buf == NULL) | 647 | if (i2400m->tx_buf == NULL) { |
| 648 | result = -ESHUTDOWN; | ||
| 648 | goto error_tx_new; | 649 | goto error_tx_new; |
| 650 | } | ||
| 649 | try_new: | 651 | try_new: |
| 650 | if (unlikely(i2400m->tx_msg == NULL)) | 652 | if (unlikely(i2400m->tx_msg == NULL)) |
| 651 | i2400m_tx_new(i2400m); | 653 | i2400m_tx_new(i2400m); |
