[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH] Mini-OS: netfront: fix off-by-one error introduced in 7c8f3483
7c8f3483 introduced a break within a loop in netfront.c such that cons and nr_consumed were no longer always being incremented. The offset at cons will be processed multiple times with the break in place. Remove the break and re-add "some !=0" in the loop for HAVE_LIBC. Signed-off-by: Sarah Newman <srn@xxxxxxxxx> --- netfront.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/netfront.c b/netfront.c index 0eca5b5..557e8c4 100644 --- a/netfront.c +++ b/netfront.c @@ -108,8 +108,10 @@ moretodo: #ifdef HAVE_LIBC some = 0; -#endif + for (cons = dev->rx.rsp_cons; (cons != rp) && !some; nr_consumed++, cons++) +#else for (cons = dev->rx.rsp_cons; cons != rp; nr_consumed++, cons++) +#endif { struct net_buffer* buf; unsigned char* page; @@ -135,7 +137,6 @@ moretodo: memcpy(dev->data, page+rx->offset, len); dev->rlen = len; some = 1; - break; } else #endif dev->netif_rx(page+rx->offset,rx->status); -- 1.9.1 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |