1*9f988b79SJean-Baptiste Boric /* $NetBSD: ffs.h,v 1.2 2011/10/09 21:33:43 christos Exp $ */ 2*9f988b79SJean-Baptiste Boric 3*9f988b79SJean-Baptiste Boric /* 4*9f988b79SJean-Baptiste Boric * Copyright (c) 2001-2003 Wasabi Systems, Inc. 5*9f988b79SJean-Baptiste Boric * All rights reserved. 6*9f988b79SJean-Baptiste Boric * 7*9f988b79SJean-Baptiste Boric * Written by Luke Mewburn for Wasabi Systems, Inc. 8*9f988b79SJean-Baptiste Boric * 9*9f988b79SJean-Baptiste Boric * Redistribution and use in source and binary forms, with or without 10*9f988b79SJean-Baptiste Boric * modification, are permitted provided that the following conditions 11*9f988b79SJean-Baptiste Boric * are met: 12*9f988b79SJean-Baptiste Boric * 1. Redistributions of source code must retain the above copyright 13*9f988b79SJean-Baptiste Boric * notice, this list of conditions and the following disclaimer. 14*9f988b79SJean-Baptiste Boric * 2. Redistributions in binary form must reproduce the above copyright 15*9f988b79SJean-Baptiste Boric * notice, this list of conditions and the following disclaimer in the 16*9f988b79SJean-Baptiste Boric * documentation and/or other materials provided with the distribution. 17*9f988b79SJean-Baptiste Boric * 3. All advertising materials mentioning features or use of this software 18*9f988b79SJean-Baptiste Boric * must display the following acknowledgement: 19*9f988b79SJean-Baptiste Boric * This product includes software developed for the NetBSD Project by 20*9f988b79SJean-Baptiste Boric * Wasabi Systems, Inc. 21*9f988b79SJean-Baptiste Boric * 4. The name of Wasabi Systems, Inc. may not be used to endorse 22*9f988b79SJean-Baptiste Boric * or promote products derived from this software without specific prior 23*9f988b79SJean-Baptiste Boric * written permission. 24*9f988b79SJean-Baptiste Boric * 25*9f988b79SJean-Baptiste Boric * THIS SOFTWARE IS PROVIDED BY WASABI SYSTEMS, INC. ``AS IS'' AND 26*9f988b79SJean-Baptiste Boric * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED 27*9f988b79SJean-Baptiste Boric * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 28*9f988b79SJean-Baptiste Boric * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL WASABI SYSTEMS, INC 29*9f988b79SJean-Baptiste Boric * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 30*9f988b79SJean-Baptiste Boric * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 31*9f988b79SJean-Baptiste Boric * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 32*9f988b79SJean-Baptiste Boric * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 33*9f988b79SJean-Baptiste Boric * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 34*9f988b79SJean-Baptiste Boric * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 35*9f988b79SJean-Baptiste Boric * POSSIBILITY OF SUCH DAMAGE. 36*9f988b79SJean-Baptiste Boric */ 37*9f988b79SJean-Baptiste Boric 38*9f988b79SJean-Baptiste Boric #ifndef _FFS_H 39*9f988b79SJean-Baptiste Boric #define _FFS_H 40*9f988b79SJean-Baptiste Boric 41*9f988b79SJean-Baptiste Boric #include <ufs/ufs/dinode.h> 42*9f988b79SJean-Baptiste Boric #include <ufs/ffs/fs.h> 43*9f988b79SJean-Baptiste Boric 44*9f988b79SJean-Baptiste Boric typedef struct { 45*9f988b79SJean-Baptiste Boric char label[MAXVOLLEN]; /* volume name/label */ 46*9f988b79SJean-Baptiste Boric int bsize; /* block size */ 47*9f988b79SJean-Baptiste Boric int fsize; /* fragment size */ 48*9f988b79SJean-Baptiste Boric int cpg; /* cylinders per group */ 49*9f988b79SJean-Baptiste Boric int cpgflg; /* cpg was specified by user */ 50*9f988b79SJean-Baptiste Boric int density; /* bytes per inode */ 51*9f988b79SJean-Baptiste Boric int ntracks; /* number of tracks */ 52*9f988b79SJean-Baptiste Boric int nsectors; /* number of sectors */ 53*9f988b79SJean-Baptiste Boric int rpm; /* rpm */ 54*9f988b79SJean-Baptiste Boric int minfree; /* free space threshold */ 55*9f988b79SJean-Baptiste Boric int optimization; /* optimization (space or time) */ 56*9f988b79SJean-Baptiste Boric int maxcontig; /* max contiguous blocks to allocate */ 57*9f988b79SJean-Baptiste Boric int rotdelay; /* rotational delay between blocks */ 58*9f988b79SJean-Baptiste Boric int maxbpg; /* maximum blocks per file in a cyl group */ 59*9f988b79SJean-Baptiste Boric int nrpos; /* # of distinguished rotational positions */ 60*9f988b79SJean-Baptiste Boric int avgfilesize; /* expected average file size */ 61*9f988b79SJean-Baptiste Boric int avgfpdir; /* expected # of files per directory */ 62*9f988b79SJean-Baptiste Boric int version; /* filesystem version (1 = FFS, 2 = UFS2) */ 63*9f988b79SJean-Baptiste Boric int maxbsize; /* maximum extent size */ 64*9f988b79SJean-Baptiste Boric int maxblkspercg; /* max # of blocks per cylinder group */ 65*9f988b79SJean-Baptiste Boric /* XXX: support `old' file systems ? */ 66*9f988b79SJean-Baptiste Boric } ffs_opt_t; 67*9f988b79SJean-Baptiste Boric 68*9f988b79SJean-Baptiste Boric #endif /* _FFS_H */ 69