Bluetooth: 6lowpan: Use netif APIs to flow control

Rely on netif_wake_queue and netif_stop_queue to flow control when
transmit resources are unavailable.

Signed-off-by: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
Acked-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
This commit is contained in:
Luiz Augusto von Dentz 2017-04-11 22:21:00 +03:00 committed by Marcel Holtmann
parent e1008f95e1
commit f183e52b8e
1 changed files with 16 additions and 0 deletions

View File

@ -867,12 +867,28 @@ static struct sk_buff *chan_alloc_skb_cb(struct l2cap_chan *chan,
static void chan_suspend_cb(struct l2cap_chan *chan)
{
struct lowpan_btle_dev *dev;
BT_DBG("chan %p suspend", chan);
dev = lookup_dev(chan->conn);
if (!dev || !dev->netdev)
return;
netif_stop_queue(dev->netdev);
}
static void chan_resume_cb(struct l2cap_chan *chan)
{
struct lowpan_btle_dev *dev;
BT_DBG("chan %p resume", chan);
dev = lookup_dev(chan->conn);
if (!dev || !dev->netdev)
return;
netif_wake_queue(dev->netdev);
}
static long chan_get_sndtimeo_cb(struct l2cap_chan *chan)