Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 3 Jun 2009 23:58:25 +0000 (UTC)
From:      Kip Macy <kmacy@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-user@freebsd.org
Subject:   svn commit: r193416 - user/kmacy/releng_7_2_fcs/sys/dev/cxgb
Message-ID:  <200906032358.n53NwPEO071029@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: kmacy
Date: Wed Jun  3 23:58:24 2009
New Revision: 193416
URL: http://svn.freebsd.org/changeset/base/193416

Log:
  don't do teardown if initialization never happened

Modified:
  user/kmacy/releng_7_2_fcs/sys/dev/cxgb/cxgb_main.c

Modified: user/kmacy/releng_7_2_fcs/sys/dev/cxgb/cxgb_main.c
==============================================================================
--- user/kmacy/releng_7_2_fcs/sys/dev/cxgb/cxgb_main.c	Wed Jun  3 23:47:43 2009	(r193415)
+++ user/kmacy/releng_7_2_fcs/sys/dev/cxgb/cxgb_main.c	Wed Jun  3 23:58:24 2009	(r193416)
@@ -677,7 +677,8 @@ cxgb_free(struct adapter *sc)
 		    sc->msix_regs_res);
 	}
 
-	t3_free_sge_resources(sc);
+	if (sc->flags & FULL_INIT_DONE)
+		t3_free_sge_resources(sc);
 	t3_sge_deinit_sw(sc);
 
 	/*
@@ -1858,10 +1859,12 @@ cxgb_first_init(struct adapter *sc)
 	setup_rss(sc);
 	t3_add_configured_sysctls(sc);
 	ADAPTER_LOCK(sc);
-	sc->flags &= ~INIT_IN_PROGRESS;
 	sc->flags |= FULL_INIT_DONE;
 	ADAPTER_UNLOCK(sc);
 out:
+	ADAPTER_LOCK(sc);
+	sc->flags &= ~INIT_IN_PROGRESS;
+	ADAPTER_UNLOCK(sc);
 	return (err);
 }
 
@@ -1906,10 +1909,12 @@ cxgb_intr_init(struct adapter *sc)
 	}
 
 	ADAPTER_LOCK(sc);
-	sc->flags &= ~INIT_IN_PROGRESS;
 	sc->flags |= INTR_INIT_DONE;
 	ADAPTER_UNLOCK(sc);
 out:
+	ADAPTER_LOCK(sc);
+	sc->flags &= ~INIT_IN_PROGRESS;
+	ADAPTER_UNLOCK(sc);
 	return (err);
 }
 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200906032358.n53NwPEO071029>