summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/arch/sgi/sgi/disksubr.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/sys/arch/sgi/sgi/disksubr.c b/sys/arch/sgi/sgi/disksubr.c
index 95728895095..7a0646fb8fe 100644
--- a/sys/arch/sgi/sgi/disksubr.c
+++ b/sys/arch/sgi/sgi/disksubr.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: disksubr.c,v 1.12 2009/05/13 01:31:58 krw Exp $ */
+/* $OpenBSD: disksubr.c,v 1.13 2009/05/28 17:05:50 miod Exp $ */
/*
* Copyright (c) 1999 Michael Shalayeff
@@ -172,13 +172,17 @@ readsgilabel(struct buf *bp, void (*strat)(struct buf *),
for (i = 0; i < 16; i++) {
int bsd = maptab[i].m;
+ int type = maptab[i].b;
+
+ if (spoofonly && type != FS_UNUSED && type != FS_OTHER)
+ continue;
DL_SETPOFFSET(&lp->d_partitions[bsd],
dlp->partitions[i].first);
DL_SETPSIZE(&lp->d_partitions[bsd],
dlp->partitions[i].blocks);
- lp->d_partitions[bsd].p_fstype = maptab[i].b;
- if (lp->d_partitions[bsd].p_fstype == FS_BSDFFS) {
+ lp->d_partitions[bsd].p_fstype = type;
+ if (type == FS_BSDFFS) {
lp->d_partitions[bsd].p_fragblock =
DISKLABELV1_FFS_FRAGBLOCK(1024, 8);
lp->d_partitions[bsd].p_cpg = 16;