Message ID | 20120327172809.C52572900384@tardy |
---|---|
State | Accepted, archived |
Delegated to: | David Miller |
Headers | show |
On Tue, 27 Mar 2012 10:28:09 -0700 (PDT), raj@tardy.cup.hp.com (Rick Jones) wrote: > From: Rick Jones <rick.jones2@hp.com> > > While it is desirable to rate limit certain messages, it is not > desirable to rate limit the incrementing of counters associated > with those messages. > > Signed-off-by: Rick Jones <rick.jones2@hp.com> Acked-by: Rusty Russell <rusty@rustcorp.com.au> Thanks! Rusty. > diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c > index 019da01..4de2760 100644 > --- a/drivers/net/virtio_net.c > +++ b/drivers/net/virtio_net.c > @@ -625,12 +625,13 @@ static netdev_tx_t start_xmit(struct sk_buff *skb, struct net_device *dev) > > /* This can happen with OOM and indirect buffers. */ > if (unlikely(capacity < 0)) { > - if (net_ratelimit()) { > - if (likely(capacity == -ENOMEM)) { > + if (likely(capacity == -ENOMEM)) { > + if (net_ratelimit()) { > dev_warn(&dev->dev, > "TX queue failure: out of memory\n"); > } else { > - dev->stats.tx_fifo_errors++; > + dev->stats.tx_fifo_errors++; > + if (net_ratelimit()) > dev_warn(&dev->dev, > "Unexpected TX queue failure: %d\n", > capacity); >
On Tue, Mar 27, 2012 at 10:28:09AM -0700, Rick Jones wrote: > From: Rick Jones <rick.jones2@hp.com> > > While it is desirable to rate limit certain messages, it is not > desirable to rate limit the incrementing of counters associated > with those messages. > > Signed-off-by: Rick Jones <rick.jones2@hp.com> Acked-by: Michael S. Tsirkin <mst@redhat.com> Dave, can you apply pls? Thanks! > --- > > Compiled, and run briefly in a 1 vCPU guest under a netperf workload. > > > diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c > index 019da01..4de2760 100644 > --- a/drivers/net/virtio_net.c > +++ b/drivers/net/virtio_net.c > @@ -625,12 +625,13 @@ static netdev_tx_t start_xmit(struct sk_buff *skb, struct net_device *dev) > > /* This can happen with OOM and indirect buffers. */ > if (unlikely(capacity < 0)) { > - if (net_ratelimit()) { > - if (likely(capacity == -ENOMEM)) { > + if (likely(capacity == -ENOMEM)) { > + if (net_ratelimit()) { > dev_warn(&dev->dev, > "TX queue failure: out of memory\n"); > } else { > - dev->stats.tx_fifo_errors++; > + dev->stats.tx_fifo_errors++; > + if (net_ratelimit()) > dev_warn(&dev->dev, > "Unexpected TX queue failure: %d\n", > capacity); -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
From: "Michael S. Tsirkin" <mst@redhat.com> Date: Wed, 28 Mar 2012 10:30:46 +0200 > On Tue, Mar 27, 2012 at 10:28:09AM -0700, Rick Jones wrote: >> From: Rick Jones <rick.jones2@hp.com> >> >> While it is desirable to rate limit certain messages, it is not >> desirable to rate limit the incrementing of counters associated >> with those messages. >> >> Signed-off-by: Rick Jones <rick.jones2@hp.com> > > > Acked-by: Michael S. Tsirkin <mst@redhat.com> > > Dave, can you apply pls? Thanks! Done. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c index 019da01..4de2760 100644 --- a/drivers/net/virtio_net.c +++ b/drivers/net/virtio_net.c @@ -625,12 +625,13 @@ static netdev_tx_t start_xmit(struct sk_buff *skb, struct net_device *dev) /* This can happen with OOM and indirect buffers. */ if (unlikely(capacity < 0)) { - if (net_ratelimit()) { - if (likely(capacity == -ENOMEM)) { + if (likely(capacity == -ENOMEM)) { + if (net_ratelimit()) { dev_warn(&dev->dev, "TX queue failure: out of memory\n"); } else { - dev->stats.tx_fifo_errors++; + dev->stats.tx_fifo_errors++; + if (net_ratelimit()) dev_warn(&dev->dev, "Unexpected TX queue failure: %d\n", capacity);