]> xenbits.xensource.com Git - people/ssmith/netchannel2-pvops.git/commitdiff
linux/netback: unmap tx ring gref when mapping of rx ring gref failed
authorJan Beulich <jbeulich@novell.com>
Fri, 6 Mar 2009 08:29:31 +0000 (08:29 +0000)
committerJeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Mon, 29 Jun 2009 20:39:37 +0000 (13:39 -0700)
[ijc-ported from linux-2.6.18-xen.hg 782:51decc39e5e7]
Signed-off-by: Jan Beulich <jbeulich@novell.com>
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
drivers/xen/netback/interface.c

index d184ad70cd84a2e926d04b36194b1e5ff59adf4a..f3d9ea12a81cce11f78eb1cd6a87fe88d6899f45 100644 (file)
@@ -222,6 +222,12 @@ static int map_frontend_pages(
                BUG();
 
        if (op.status) {
+               struct gnttab_unmap_grant_ref unop;
+
+               gnttab_set_unmap_op(&unop,
+                                   (unsigned long)netif->tx_comms_area->addr,
+                                   GNTMAP_host_map, netif->tx_shmem_handle);
+               HYPERVISOR_grant_table_op(GNTTABOP_unmap_grant_ref, &unop, 1);
                DPRINTK(" Gnttab failure mapping rx_ring_ref!\n");
                return op.status;
        }