Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 28 Jan 2009 20:33:18 +0100
From:      Roman Divacky <rdivacky@freebsd.org>
To:        current@freebsd.org
Cc:        scottl@freebsd.org
Subject:   sysctl question
Message-ID:  <20090128193318.GA42071@freebsd.org>

next in thread | raw e-mail | index | archive | help

--pf9I7BMVVzbSWLtt
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

hi

we dont need Giant to be held for sysctl_ctx_init/SYSCTL_ADD_*, right?

if that's true, is this ok for commit?

Index: cam/scsi/scsi_da.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- cam/scsi/scsi_da.c	(revision 187838)
+++ cam/scsi/scsi_da.c	(working copy)
@@ -1086,7 +1086,6 @@
 	snprintf(tmpstr, sizeof(tmpstr), "CAM DA unit %d", periph->unit_number);
 	snprintf(tmpstr2, sizeof(tmpstr2), "%d", periph->unit_number);
=20
-	mtx_lock(&Giant);
 	sysctl_ctx_init(&softc->sysctl_ctx);
 	softc->flags |=3D DA_FLAG_SCTX_INIT;
 	softc->sysctl_tree =3D SYSCTL_ADD_NODE(&softc->sysctl_ctx,
@@ -1094,7 +1093,6 @@
 		CTLFLAG_RD, 0, tmpstr);
 	if (softc->sysctl_tree =3D=3D NULL) {
 		printf("dasysctlinit: unable to allocate sysctl tree\n");
-		mtx_unlock(&Giant);
 		cam_periph_release(periph);
 		return;
 	}
@@ -1108,7 +1106,6 @@
 		&softc->minimum_cmd_size, 0, dacmdsizesysctl, "I",
 		"Minimum CDB size");
=20
-	mtx_unlock(&Giant);
 	cam_periph_release(periph);
 }
=20
Index: cam/scsi/scsi_cd.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- cam/scsi/scsi_cd.c	(revision 187838)
+++ cam/scsi/scsi_cd.c	(working copy)
@@ -555,8 +555,6 @@
 	snprintf(tmpstr, sizeof(tmpstr), "CAM CD unit %d", periph->unit_number);
 	snprintf(tmpstr2, sizeof(tmpstr2), "%d", periph->unit_number);
=20
-	mtx_lock(&Giant);
-
 	sysctl_ctx_init(&softc->sysctl_ctx);
 	softc->flags |=3D CD_FLAG_SCTX_INIT;
 	softc->sysctl_tree =3D SYSCTL_ADD_NODE(&softc->sysctl_ctx,
@@ -565,7 +563,6 @@
=20
 	if (softc->sysctl_tree =3D=3D NULL) {
 		printf("cdsysctlinit: unable to allocate sysctl tree\n");
-		mtx_unlock(&Giant);
 		cam_periph_release(periph);
 		return;
 	}
@@ -579,7 +576,6 @@
 		&softc->minimum_command_size, 0, cdcmdsizesysctl, "I",
 		"Minimum CDB size");
=20
-	mtx_unlock(&Giant);
 	cam_periph_release(periph);
 }
=20

thnx!

   roman

--pf9I7BMVVzbSWLtt
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.10 (FreeBSD)

iEYEARECAAYFAkmAsv0ACgkQLVEj6D3CBExieQCfY6d50qVGVfHuk6vL8Fwx5Vl5
ghEAnjDwf2i5IrVzoc9aPlOp7E2ta35Y
=DA7O
-----END PGP SIGNATURE-----

--pf9I7BMVVzbSWLtt--



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