From owner-freebsd-fs@FreeBSD.ORG Tue Jun 20 15:14:51 2006 Return-Path: X-Original-To: freebsd-fs@freebsd.org Delivered-To: freebsd-fs@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id E067D16A474 for ; Tue, 20 Jun 2006 15:14:51 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from cyrus.watson.org (cyrus.watson.org [209.31.154.42]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5558443D5F for ; Tue, 20 Jun 2006 15:14:48 +0000 (GMT) (envelope-from rwatson@FreeBSD.org) Received: from fledge.watson.org (fledge.watson.org [209.31.154.41]) by cyrus.watson.org (Postfix) with ESMTP id D507D46BE6; Tue, 20 Jun 2006 11:14:45 -0400 (EDT) Date: Tue, 20 Jun 2006 16:14:45 +0100 (BST) From: Robert Watson X-X-Sender: robert@fledge.watson.org To: Matt Sealey In-Reply-To: <00b101c69476$9a6686a0$99dfdfdf@bakuhatsu.net> Message-ID: <20060620161319.N18295@fledge.watson.org> References: <00b101c69476$9a6686a0$99dfdfdf@bakuhatsu.net> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: freebsd-fs@freebsd.org Subject: Re: On-disk format of UFS/UFS2 (for firmware implementation) X-BeenThere: freebsd-fs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Filesystems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 20 Jun 2006 15:14:52 -0000 On Tue, 20 Jun 2006, Matt Sealey wrote: > I was wondering if there is any definitive, authoritative or even just > comprehensive documentation on the on-disk format (superblock, nodes, file > linking, extents..) of the UFS and UFS2 filesystems. > > We would like to implement it in firmware for booting FreeBSD (and NetBSD > and eventually Solaris which uses some variant). I have the source code from > sys/fs/ufs already but it is not the preferred method of implementing > filesystem code. It only needs read support for now so it shouldn't be that > complicated, but... This isn't quite what you're asking for, but you might take a look at src/sys/boot/common/ufsread.c, which is used by the FreeBSD boot loader to load files from UFS. It uses include files from sys/ufs. Robert N M Watson Computer Laboratory University of Cambridge