summaryrefslogtreecommitdiffstats
path: root/sbin/fsck_ffs/fsck.h
diff options
context:
space:
mode:
authordes <des@FreeBSD.org>2013-04-29 20:13:09 +0000
committerdes <des@FreeBSD.org>2013-04-29 20:13:09 +0000
commita44b26897fe945895cdaceab1334e351f45d0901 (patch)
tree76cb8332af9430e1c1556bbc8a24c5168fc2de7f /sbin/fsck_ffs/fsck.h
parent6cfe294dedc835f600fbdf81a4eebbd6aafe7099 (diff)
downloadFreeBSD-src-a44b26897fe945895cdaceab1334e351f45d0901.zip
FreeBSD-src-a44b26897fe945895cdaceab1334e351f45d0901.tar.gz
Add a -Z option which zeroes unused blocks. It can be combined with -E,
in which case unused blocks are first zeroed and then erased. Reviewed by: mckusick MFC after: 3 weeks
Diffstat (limited to 'sbin/fsck_ffs/fsck.h')
-rw-r--r--sbin/fsck_ffs/fsck.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/sbin/fsck_ffs/fsck.h b/sbin/fsck_ffs/fsck.h
index 7b45d48..45b242c 100644
--- a/sbin/fsck_ffs/fsck.h
+++ b/sbin/fsck_ffs/fsck.h
@@ -74,6 +74,7 @@
#define MINBUFS 10 /* minimum number of buffers required */
#define MAXBUFS 40 /* maximum space to allocate to buffers */
#define INOBUFSIZE 64*1024 /* size of buffer to read inodes in pass1 */
+#define ZEROBUFSIZE (dev_bsize * 128) /* size of zero buffer used by -Z */
union dinode {
struct ufs1_dinode dp1;
@@ -306,7 +307,8 @@ char yflag; /* assume a yes response */
int bkgrdflag; /* use a snapshot to run on an active system */
int bflag; /* location of alternate super block */
int debug; /* output debugging info */
-int Eflag; /* zero out empty data blocks */
+int Eflag; /* delete empty data blocks */
+int Zflag; /* zero empty data blocks */
int inoopt; /* trim out unused inodes */
char ckclean; /* only do work if not cleanly unmounted */
int cvtlevel; /* convert to newer file system format */
@@ -402,6 +404,7 @@ int blread(int fd, char *buf, ufs2_daddr_t blk, long size);
void bufinit(void);
void blwrite(int fd, char *buf, ufs2_daddr_t blk, ssize_t size);
void blerase(int fd, ufs2_daddr_t blk, long size);
+void blzero(int fd, ufs2_daddr_t blk, long size);
void cacheino(union dinode *dp, ino_t inumber);
void catch(int);
void catchquit(int);
OpenPOWER on IntegriCloud