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