summaryrefslogtreecommitdiffstats
path: root/sys/geom/geom_gpt.c
diff options
context:
space:
mode:
authorphk <phk@FreeBSD.org>2002-09-27 21:37:11 +0000
committerphk <phk@FreeBSD.org>2002-09-27 21:37:11 +0000
commitbd4b8491399a8df6b7aea34dc30845289f3bc0f8 (patch)
tree02c4bf4995be772bfd0fd8a2f45388a5e079ecb5 /sys/geom/geom_gpt.c
parent577f8b1e73497700b0f10db6cf84bd6db96cd62c (diff)
downloadFreeBSD-src-bd4b8491399a8df6b7aea34dc30845289f3bc0f8.zip
FreeBSD-src-bd4b8491399a8df6b7aea34dc30845289f3bc0f8.tar.gz
Add the new g_slice_config() call, which can add/delete/change a slice,
with support for trying, doing and forcing. This will eventually replace g_slice_addslice() which gets changed from grabbing topology to requing it in this commit as well. Sponsored by: DARPA & NAI Labs.
Diffstat (limited to 'sys/geom/geom_gpt.c')
-rw-r--r--sys/geom/geom_gpt.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/geom/geom_gpt.c b/sys/geom/geom_gpt.c
index 99f67a4..3799a8b 100644
--- a/sys/geom/geom_gpt.c
+++ b/sys/geom/geom_gpt.c
@@ -220,9 +220,11 @@ g_gpt_taste(struct g_class *mp, struct g_provider *pp, int insist)
bcopy(ent, gs->part[i], hdr->hdr_entsz);
ps = (!memcmp(&ent->ent_type, &freebsd, sizeof(freebsd)))
? 's' : 'p';
+ g_topology_lock();
(void)g_slice_addslice(gp, i, ent->ent_lba_start * secsz,
(ent->ent_lba_end - ent->ent_lba_start + 1ULL) * secsz,
"%s%c%d", gp->name, ps, i + 1);
+ g_topology_unlock();
npart++;
}
OpenPOWER on IntegriCloud