View | Details | Raw Unified | Return to bug 35178 | Differences between
and this patch

Collapse All | Expand All

(-)linux-3.10.11.orig/drivers/net/xen-netback/common.h (+1 lines)
 Lines 66-71    Link Here 
66
	/* The shared rings and indexes. */
66
	/* The shared rings and indexes. */
67
	struct xen_netif_tx_back_ring tx;
67
	struct xen_netif_tx_back_ring tx;
68
	struct xen_netif_rx_back_ring rx;
68
	struct xen_netif_rx_back_ring rx;
69
	bool mapped;
69
70
70
	/* Frontend feature information. */
71
	/* Frontend feature information. */
71
	u8 can_sg:1;
72
	u8 can_sg:1;
(-)linux-3.10.11.orig/drivers/net/xen-netback/interface.c (+1 lines)
 Lines 271-276    Link Here 
271
	vif->dev = dev;
271
	vif->dev = dev;
272
	INIT_LIST_HEAD(&vif->schedule_list);
272
	INIT_LIST_HEAD(&vif->schedule_list);
273
	INIT_LIST_HEAD(&vif->notify_list);
273
	INIT_LIST_HEAD(&vif->notify_list);
274
	vif->mapped = false;
274
275
275
	vif->credit_bytes = vif->remaining_credit = ~0UL;
276
	vif->credit_bytes = vif->remaining_credit = ~0UL;
276
	vif->credit_usec  = 0UL;
277
	vif->credit_usec  = 0UL;
(-)linux-3.10.11.orig/drivers/net/xen-netback/netback.c (+10 lines)
 Lines 720-725    Link Here 
720
		vif = netdev_priv(skb->dev);
720
		vif = netdev_priv(skb->dev);
721
		nr_frags = skb_shinfo(skb)->nr_frags;
721
		nr_frags = skb_shinfo(skb)->nr_frags;
722
722
723
		if (!vif->mapped) {
724
			printk(KERN_ERR "UniDEBUG vif->mapped is false\n");
725
			dev_kfree_skb(skb);
726
			xenvif_put(vif);
727
			continue;
728
		}
729
723
		sco = (struct skb_cb_overlay *)skb->cb;
730
		sco = (struct skb_cb_overlay *)skb->cb;
724
		sco->meta_slots_used = netbk_gop_skb(skb, &npo);
731
		sco->meta_slots_used = netbk_gop_skb(skb, &npo);
725
732
 Lines 1864-1869    Link Here 
1864
1870
1865
void xen_netbk_unmap_frontend_rings(struct xenvif *vif)
1871
void xen_netbk_unmap_frontend_rings(struct xenvif *vif)
1866
{
1872
{
1873
	vif->mapped = false;
1874
1867
	if (vif->tx.sring)
1875
	if (vif->tx.sring)
1868
		xenbus_unmap_ring_vfree(xenvif_to_xenbus_device(vif),
1876
		xenbus_unmap_ring_vfree(xenvif_to_xenbus_device(vif),
1869
					vif->tx.sring);
1877
					vif->tx.sring);
 Lines 1899-1904    Link Here 
1899
	BACK_RING_INIT(&vif->rx, rxs, PAGE_SIZE);
1908
	BACK_RING_INIT(&vif->rx, rxs, PAGE_SIZE);
1900
1909
1901
	vif->rx_req_cons_peek = 0;
1910
	vif->rx_req_cons_peek = 0;
1911
	vif->mapped = true;
1902
1912
1903
	return 0;
1913
	return 0;
1904
1914

Return to bug 35178