WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

[Xen-devel] drivers/net/xen-netfront.c: bogus code

To: Jeremy Fitzhardinge <jeremy@xxxxxxxxxxxxx>, Chris Wright <chrisw@xxxxxxxxxxxx>, Jeff Garzik <jeff@xxxxxxxxxx>
Subject: [Xen-devel] drivers/net/xen-netfront.c: bogus code
From: Adrian Bunk <bunk@xxxxxxxxx>
Date: Mon, 23 Jul 2007 01:26:18 +0200
Cc: netdev@xxxxxxxxxxxxxxx, xen-devel@xxxxxxxxxxxxxxxxxxx, linux-kernel@xxxxxxxxxxxxxxx
Delivery-date: Tue, 24 Jul 2007 09:01:40 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mutt/1.5.16 (2007-06-11)
The Coverity checker spotted the following bogus code
in drivers/net/xen-netfront.c:

<--  snip  -->

...
static void xennet_alloc_rx_buffers(struct net_device *dev)
{
...
        for (nr_flips = i = 0; ; i++) {
                skb = __skb_dequeue(&np->rx_batch);
                if (skb == NULL)
                        break;

                skb->dev = dev;

                id = xennet_rxidx(req_prod + i);

                BUG_ON(np->rx_skbs[id]);
                np->rx_skbs[id] = skb;

                ref = gnttab_claim_grant_reference(&np->gref_rx_head);
                BUG_ON((signed short)ref < 0);
                np->grant_rx_ref[id] = ref;

                pfn = page_to_pfn(skb_shinfo(skb)->frags[0].page);
                vaddr = page_address(skb_shinfo(skb)->frags[0].page);

                req = RING_GET_REQUEST(&np->rx, req_prod + i);
                gnttab_grant_foreign_access_ref(ref,
                                                np->xbdev->otherend_id,
                                                pfn_to_mfn(pfn),
                                                0);

                req->id = id;
                req->gref = ref;
        }

        if (nr_flips != 0) {
...

<--  snip  -->

Note that "nr_flips" is always 0 in the last line.

cu
Adrian

-- 

       "Is there not promise of rain?" Ling Tan asked suddenly out
        of the darkness. There had been need of rain for many days.
       "Only a promise," Lao Er said.
                                       Pearl S. Buck - Dragon Seed


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

<Prev in Thread] Current Thread [Next in Thread>