3.5.7.14 -stable review patch.  If anyone has any objections, please let me 
know.

------------------

From: Wei Liu <[email protected]>

commit 7158ff6d0c6aa3724fb51c6c11143d31e166eb1f upstream.

This function is in fact counting the ring slots required for responses.
Separate the concepts of ring slots and skb frags make the code clearer, as
now netfront and netback can have different MAX_SKB_FRAGS, slot and frag are
not mapped 1:1 any more.

Signed-off-by: Wei Liu <[email protected]>
Reviewed-by: David Vrabel <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
Signed-off-by: Luis Henriques <[email protected]>
---
 drivers/net/xen-netfront.c | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/drivers/net/xen-netfront.c b/drivers/net/xen-netfront.c
index 0ab0da4..9f09606 100644
--- a/drivers/net/xen-netfront.c
+++ b/drivers/net/xen-netfront.c
@@ -656,7 +656,7 @@ static int xennet_get_responses(struct netfront_info *np,
        struct sk_buff *skb = xennet_get_rx_skb(np, cons);
        grant_ref_t ref = xennet_get_rx_ref(np, cons);
        int max = MAX_SKB_FRAGS + (rx->status <= RX_COPY_THRESHOLD);
-       int frags = 1;
+       int slots = 1;
        int err = 0;
        unsigned long ret;
 
@@ -700,27 +700,27 @@ next:
                if (!(rx->flags & XEN_NETRXF_more_data))
                        break;
 
-               if (cons + frags == rp) {
+               if (cons + slots == rp) {
                        if (net_ratelimit())
-                               dev_warn(dev, "Need more frags\n");
+                               dev_warn(dev, "Need more slots\n");
                        err = -ENOENT;
                        break;
                }
 
-               rx = RING_GET_RESPONSE(&np->rx, cons + frags);
-               skb = xennet_get_rx_skb(np, cons + frags);
-               ref = xennet_get_rx_ref(np, cons + frags);
-               frags++;
+               rx = RING_GET_RESPONSE(&np->rx, cons + slots);
+               skb = xennet_get_rx_skb(np, cons + slots);
+               ref = xennet_get_rx_ref(np, cons + slots);
+               slots++;
        }
 
-       if (unlikely(frags > max)) {
+       if (unlikely(slots > max)) {
                if (net_ratelimit())
                        dev_warn(dev, "Too many frags\n");
                err = -E2BIG;
        }
 
        if (unlikely(err))
-               np->rx.rsp_cons = cons + frags;
+               np->rx.rsp_cons = cons + slots;
 
        return err;
 }
-- 
1.8.1.2

--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to