Displaying 20 results from an estimated 112 matches for "netif_stop_queu".
Did you mean:
netif_stop_queue
2015 Mar 15
2
virtio-net: tx queue was stopped
...39;t you Cc all maintainers on this email?
Pls check the file MAINTAINERS for the full list.
I added Cc for now.
>
> static netdev_tx_t start_xmit(struct sk_buff *skb, struct net_device *dev)
> {
> ... ...
>
>
> capacity = 10; //########## test code : force to call netif_stop_queue
>
> if (capacity < 2+MAX_SKB_FRAGS) {
> netif_stop_queue(dev);
So you changed code to make it think we are out of capacity, now it
stops the queue.
>
> if (unlikely(!virtqueue_enable_cb_delayed(vi->svq))) {
>...
2015 Mar 15
2
virtio-net: tx queue was stopped
...39;t you Cc all maintainers on this email?
Pls check the file MAINTAINERS for the full list.
I added Cc for now.
>
> static netdev_tx_t start_xmit(struct sk_buff *skb, struct net_device *dev)
> {
> ... ...
>
>
> capacity = 10; //########## test code : force to call netif_stop_queue
>
> if (capacity < 2+MAX_SKB_FRAGS) {
> netif_stop_queue(dev);
So you changed code to make it think we are out of capacity, now it
stops the queue.
>
> if (unlikely(!virtqueue_enable_cb_delayed(vi->svq))) {
>...
2015 Mar 16
1
virtio-net: tx queue was stopped
...heck the file MAINTAINERS for the full list.
> I added Cc for now.
>
Thank you.
>>
>> static netdev_tx_t start_xmit(struct sk_buff *skb, struct net_device *dev)
>> {
>> ... ...
>>
>>
>> capacity = 10; //########## test code : force to call netif_stop_queue
>>
>> if (capacity < 2+MAX_SKB_FRAGS) {
>> netif_stop_queue(dev);
>
> So you changed code to make it think we are out of capacity, now it
> stops the queue.
>
>>
>> if (unlikely(!virtqueue_enable_cb_delayed(vi-&...
2015 Mar 16
1
virtio-net: tx queue was stopped
...heck the file MAINTAINERS for the full list.
> I added Cc for now.
>
Thank you.
>>
>> static netdev_tx_t start_xmit(struct sk_buff *skb, struct net_device *dev)
>> {
>> ... ...
>>
>>
>> capacity = 10; //########## test code : force to call netif_stop_queue
>>
>> if (capacity < 2+MAX_SKB_FRAGS) {
>> netif_stop_queue(dev);
>
> So you changed code to make it think we are out of capacity, now it
> stops the queue.
>
>>
>> if (unlikely(!virtqueue_enable_cb_delayed(vi-&...
2015 Mar 16
0
virtio-net: tx queue was stopped
...ed Cc for now.
> >
>
> Thank you.
>
> >>
> >> static netdev_tx_t start_xmit(struct sk_buff *skb, struct net_device *dev)
> >> {
> >> ... ...
> >>
> >>
> >> capacity = 10; //########## test code : force to call netif_stop_queue
> >>
> >> if (capacity < 2+MAX_SKB_FRAGS) {
> >> netif_stop_queue(dev);
> >
> > So you changed code to make it think we are out of capacity, now it
> > stops the queue.
> >
> >>
> >> i...
2015 Mar 16
0
virtio-net: tx queue was stopped
...ed Cc for now.
> >
>
> Thank you.
>
> >>
> >> static netdev_tx_t start_xmit(struct sk_buff *skb, struct net_device *dev)
> >> {
> >> ... ...
> >>
> >>
> >> capacity = 10; //########## test code : force to call netif_stop_queue
> >>
> >> if (capacity < 2+MAX_SKB_FRAGS) {
> >> netif_stop_queue(dev);
> >
> > So you changed code to make it think we are out of capacity, now it
> > stops the queue.
> >
> >>
> >> i...
2010 Jun 10
1
[PATCH for-2.6.35] virtio_net: fix oom handling on tx
...ice *dev)
struct virtnet_info *vi = netdev_priv(dev);
int capacity;
-again:
/* Free up any pending old buffers before queueing new ones. */
free_old_xmit_skbs(vi);
@@ -572,12 +571,14 @@ again:
/* This can happen with OOM and indirect buffers. */
if (unlikely(capacity < 0)) {
- netif_stop_queue(dev);
- dev_warn(&dev->dev, "Unexpected full queue\n");
- if (unlikely(!virtqueue_enable_cb(vi->svq))) {
- virtqueue_disable_cb(vi->svq);
- netif_start_queue(dev);
- goto again;
+ if (net_ratelimit()) {
+ if (likely(capacity == -ENOMEM))
+ dev_warn(&dev->...
2010 Jun 10
1
[PATCH for-2.6.35] virtio_net: fix oom handling on tx
...ice *dev)
struct virtnet_info *vi = netdev_priv(dev);
int capacity;
-again:
/* Free up any pending old buffers before queueing new ones. */
free_old_xmit_skbs(vi);
@@ -572,12 +571,14 @@ again:
/* This can happen with OOM and indirect buffers. */
if (unlikely(capacity < 0)) {
- netif_stop_queue(dev);
- dev_warn(&dev->dev, "Unexpected full queue\n");
- if (unlikely(!virtqueue_enable_cb(vi->svq))) {
- virtqueue_disable_cb(vi->svq);
- netif_start_queue(dev);
- goto again;
+ if (net_ratelimit()) {
+ if (likely(capacity == -ENOMEM))
+ dev_warn(&dev->...
2008 Apr 18
0
virtio: wean net driver off NETDEV_TX_BUSY
...irtnet_info *vi = netdev_priv(dev);
again:
/* Free up any pending old buffers before queueing new ones. */
free_old_xmit_skbs(vi);
- err = vi->svq->vq_ops->add_buf(vi->svq, sg, num, 0, skb);
- if (err) {
- pr_debug("%s: virtio not prepared to send\n", dev->name);
- netif_stop_queue(dev);
- /* Activate callback for using skbs: if this returns false it
- * means some were used in the meantime. */
- if (unlikely(!vi->svq->vq_ops->enable_cb(vi->svq))) {
- vi->svq->vq_ops->disable_cb(vi->svq);
- netif_start_queue(dev);
- goto again;
- }
- __s...
2008 Apr 18
0
virtio: wean net driver off NETDEV_TX_BUSY
...irtnet_info *vi = netdev_priv(dev);
again:
/* Free up any pending old buffers before queueing new ones. */
free_old_xmit_skbs(vi);
- err = vi->svq->vq_ops->add_buf(vi->svq, sg, num, 0, skb);
- if (err) {
- pr_debug("%s: virtio not prepared to send\n", dev->name);
- netif_stop_queue(dev);
- /* Activate callback for using skbs: if this returns false it
- * means some were used in the meantime. */
- if (unlikely(!vi->svq->vq_ops->enable_cb(vi->svq))) {
- vi->svq->vq_ops->disable_cb(vi->svq);
- netif_start_queue(dev);
- goto again;
- }
- __s...
2011 Apr 05
3
[PATCH] staging: hv: Fix GARP not sent after Quick Migration
...29,7 +231,8 @@ static void netvsc_linkstatus_callback(struct hv_device *device_obj,
if (status == 1) {
netif_carrier_on(net);
netif_wake_queue(net);
- netif_notify_peers(net);
+ ndev_ctx = netdev_priv(net);
+ schedule_work(&ndev_ctx->work);
} else {
netif_carrier_off(net);
netif_stop_queue(net);
@@ -328,6 +331,17 @@ static const struct net_device_ops device_ops = {
.ndo_set_mac_address = eth_mac_addr,
};
+static void netvsc_send_garp(struct work_struct *w)
+{
+ struct net_device_context *ndev_ctx;
+ struct net_device *net;
+
+ ndev_ctx = container_of(w, struct net_device_conte...
2011 Apr 05
3
[PATCH] staging: hv: Fix GARP not sent after Quick Migration
...29,7 +231,8 @@ static void netvsc_linkstatus_callback(struct hv_device *device_obj,
if (status == 1) {
netif_carrier_on(net);
netif_wake_queue(net);
- netif_notify_peers(net);
+ ndev_ctx = netdev_priv(net);
+ schedule_work(&ndev_ctx->work);
} else {
netif_carrier_off(net);
netif_stop_queue(net);
@@ -328,6 +331,17 @@ static const struct net_device_ops device_ops = {
.ndo_set_mac_address = eth_mac_addr,
};
+static void netvsc_send_garp(struct work_struct *w)
+{
+ struct net_device_context *ndev_ctx;
+ struct net_device *net;
+
+ ndev_ctx = container_of(w, struct net_device_conte...
2012 Jan 12
9
Re: [PATCH] add netconsole support for xen-netfront
...b)))) {
> - spin_unlock_irq(&np->tx_lock);
> + spin_unlock_irqrestore(&np->tx_lock, flags);
> goto drop;
> }
>
> @@ -574,7 +575,7 @@ static int xennet_start_xmit(struct sk_buff *skb, struct net_device *dev)
> if (!netfront_tx_slot_available(np))
> netif_stop_queue(dev);
>
> - spin_unlock_irq(&np->tx_lock);
> + spin_unlock_irqrestore(&np->tx_lock, flags);
>
> return NETDEV_TX_OK;
>
> @@ -1228,6 +1229,33 @@ static int xennet_set_features(struct net_device *dev,
> return 0;
> }
>
> +static irqreturn_t...
2011 Jun 02
6
[PATCHv2 RFC 0/4] 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.
Warning: untested. Posting now to give people chance to
comment on the API.
Changes from v1:
- fix comment in patch 2 to correct confusion noted by Rusty
- rewrite patch 3 along the lines
2011 Jun 02
6
[PATCHv2 RFC 0/4] 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.
Warning: untested. Posting now to give people chance to
comment on the API.
Changes from v1:
- fix comment in patch 2 to correct confusion noted by Rusty
- rewrite patch 3 along the lines
2008 Apr 28
3
[PATCH 1/4] virtio: wean net driver off NETDEV_TX_BUSY
...irtnet_info *vi = netdev_priv(dev);
again:
/* Free up any pending old buffers before queueing new ones. */
free_old_xmit_skbs(vi);
- err = vi->svq->vq_ops->add_buf(vi->svq, sg, num, 0, skb);
- if (err) {
- pr_debug("%s: virtio not prepared to send\n", dev->name);
- netif_stop_queue(dev);
- /* Activate callback for using skbs: if this returns false it
- * means some were used in the meantime. */
- if (unlikely(!vi->svq->vq_ops->enable_cb(vi->svq))) {
- vi->svq->vq_ops->disable_cb(vi->svq);
- netif_start_queue(dev);
- goto again;
+ /* If we...
2008 Apr 28
3
[PATCH 1/4] virtio: wean net driver off NETDEV_TX_BUSY
...irtnet_info *vi = netdev_priv(dev);
again:
/* Free up any pending old buffers before queueing new ones. */
free_old_xmit_skbs(vi);
- err = vi->svq->vq_ops->add_buf(vi->svq, sg, num, 0, skb);
- if (err) {
- pr_debug("%s: virtio not prepared to send\n", dev->name);
- netif_stop_queue(dev);
- /* Activate callback for using skbs: if this returns false it
- * means some were used in the meantime. */
- if (unlikely(!vi->svq->vq_ops->enable_cb(vi->svq))) {
- vi->svq->vq_ops->disable_cb(vi->svq);
- netif_start_queue(dev);
- goto again;
+ /* If we...
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
2011 Feb 02
0
[PATCH] staging: hv: Enable sending GARP packet after live migration
...rivers/staging/hv/netvsc_drv.c
+++ b/drivers/staging/hv/netvsc_drv.c
@@ -236,6 +236,7 @@ static void netvsc_linkstatus_callback(struct hv_device *device_obj,
if (status == 1) {
netif_carrier_on(net);
netif_wake_queue(net);
+ netif_notify_peers(net);
} else {
netif_carrier_off(net);
netif_stop_queue(net);
--
1.5.5.6