Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 16 Feb 96 15:51:22 JST
From:      akiyama@kme.mei.co.jp (Shunsuke Akiyama)
To:        terry@lambert.org
Cc:        hackers@freebsd.org
Subject:   Re: Optical disk driver update and enhancement patch.
Message-ID:  <9602160651.AA13666@kmegate.kme.mei.co.jp>
In-Reply-To: <199602141750.KAA25465@phaeton.artisoft.com> (message from Terry Lambert on Wed, 14 Feb 1996 10:50:54 -0700 (MST))

next in thread | previous in thread | raw e-mail | index | archive | help
> Terry Lambert <terry@lambert.org> writes:
>
>>   Known problem:
>>     UFS build on 1024 byte/sector media can not mount as root
>>     filesystem.
>
> What are the failure symptoms?  Is it the BIOS-based boot blocks,
> or does the kernel not recognize the device?

It's mostly boot blocks.  The PC-BIOS can handle 512 byte/sector size
only.  Kernel on 1024 byte/sector media never load into memeory, if
boot blocks uses the BIOS.

And another point, that's my patch.  I reviewed my changes, then I
found mistake.  I made fix patch like bellow.
I guess this patch may be fix mounting 1024 byte/sector media on root
filesystem, with booting kernel on DOS FS using fbsdboot.exe.
-- 
Shunsuke Akiyama
Kyushu Matsushita Electric Co., Ltd. Fukuoka, Japan.
akiyama@kme.mei.co.jp

----- Patch Here -----
===================================================================
RCS file: sys/ufs/ffs/RCS/ffs_vfsops.c,v
retrieving revision 1.35.0.2
diff -u -r1.35.0.2 sys/ufs/ffs/ffs_vfsops.c
--- 1.35.0.2	1996/02/12 07:45:48
+++ sys/ufs/ffs/ffs_vfsops.c	1996/02/15 14:02:35
@@ -31,7 +31,7 @@
  * SUCH DAMAGE.
  *
  *	@(#)ffs_vfsops.c	8.8 (Berkeley) 4/18/94
- * $Id: ffs_vfsops.c,v 1.35.0.2 1996/02/12 07:45:48 shun Exp $
+ * $Id: ffs_vfsops.c,v 1.35.0.3 1996/02/15 14:02:35 shun Exp $
  */
 
 #include "opt_quota.h"
@@ -327,12 +327,11 @@
 	(void)VFS_STATFS(mp, &mp->mnt_stat, p);
 
 	if (fs == NULL) {
-		/* root mounts, set default sector size */
-		mp->mnt_stat.f_spare[0] = 512;
-	} else {
-		/* non-root mounts, set sector size */
-		mp->mnt_stat.f_spare[0] = fs->fs_fsize / fs->fs_nspf;
+		ump = VFSTOUFS(mp);
+		fs = ump->um_fs;
 	}
+	/* set sector size */
+	mp->mnt_stat.f_spare[0] = fs->fs_fsize / fs->fs_nspf;
 
 	goto success;
 
----- Patch End -----



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?9602160651.AA13666>