Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/arch/xen/xen Disestablish softint in the error path.



details:   https://anonhg.NetBSD.org/src/rev/e66a992f6dc1
branches:  trunk
changeset: 764428:e66a992f6dc1
user:      jym <jym%NetBSD.org@localhost>
date:      Thu Apr 21 13:06:20 2011 +0000

description:
Disestablish softint in the error path.

diffstat:

 sys/arch/xen/xen/xennetback_xenbus.c |  6 ++++--
 1 files changed, 4 insertions(+), 2 deletions(-)

diffs (27 lines):

diff -r ee4b1bbf1a5c -r e66a992f6dc1 sys/arch/xen/xen/xennetback_xenbus.c
--- a/sys/arch/xen/xen/xennetback_xenbus.c      Thu Apr 21 10:23:50 2011 +0000
+++ b/sys/arch/xen/xen/xennetback_xenbus.c      Thu Apr 21 13:06:20 2011 +0000
@@ -1,4 +1,4 @@
-/*      $NetBSD: xennetback_xenbus.c,v 1.41 2011/04/20 20:32:38 jym Exp $      */
+/*      $NetBSD: xennetback_xenbus.c,v 1.42 2011/04/21 13:06:20 jym Exp $      */
 
 /*
  * Copyright (c) 2006 Manuel Bouyer.
@@ -496,7 +496,7 @@
                if (xneti->xni_tx_ring_va == 0) {
                        xenbus_dev_fatal(xbusd, ENOMEM,
                            "can't get VA for tx ring", xbusd->xbusd_otherend);
-                       break;
+                       goto err0;
                }
                tx_ring = (void *)xneti->xni_tx_ring_va;
                xneti->xni_rx_ring_va = uvm_km_alloc(kernel_map, PAGE_SIZE, 0,
@@ -597,6 +597,8 @@
 err1:
        uvm_km_free(kernel_map, xneti->xni_tx_ring_va,
            PAGE_SIZE, UVM_KMF_VAONLY);
+err0:
+       softint_disestablish(xneti->xni_softintr);
 }
 
 /* lookup a xneti based on domain id and interface handle */



Home | Main Index | Thread Index | Old Index