summaryrefslogtreecommitdiffstats
path: root/sys/geom/geom_pc98.c
diff options
context:
space:
mode:
authorphk <phk@FreeBSD.org>2002-12-16 23:08:48 +0000
committerphk <phk@FreeBSD.org>2002-12-16 23:08:48 +0000
commit3cf4280261e4479a41062ad7f2038dafb3594041 (patch)
tree53683765dc78acc5e28c69c1323c6d247e1c4ac7 /sys/geom/geom_pc98.c
parent168664d0ec45abb96a9f3ae963ff8f67fb41d190 (diff)
downloadFreeBSD-src-3cf4280261e4479a41062ad7f2038dafb3594041.zip
FreeBSD-src-3cf4280261e4479a41062ad7f2038dafb3594041.tar.gz
Get rid of g_slice_addslice() and use g_slice_config() instead.
Tested with: i386 + src/tools/regression/geom
Diffstat (limited to 'sys/geom/geom_pc98.c')
-rw-r--r--sys/geom/geom_pc98.c15
1 files changed, 6 insertions, 9 deletions
diff --git a/sys/geom/geom_pc98.c b/sys/geom/geom_pc98.c
index 8b3873f..f55b3a3 100644
--- a/sys/geom/geom_pc98.c
+++ b/sys/geom/geom_pc98.c
@@ -152,7 +152,6 @@ g_pc98_taste(struct g_class *mp, struct g_provider *pp, int flags)
{
struct g_geom *gp;
struct g_consumer *cp;
- struct g_provider *pp2;
int error, i, npart;
struct g_pc98_softc *ms;
struct g_slicer *gsp;
@@ -237,7 +236,7 @@ g_pc98_taste(struct g_class *mp, struct g_provider *pp, int flags)
ms->type[i] = (ms->dp[i].dp_sid << 8) |
ms->dp[i].dp_mid;
g_topology_lock();
- pp2 = g_slice_addslice(gp, i,
+ g_slice_config(gp, i, G_SLICE_CONFIG_SET,
ms->dp[i].dp_scyl * spercyl,
(ms->dp[i].dp_ecyl - ms->dp[i].dp_scyl + 1) *
spercyl,
@@ -248,14 +247,12 @@ g_pc98_taste(struct g_class *mp, struct g_provider *pp, int flags)
break;
}
g_topology_lock();
- error = g_access_rel(cp, -1, 0, 0);
- if (npart > 0) {
- LIST_FOREACH(pp, &gp->provider, provider)
- g_error_provider(pp, 0);
- return (gp);
+ g_access_rel(cp, -1, 0, 0);
+ if (LIST_EMPTY(&gp->provider)) {
+ g_std_spoiled(cp);
+ return (NULL);
}
- g_std_spoiled(cp);
- return (NULL);
+ return (gp);
}
static struct g_class g_pc98_class = {
OpenPOWER on IntegriCloud