11590Srgrimes/*	$NetBSD: ffs.h,v 1.2 2004/12/20 20:51:42 jmc Exp $	*/
21590Srgrimes
31590Srgrimes/*-
41590Srgrimes * SPDX-License-Identifier: BSD-4-Clause
51590Srgrimes *
61590Srgrimes * Copyright (c) 2001-2003 Wasabi Systems, Inc.
71590Srgrimes * All rights reserved.
81590Srgrimes *
91590Srgrimes * Written by Luke Mewburn for Wasabi Systems, Inc.
101590Srgrimes *
111590Srgrimes * Redistribution and use in source and binary forms, with or without
121590Srgrimes * modification, are permitted provided that the following conditions
131590Srgrimes * are met:
141590Srgrimes * 1. Redistributions of source code must retain the above copyright
151590Srgrimes *    notice, this list of conditions and the following disclaimer.
161590Srgrimes * 2. Redistributions in binary form must reproduce the above copyright
171590Srgrimes *    notice, this list of conditions and the following disclaimer in the
181590Srgrimes *    documentation and/or other materials provided with the distribution.
191590Srgrimes * 3. All advertising materials mentioning features or use of this software
201590Srgrimes *    must display the following acknowledgement:
211590Srgrimes *      This product includes software developed for the NetBSD Project by
221590Srgrimes *      Wasabi Systems, Inc.
231590Srgrimes * 4. The name of Wasabi Systems, Inc. may not be used to endorse
241590Srgrimes *    or promote products derived from this software without specific prior
251590Srgrimes *    written permission.
261590Srgrimes *
271590Srgrimes * THIS SOFTWARE IS PROVIDED BY WASABI SYSTEMS, INC. ``AS IS'' AND
281590Srgrimes * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
291590Srgrimes * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
301590Srgrimes * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL WASABI SYSTEMS, INC
311590Srgrimes * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
321590Srgrimes * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
331590Srgrimes * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
341590Srgrimes * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
351590Srgrimes * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
361590Srgrimes * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
371590Srgrimes * POSSIBILITY OF SUCH DAMAGE.
381590Srgrimes */
391590Srgrimes
401590Srgrimes#ifndef _FFS_H
411590Srgrimes#define _FFS_H
421590Srgrimes
431590Srgrimes#include <ufs/ufs/dinode.h>
441590Srgrimes#include <ufs/ffs/fs.h>
451590Srgrimes#include <stdbool.h>
4611765Sache
471590Srgrimestypedef struct {
481590Srgrimes	char	label[MAXVOLLEN];	/* volume name/label */
491590Srgrimes	int	bsize;		/* block size */
501590Srgrimes	int	fsize;		/* fragment size */
511590Srgrimes	int	cpg;		/* cylinders per group */
521590Srgrimes	int	cpgflg;		/* cpg was specified by user */
531590Srgrimes	int	density;	/* bytes per inode */
541590Srgrimes	bool	min_inodes;	/* allocate minimum number of inodes */
551590Srgrimes	int	ntracks;	/* number of tracks */
561590Srgrimes	int	nsectors;	/* number of sectors */
571590Srgrimes	int	rpm;		/* rpm */
581590Srgrimes	int	minfree;	/* free space threshold */
591590Srgrimes	int	optimization;	/* optimization (space or time) */
601590Srgrimes	int	maxcontig;	/* max contiguous blocks to allocate */
611590Srgrimes	int	rotdelay;	/* rotational delay between blocks */
621590Srgrimes	int	maxbpg;		/* maximum blocks per file in a cyl group */
631590Srgrimes	int	nrpos;		/* # of distinguished rotational positions */
641590Srgrimes	int	avgfilesize;	/* expected average file size */
651590Srgrimes	int	avgfpdir;	/* expected # of files per directory */
661590Srgrimes	int	version;	/* filesystem version (1 = FFS, 2 = UFS2) */
671590Srgrimes	int	maxbsize;	/* maximum extent size */
681590Srgrimes	int	maxblkspercg;	/* max # of blocks per cylinder group */
691590Srgrimes	int	softupdates;	/* soft updates */
701590Srgrimes		/* XXX: support `old' file systems ? */
711590Srgrimes} ffs_opt_t;
721590Srgrimes
731590Srgrimes#endif /* _FFS_H */
741590Srgrimes