Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 30 Apr 1999 21:58:05 +0100 (BST)
From:      Doug Rabson <dfr@nlsystems.com>
To:        Ken Harrenstien <klh@us.oracle.com>
Cc:        freebsd-fs@freebsd.org
Subject:   Re: When is a FFS not a FFS?
Message-ID:  <Pine.BSF.4.05.9904302148160.59263-100000@herring.nlsystems.com>
In-Reply-To: <CMM.0.90.4.925502836.klh@churchy20.us.oracle.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, 30 Apr 1999, Ken Harrenstien wrote:

> > FreeBSD/alpha will mount UFS filesystems from NetBSD/alpha and OSF1 with
> > no problems at all. Your problem is that FreeBSD/i386 puts the disklabel
> > at a different place on the disk from the alpha OSs. On the alpha, the
> > disklabel is stored at offset 64 in block zero but on FreeBSD/i386, it is
> > stored at offset zero in block one of the FreeBSD fdisk slice (which can
> > be anywhere).
> 
> If I understand this correctly, you are saying that FreeBSD *always*
> expects to find and use a DOS partition, regardless of the actual
> platform?
> 
> NetBSD appears to be able to work automatically either way so I blindly
> assumed FreeBSD would be equally astute.  Still learning about their
> differences...

Not quite. FreeBSD/i386 is a bit more complicated than OSF and *BSD/alpha
for disklabeling. There are two ways of reserving disk space:

The normal way uses an fdisk slice (the fdisk slice table and boot sector
lives in block zero) to reserve a section of disk. Within that fdisk
slice, the first block is a boot sector and the disklabel follows in byte
zero of sector one.

The 'dedicated' way skips the fdisk stage (actually I think it has a fake
fdisk table) but still puts the disklabel in sector one offset zero of the
freebsd area. This mode is not recommended since it can be hard to match
up the different bogus geometry ideas of bios, hardware and kernel.

On *BSD/alpha which have a simpler boot mechanism and no fdisk confusion
(at least at the moment), the disklabel always lives in the same place
(sector zero, offset 64).

> 
> However, I'm still a bit confused as to why "disklabel -r" was able to
> find the disklabel.  Is it using a different algorithm from the kernel?

Quite possibly. I think it grovels around looking for the disklabel magic
number.

>  
> > I don't think FreeBSD/i386 is going to be sharing disks with different
> > disklabel policies any day soon.
> 
> If someone like myself were to find the time to make this possible (by
> borrowing NetBSD code) would it be permitted in FreeBSD?  Just want to
> be clear whether this is due to policy or simple lack of resources.

I wouldn't mind this functionality being available. It might actually be
handy to move disks between i386 and alpha (as long as no-one expects to
be able to boot a disk on both platforms). 

--
Doug Rabson				Mail:  dfr@nlsystems.com
Nonlinear Systems Ltd.			Phone: +44 181 442 9037




To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-fs" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.05.9904302148160.59263-100000>