search for: tx_busy

Displaying 20 results from an estimated 73 matches for "tx_busy".

2010 Feb 19
1
mISDN (HFC-S) and TDM400P - isac xdu no tx_busy
I had Asterisk 1.6.2.2 running fine with a mISDN using a HFC-S based card. I installed my TDM400P into the PC, it's really slow to boot now, when it finally does I gets stuck in a loop of reporting "isac xdu no tx_busy". Anyone able to assist? Thanks in advance! -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.digium.com/pipermail/asterisk-users/attachments/20100219/add17ccf/attachment.htm
2015 Mar 24
3
[PATCH net-next] virtio: change comment in transmit
...tworkplumber.org> --- a/drivers/net/virtio_net.c 2015-03-24 15:20:25.174671000 -0700 +++ b/drivers/net/virtio_net.c 2015-03-24 16:17:28.478525333 -0700 @@ -939,8 +939,12 @@ static netdev_tx_t start_xmit(struct sk_ skb_orphan(skb); nf_reset(skb); - /* Apparently nice girls don't return TX_BUSY; stop the queue - * before it gets out of hand. Naturally, this wastes entries. */ + /* It is better to stop queue if running out of space + * instead of forcing queuing layer to requeue the skb + * by returning TX_BUSY (and cause a BUG message). + * Since most packets only take 1 or 2 ring sl...
2015 Mar 24
3
[PATCH net-next] virtio: change comment in transmit
...tworkplumber.org> --- a/drivers/net/virtio_net.c 2015-03-24 15:20:25.174671000 -0700 +++ b/drivers/net/virtio_net.c 2015-03-24 16:17:28.478525333 -0700 @@ -939,8 +939,12 @@ static netdev_tx_t start_xmit(struct sk_ skb_orphan(skb); nf_reset(skb); - /* Apparently nice girls don't return TX_BUSY; stop the queue - * before it gets out of hand. Naturally, this wastes entries. */ + /* It is better to stop queue if running out of space + * instead of forcing queuing layer to requeue the skb + * by returning TX_BUSY (and cause a BUG message). + * Since most packets only take 1 or 2 ring sl...
2015 Apr 02
3
[PATCH net-next] virtio: document queue state logic
commit d631b94e7a15277858ec5f88d674d93080506999 virtio: change comment in transmit started clarifying the logic behind queue state management, but introduced an inaccuracy: TX_BUSY does not cause a BUG message. Clean this up some more, explaining the tradeoffs in detail. Signed-off-by: Michael S. Tsirkin <mst at redhat.com> --- diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c index a829930..63c7810 100644 --- a/drivers/net/virtio_net.c +++ b/drivers/n...
2015 Apr 02
3
[PATCH net-next] virtio: document queue state logic
commit d631b94e7a15277858ec5f88d674d93080506999 virtio: change comment in transmit started clarifying the logic behind queue state management, but introduced an inaccuracy: TX_BUSY does not cause a BUG message. Clean this up some more, explaining the tradeoffs in detail. Signed-off-by: Michael S. Tsirkin <mst at redhat.com> --- diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c index a829930..63c7810 100644 --- a/drivers/net/virtio_net.c +++ b/drivers/n...
2015 Mar 25
0
[PATCH net-next] virtio: change comment in transmit
...-off-by: Stephen Hemminger <stephen at networkplumber.org> Fair call. Comment was certainly snarky, probably sexist. I think it expressed my feelings perfectly, however. I note that there's still no comment saying "don't do this" in netdevice.h; I gather returning NETDEV_TX_BUSY is still considered a Bad Thing? (Does it really BUG_ON?) Thanks, Rusty. > --- a/drivers/net/virtio_net.c 2015-03-24 15:20:25.174671000 -0700 > +++ b/drivers/net/virtio_net.c 2015-03-24 16:17:28.478525333 -0700 > @@ -939,8 +939,12 @@ static netdev_tx_t start_xmit(struct sk_ > skb_o...
2015 Mar 25
0
[PATCH net-next] virtio: change comment in transmit
...-off-by: Stephen Hemminger <stephen at networkplumber.org> Fair call. Comment was certainly snarky, probably sexist. I think it expressed my feelings perfectly, however. I note that there's still no comment saying "don't do this" in netdevice.h; I gather returning NETDEV_TX_BUSY is still considered a Bad Thing? (Does it really BUG_ON?) Thanks, Rusty. > --- a/drivers/net/virtio_net.c 2015-03-24 15:20:25.174671000 -0700 > +++ b/drivers/net/virtio_net.c 2015-03-24 16:17:28.478525333 -0700 > @@ -939,8 +939,12 @@ static netdev_tx_t start_xmit(struct sk_ > skb_o...
2011 Jun 01
5
[PATCH RFC 0/3] virtio and vhost-net capacity handling
OK, here's a new attempt to use the new capacity api. I also added more comments to clarify the logic. Hope this is more readable. Let me know pls. This is on top of the patches applied by Rusty. Note: there are now actually 2 calls to fee_old_xmit_skbs on data path so instead of passing flag '2' to the second one I thought we can just make each call free up at least 1 skb. This
2011 Jun 01
5
[PATCH RFC 0/3] virtio and vhost-net capacity handling
OK, here's a new attempt to use the new capacity api. I also added more comments to clarify the logic. Hope this is more readable. Let me know pls. This is on top of the patches applied by Rusty. Note: there are now actually 2 calls to fee_old_xmit_skbs on data path so instead of passing flag '2' to the second one I thought we can just make each call free up at least 1 skb. This
2014 Oct 15
1
[PATCH RFC v2 2/3] virtio_net: bql
...c netdev_tx_t start_xmit(struct sk_buff *skb, struct net_device *dev) return NETDEV_TX_OK; } + netdev_tx_sent_queue(txq, bytes); + + /* Kick early so device can process descriptors in parallel with us. */ + if (kick) + virtqueue_kick(sq->vq); + /* Apparently nice girls don't return TX_BUSY; stop the queue * before it gets out of hand. Naturally, this wastes entries. */ if (sq->vq->num_free < 2+MAX_SKB_FRAGS) { @@ -997,7 +1009,7 @@ static netdev_tx_t start_xmit(struct sk_buff *skb, struct net_device *dev) if (unlikely(!virtqueue_enable_cb_delayed(sq->vq))) { /...
2014 Oct 15
1
[PATCH RFC v2 2/3] virtio_net: bql
...c netdev_tx_t start_xmit(struct sk_buff *skb, struct net_device *dev) return NETDEV_TX_OK; } + netdev_tx_sent_queue(txq, bytes); + + /* Kick early so device can process descriptors in parallel with us. */ + if (kick) + virtqueue_kick(sq->vq); + /* Apparently nice girls don't return TX_BUSY; stop the queue * before it gets out of hand. Naturally, this wastes entries. */ if (sq->vq->num_free < 2+MAX_SKB_FRAGS) { @@ -997,7 +1009,7 @@ static netdev_tx_t start_xmit(struct sk_buff *skb, struct net_device *dev) if (unlikely(!virtqueue_enable_cb_delayed(sq->vq))) { /...
2014 Dec 19
1
[PATCH RFC v4 net-next 1/5] virtio_net: enable tx interrupt
...+981,19 @@ static netdev_tx_t start_xmit(struct sk_buff *skb, struct net_device *dev) > return NETDEV_TX_OK; > } > > - /* Don't wait up for transmitted skbs to be freed. */ > - skb_orphan(skb); > - nf_reset(skb); > - > /* Apparently nice girls don't return TX_BUSY; stop the queue > * before it gets out of hand. Naturally, this wastes entries. */ > - if (sq->vq->num_free < 2+MAX_SKB_FRAGS) { > + if (sq->vq->num_free < 2+MAX_SKB_FRAGS) > netif_stop_subqueue(dev, qnum); > - if (unlikely(!virtqueue_enable_cb_delayed(sq-...
2014 Dec 19
1
[PATCH RFC v4 net-next 1/5] virtio_net: enable tx interrupt
...+981,19 @@ static netdev_tx_t start_xmit(struct sk_buff *skb, struct net_device *dev) > return NETDEV_TX_OK; > } > > - /* Don't wait up for transmitted skbs to be freed. */ > - skb_orphan(skb); > - nf_reset(skb); > - > /* Apparently nice girls don't return TX_BUSY; stop the queue > * before it gets out of hand. Naturally, this wastes entries. */ > - if (sq->vq->num_free < 2+MAX_SKB_FRAGS) { > + if (sq->vq->num_free < 2+MAX_SKB_FRAGS) > netif_stop_subqueue(dev, qnum); > - if (unlikely(!virtqueue_enable_cb_delayed(sq-...
2010 Feb 28
0
ISDN Options
All, I have not found/seen a resolution to the issue where my TDM400P seems to cause problems, as outlined in the "mISDN (HFC-S) and TDM400P - mISDN: ISAC XDU no TX_BUSY" thread. I have also not found/seen a simple 'how to' on patching DAHDi with ZAPHFC as outlined in the "HFC-S card" thread. Do I have anyother options with ISDN? Thanks in advance!
2014 Oct 20
0
[PATCH RFC v3 2/3] virtio_net: bql
...kb->xmit_more; + unsigned int bytes = skb->len; virtqueue_disable_cb(sq->vq); @@ -976,6 +981,8 @@ static netdev_tx_t start_xmit(struct sk_buff *skb, struct net_device *dev) return NETDEV_TX_OK; } + netdev_tx_sent_queue(txq, bytes); + /* Apparently nice girls don't return TX_BUSY; stop the queue * before it gets out of hand. Naturally, this wastes entries. */ if (sq->vq->num_free < 2+MAX_SKB_FRAGS) -- MST
2014 Oct 31
0
[PATCH] virtio_net: fix use after free
...*/ err = xmit_skb(sq, skb); @@ -941,10 +945,6 @@ static netdev_tx_t start_xmit(struct sk_buff *skb, struct net_device *dev) return NETDEV_TX_OK; } - /* Don't wait up for transmitted skbs to be freed. */ - skb_orphan(skb); - nf_reset(skb); - /* Apparently nice girls don't return TX_BUSY; stop the queue * before it gets out of hand. Naturally, this wastes entries. */ if (sq->vq->num_free < 2+MAX_SKB_FRAGS) {
2014 Oct 20
0
[PATCH RFC v3 2/3] virtio_net: bql
...kb->xmit_more; + unsigned int bytes = skb->len; virtqueue_disable_cb(sq->vq); @@ -976,6 +981,8 @@ static netdev_tx_t start_xmit(struct sk_buff *skb, struct net_device *dev) return NETDEV_TX_OK; } + netdev_tx_sent_queue(txq, bytes); + /* Apparently nice girls don't return TX_BUSY; stop the queue * before it gets out of hand. Naturally, this wastes entries. */ if (sq->vq->num_free < 2+MAX_SKB_FRAGS) -- MST
2014 Oct 14
4
[PATCH RFC] virtio_net: enable tx interrupt
...err = xmit_skb(sq, skb); @@ -930,22 +969,20 @@ static netdev_tx_t start_xmit(struct sk_buff *skb, struct net_device *dev) } virtqueue_kick(sq->vq); - /* Don't wait up for transmitted skbs to be freed. */ - skb_orphan(skb); - nf_reset(skb); - /* Apparently nice girls don't return TX_BUSY; stop the queue * before it gets out of hand. Naturally, this wastes entries. */ if (sq->vq->num_free < 2+MAX_SKB_FRAGS) { netif_stop_subqueue(dev, qnum); if (unlikely(!virtqueue_enable_cb_delayed(sq->vq))) { /* More just got used, free them then recheck. */ - free_old...
2014 Oct 14
4
[PATCH RFC] virtio_net: enable tx interrupt
...err = xmit_skb(sq, skb); @@ -930,22 +969,20 @@ static netdev_tx_t start_xmit(struct sk_buff *skb, struct net_device *dev) } virtqueue_kick(sq->vq); - /* Don't wait up for transmitted skbs to be freed. */ - skb_orphan(skb); - nf_reset(skb); - /* Apparently nice girls don't return TX_BUSY; stop the queue * before it gets out of hand. Naturally, this wastes entries. */ if (sq->vq->num_free < 2+MAX_SKB_FRAGS) { netif_stop_subqueue(dev, qnum); if (unlikely(!virtqueue_enable_cb_delayed(sq->vq))) { /* More just got used, free them then recheck. */ - free_old...
2014 Oct 15
1
[PATCH RFC v2 1/3] virtio_net: enable tx interrupt
...*/ err = xmit_skb(sq, skb); @@ -940,27 +983,25 @@ static netdev_tx_t start_xmit(struct sk_buff *skb, struct net_device *dev) return NETDEV_TX_OK; } - /* Don't wait up for transmitted skbs to be freed. */ - skb_orphan(skb); - nf_reset(skb); - /* Apparently nice girls don't return TX_BUSY; stop the queue * before it gets out of hand. Naturally, this wastes entries. */ if (sq->vq->num_free < 2+MAX_SKB_FRAGS) { netif_stop_subqueue(dev, qnum); - if (unlikely(!virtqueue_enable_cb_delayed(sq->vq))) { - /* More just got used, free them then recheck. */ - free_old...