NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: install/59600: sysinst does not correctly recognize the partition on x68k.
Removing conditions for d_bbsize and d_sbsize in x68k's
md_disklabel_is_default() will fix this problem.
But I don't know the historical reason for this.
--- usr.sbin/sysinst/arch/x68k/md.c
+++ usr.sbin/sysinst/arch/x68k/md.c
@@ -275,9 +275,7 @@ md_disklabel_is_default(const struct disklabel *lp)
bool maybe_default =
lp->d_npartitions == RAW_PART + 1 &&
lp->d_partitions[0].p_size == lp->d_partitions[RAW_PART].p_size &&
- lp->d_partitions[0].p_fstype == FS_UNUSED &&
- lp->d_bbsize == 0 &&
- lp->d_sbsize == 0;
+ lp->d_partitions[0].p_fstype == FS_UNUSED;
return maybe_default;
}
In addition, initialization of lp->{d_bbsize,d_sbsize} in the x68k kernel
is also strange.
sys/arch/x68k/x68k/disksubr.c:
63 const char *
64 readdisklabel(dev_t dev, void (*strat)(struct buf *),
65 struct disklabel *lp, struct cpu_disklabel *osdep)
66 {
:
163 /* if BSD disklabel does not exist, fall back to Human68k partition */
164 if (msg != NULL) {
165 msg = NULL;
166 lp->d_bbsize = 8192;
167 lp->d_sbsize = 2048;
168 for (i = 0; i < NDOSPART; i++, dp++)
Here (msg != NULL) is met when there is no BSD disklabel and
Human68k partition table signature exists.
Therefore, the presence or absence of the signature affected sysinst.
But lp->d_bbsize and lp->d_sbsize should be initialized regardless of
such conditions, even though both parameters are historical.
At least, with the above patch for sysinst, it seems this problem is
resolved.
Size (sec) Filesystem
------------------------------------- - ------------
>a: 708608 (4030400) + /
b: 65536 <swap>
c: 0 /tmp (mfs)
d: 0 /usr
e: 0 /var
------------------------------------- - ------------
g: Add a user defined partition
h: Change input units (cectors/cylinders/MB/GB)
x: Go on. Free space 3321792 sec.
---
Tetsuya Isaki <isaki%pastel-flower.jp@localhost / isaki%NetBSD.org@localhost>
Home |
Main Index |
Thread Index |
Old Index