From owner-svn-src-projects@FreeBSD.ORG Mon Jan 12 11:47:25 2009 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 600B11065674; Mon, 12 Jan 2009 11:47:25 +0000 (UTC) (envelope-from lulf@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 335878FC37; Mon, 12 Jan 2009 11:47:25 +0000 (UTC) (envelope-from lulf@FreeBSD.org) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id n0CBlOeR065179; Mon, 12 Jan 2009 11:47:24 GMT (envelope-from lulf@svn.freebsd.org) Received: (from lulf@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id n0CBlOSQ065176; Mon, 12 Jan 2009 11:47:24 GMT (envelope-from lulf@svn.freebsd.org) Message-Id: <200901121147.n0CBlOSQ065176@svn.freebsd.org> From: Ulf Lilleengen Date: Mon, 12 Jan 2009 11:47:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r187095 - projects/gvinum/sys/geom/vinum X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 12 Jan 2009 11:47:25 -0000 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 #include #include +#if __FreeBSD_version >= 800044 +#include +#endif #include #include @@ -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 #include #include +#if __FreeBSD_version >= 800044 #include +#endif #include #include