summaryrefslogtreecommitdiff
path: root/sbin/newfs/mkfs.c
AgeCommit message (Collapse)Author
2011-06-05fix format stringCharles Longeau
ok dcoppa@ otto@ also reviewed by Vadim Zhukov
2011-05-23Allow specifying k/m/g/... suffixes in newfs(8) -S and -s options.David Coppa
Useful for mount_mfs, now you can just say: # mount_mfs -s 50m swap /tmp And it will do what you want, taking into account sector size. Old behaviour of -s (specifying count of sectors) is, of course, preserved. All the work was done by Vadim Zhukov (persgray(at)gmail com). OK myself, otto@, thib@
2010-03-21compute an estimate of how much memory is needed to fsck_ffs the fsOtto Moerbeek
we're about to create and warn the user if this is larger than either physmem or MAXDSIZ; ok deraadt@ krw@ thib@
2009-12-23partion -> partition. First one (mkfs.c) noted by Brad Tilley on tech@.Kenneth R Westerback
2008-08-08Admit b_blkno means block number; a block is DEV_BSIZE (a.k.a.Kenneth R Westerback
512) bytes; ffs is inextricably tied to using b_blkno and disklabel always uses sectorsize units. Thus use DEV_BSIZE units for all fields describing ffs filesystems and convert to/from sectors where required. This enables the creation and use of ffs filesystems on non-512 byte sectorsize devices. This diff allows i386 and sgi (the two test platforms) to find disklabels that are not on a sectorsize boundary. Same change to further archs coming. This is a no-op on 512-byte sectorsize devices. This work triggered by jsing@'s need to create ffs filesystems on sgi cdroms so we can create cdrom install media for sgi. sgi testing by jsing@ ok jsing@ pedro@ "looks sane" beck@ weingart@
2008-01-05handle 64-bit blkno's in format stringOtto Moerbeek
2007-07-07Initialize the first 2 block's worth of inodes for ffs1 as well as ffs2.Todd C. Miller
This was not happening since acg.cg_initediblk gets cleared for the ffs1 case. OK otto@
2007-06-26Enable creation of larger than 1TB FFS2 filesystems. Note that thisOtto Moerbeek
won't work yet. There remains sys/ufs work. ok deraadt@
2007-06-10remove last instances of daddr_t; ok thib@Otto Moerbeek
2007-06-01ufs1_daddr_t cleanup, okay otto@Pedro Martelletto
2007-06-01daddr64_t changes; not fssize is still an int; ok pedro@Otto Moerbeek
2007-06-01convert ufs2_daddr_t -> daddr64_t for greater clarity; ok pedro otto thibTheo de Raadt
2007-05-29Updated disklabel format to support larger disks and partitions. WeOtto Moerbeek
free room in struct partition by packing fragment size and fragments/block more tighlty and use the resulting space to make offset and size 48 bits. For the disk part we use spare fields in struct disklabel. Kernel converts in-mem copy of the on-disk label if needed, disklabel(8) writes new version. We are careful to only change fields not used by bootloaders. Conception of basic scheme by deraadt. ok deraadt@ krw@
2007-05-19Now that the amd64 floppy and cd image -c setting have been fixed,Otto Moerbeek
recommit the -c changes. For now, we warn only if we cannot honour -c. ok millert@ deraadt@
2007-05-19backout -c changes; they were not tested on all the media. all newfsTheo de Raadt
changes obviously *MUST* be checked against whatever weird things the floppies do to fit
2007-05-18The unit of the -c options is fragments, so adjust man page andOtto Moerbeek
variable name; correct the loop packing more inodes into the cg: in some cases it could put more fragments into the cg than requested; give an error if the -c option cannot be honoured. ok millert@ pedro@
2007-05-18Do a bounds check to see if the inode table fits on the disk.Otto Moerbeek
Prevents a core dump found by djm@ when doing mount_mfs -s 80 (yeah, that's a tiny file system); ok millert@ pedro@
2007-05-03Update CGSIZE macro so that it is no longer based on fs_cpg.Todd C. Miller
This was part of the ffs2 changes but was not committed earlier in order to make the userland and kernel changes independent. NOTE: the change to newfs require an updated fs.h; building an updated newfs with the old fs.h may result in a broken filesystem. OK otto@
2007-04-23Remove 'cg_space' from 'struct cg'. Due to the alignment on 64-bitPedro Martelletto
architectures, CGSIZE() was returning something sligthly over one block. The 'new' fsck would round this value up to a fragment boundary, and end up trying to access memory beyond allocated space. From mickey@, okay pedro@, millert@ and otto@.
2007-04-18don't let fpg and spc get out of sync. solves a few cases where newfsOtto Moerbeek
produces a bad cg when -c is used. ok pedro@ millert@
2007-04-17Fix merge error; fs_inodefmt was not being set for the ffs2 caseTodd C. Miller
2007-04-13Add support for creating ffs2 filesystems. Note that the conceptTodd C. Miller
of a constant-sized track is obsolete in today's world of variable blocks per track disks so the cylinder group packing algorithm has been updated. Based on the ufs2 changes in FreeBSD by Kirk McKusick. From pedro@ with changes by me as well as a few from NetBSD. OK pedro@ beck@ thib@ and tested by more...
2007-04-03Remove obsolete options for superblock fields that are no longer used.Todd C. Miller
OK deraadt @, OK in principle tedu@
2007-04-03Minor cleanup: remove rcsids, remove #ifdef'd out code, COMPAT isTodd C. Miller
the default, quiet gcc. OK deraadt@
2007-04-02Modern disks do bad sector replacement themselves. There is noTodd C. Miller
need to reserve space for them in the filesystem itself. OK deraadt@ pedro@
2007-03-19Add FFS2 fields to the superblock, change file system tools to keepPedro Martelletto
accessing FFS1 fields, okay art@, quite some testing by ckuethe@, simon@ and thib@, thanks.
2006-03-09Remove option -n from newfs as well as all references to fs_postbl()Pedro Martelletto
Various testing for a while, okay krw@
2005-12-19Add and use a few more constants and macros needed by UFS2Pedro Martelletto
No functional change
2005-08-08More informative error message when trying to create a filesystemOtto Moerbeek
larger than 1TB. ok deraadt@
2005-04-14handle snprintf out of range conditions; otto okTheo de Raadt
2005-01-06validate mfs size to avoid wrapping. ok miod@Otto Moerbeek
2004-10-14Do not generate either a too large super block or a negative numberOtto Moerbeek
of inodes per cylinder group for large block or fragment sizes. This allows for creation of filesystems with any legal block/fragment size combination. ok tedu@.
2004-09-10Bail out on errors when making very small filesystems. ok deraadt@Otto Moerbeek
2004-08-12Prevent core dump on large block sizes by checking block size againstOtto Moerbeek
MAXBSIZE. ok millert@
2004-07-06delint: offset arg to mmap is off_t and remove dead codeOtto Moerbeek
ok millert@
2004-06-26For all the mfs lovers:Otto Moerbeek
- Make the root of an mfs file system inherit the permission and owner/group of the mountpoint. Work by david@. - Add the ability to populate an mfs file system with the contents of a directory or a file system immediately after creation, controlled by the new -P mount option. Discussed with and tested by many, ok djm@ david@
2004-06-22acg.cg_nextfreeoff is already relative to &acg so don't subtractTodd C. Miller
&acg.cg_firstfield. Fixes a bogus "panic: cylinder group too big" I see sometimes when using mmap malloc. OK tholo@
2004-05-13provide a siginfo handler for -q run; idea from art's todo; millert@ okMichael Shalayeff
2004-01-13quiet warnings. better diff suggested by tom@ ok deraadt@Ted Unangst
2003-12-05madvise() the mfs storage area as randomly accessed as mfs does it's own ↵Michael Shalayeff
clustering; tedu@ ok
2003-11-06don't write magic until the file system is really done. preventsTed Unangst
fsck/mount unhappiness. hint from freebsd-arch ml. ok deraadt@
2003-11-03NULL for NULL pointers, not 0Ted Unangst
2003-11-03combine ugly printf(), exit() combo statements into err() or errx().Ted Unangst
mostly from tom cosgrove.
2003-08-25rename struct dinode to ufs1_dinode. clears the namespace and makesTed Unangst
way for some future work. no function changes yet. help testing otto@ and markus@
2003-07-16remove default limit of 16 cylinders per group. it's now set toTed Unangst
as many as fit with the other parameters given. change default frag size to 2048, bumping block size to 16k. from freebsd. ok deraadt@ and co.
2003-07-02missing protosTheo de Raadt
2003-06-25proto repairsTheo de Raadt
2003-06-11ansificationTheo de Raadt
2003-06-02Remove the advertising clause in the UCB license which BerkeleyTodd C. Miller
rescinded 22 July 1999. Proofed by myself and Theo.
2003-05-06remove FSIRAND define and make it non-optional. ok millert@Ted Unangst