Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 12 Jan 2009 11:47:24 +0000 (UTC)
From:      Ulf Lilleengen <lulf@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject:   svn commit: r187095 - projects/gvinum/sys/geom/vinum
Message-ID:  <200901121147.n0CBlOSQ065176@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: lulf
Date: Mon Jan 12 11:47:24 2009
New Revision: 187095
URL: http://svn.freebsd.org/changeset/base/187095

Log:
  - Add version checks to the code to allow it to be more easily tested on older
    FreeBSD versions.
  - Add missing locking of hostname_mtx that was added to HEAD.

Modified:
  projects/gvinum/sys/geom/vinum/geom_vinum.c
  projects/gvinum/sys/geom/vinum/geom_vinum_create.c
  projects/gvinum/sys/geom/vinum/geom_vinum_drive.c

Modified: projects/gvinum/sys/geom/vinum/geom_vinum.c
==============================================================================
--- projects/gvinum/sys/geom/vinum/geom_vinum.c	Mon Jan 12 11:24:32 2009	(r187094)
+++ projects/gvinum/sys/geom/vinum/geom_vinum.c	Mon Jan 12 11:47:24 2009	(r187095)
@@ -177,7 +177,11 @@ gv_init(struct g_class *mp)
 	TAILQ_INIT(&sc->equeue);
 	mtx_init(&sc->config_mtx, "gv_config", NULL, MTX_DEF);
 	mtx_init(&sc->queue_mtx, "gv_queue", NULL, MTX_DEF);
+#if __FreeBSD_version >= 800002
 	kproc_create(gv_worker, sc, NULL, 0, 0, "gv_worker");
+#else
+	kthread_create(gv_worker, sc, NULL, 0, 0, "gv_worker");
+#endif
 }
 
 static int
@@ -961,7 +965,11 @@ gv_worker(void *arg)
 				mtx_destroy(&sc->queue_mtx);
 				g_free(sc->bqueue);
 				g_free(sc);
+#if __FreeBSD_version >= 800002
 				kproc_exit(ENXIO);
+#else
+				kthread_exit(ENXIO);
+#endif
 				break;			/* not reached */
 
 			default:

Modified: projects/gvinum/sys/geom/vinum/geom_vinum_create.c
==============================================================================
--- projects/gvinum/sys/geom/vinum/geom_vinum_create.c	Mon Jan 12 11:24:32 2009	(r187094)
+++ projects/gvinum/sys/geom/vinum/geom_vinum_create.c	Mon Jan 12 11:47:24 2009	(r187095)
@@ -32,6 +32,9 @@
 #include <sys/kernel.h>
 #include <sys/malloc.h>
 #include <sys/systm.h>
+#if __FreeBSD_version >= 800044
+#include <sys/vimage.h>
+#endif
 
 #include <geom/geom.h>
 #include <geom/vinum/geom_vinum_var.h>
@@ -152,7 +155,13 @@ gv_create_drive(struct gv_softc *sc, str
 		hdr = g_malloc(sizeof(*hdr), M_WAITOK | M_ZERO);
 		hdr->magic = GV_MAGIC;
 		hdr->config_length = GV_CFG_LEN;
+#if __FreeBSD_version >= 800044
+		mtx_lock(&hostname_mtx);
+		bcopy(G_hostname, hdr->label.sysname, GV_HOSTNAME_LEN);
+		mtx_unlock(&hostname_mtx);
+#else
 		bcopy(hostname, hdr->label.sysname, GV_HOSTNAME_LEN);
+#endif
 		strlcpy(hdr->label.name, d->name, sizeof(hdr->label.name));
 		microtime(&hdr->label.date_of_birth);
 		d->hdr = hdr;

Modified: projects/gvinum/sys/geom/vinum/geom_vinum_drive.c
==============================================================================
--- projects/gvinum/sys/geom/vinum/geom_vinum_drive.c	Mon Jan 12 11:24:32 2009	(r187094)
+++ projects/gvinum/sys/geom/vinum/geom_vinum_drive.c	Mon Jan 12 11:47:24 2009	(r187095)
@@ -30,7 +30,9 @@ __FBSDID("$FreeBSD$");
 #include <sys/endian.h>
 #include <sys/malloc.h>
 #include <sys/systm.h>
+#if __FreeBSD_version >= 800044
 #include <sys/vimage.h>
+#endif
 
 #include <geom/geom.h>
 #include <geom/vinum/geom_vinum_var.h>



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