diff options
author | wpaul <wpaul@FreeBSD.org> | 2000-12-04 22:46:50 +0000 |
---|---|---|
committer | wpaul <wpaul@FreeBSD.org> | 2000-12-04 22:46:50 +0000 |
commit | 9e208c7442e565fc1de970045410945e52702467 (patch) | |
tree | 3933565b0c0070018517c21c29b3ccc39d115ccb /sys/pci/if_sis.c | |
parent | e01a4c0fd9aff88ae8d9b70d8f82aaf56c9c9116 (diff) | |
download | FreeBSD-src-9e208c7442e565fc1de970045410945e52702467.zip FreeBSD-src-9e208c7442e565fc1de970045410945e52702467.tar.gz |
Initialize/grab the mutex earlier in the attach phase, so that
bailing out to the fail: label where we release/destroy the mutex
will work without exploding.
Diffstat (limited to 'sys/pci/if_sis.c')
-rw-r--r-- | sys/pci/if_sis.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/pci/if_sis.c b/sys/pci/if_sis.c index d59c99c..8f9b4d6 100644 --- a/sys/pci/if_sis.c +++ b/sys/pci/if_sis.c @@ -638,6 +638,9 @@ static int sis_attach(dev) unit = device_get_unit(dev); bzero(sc, sizeof(struct sis_softc)); + mtx_init(&sc->sis_mtx, device_get_nameunit(dev), MTX_DEF); + SIS_LOCK(sc); + if (pci_get_device(dev) == SIS_DEVICEID_900) sc->sis_type = SIS_TYPE_900; if (pci_get_device(dev) == SIS_DEVICEID_7016) @@ -731,9 +734,6 @@ static int sis_attach(dev) goto fail; } - mtx_init(&sc->sis_mtx, device_get_nameunit(dev), MTX_DEF); - SIS_LOCK(sc); - /* Reset the adapter. */ sis_reset(sc); |